1 module libwasm.bindings.Request;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.AbortSignal;
7 import libwasm.bindings.Blob;
8 import libwasm.bindings.Fetch;
9 import libwasm.bindings.FetchObserver;
10 import libwasm.bindings.FormData;
11 import libwasm.bindings.Headers;
12 
13 @safe:
14 nothrow:
15 
16 enum ReferrerPolicy {
17   none,
18   no_referrer,
19   no_referrer_when_downgrade,
20   origin,
21   origin_when_cross_origin,
22   unsafe_url,
23   same_origin,
24   strict_origin,
25   strict_origin_when_cross_origin
26 }
27 struct Request {
28   nothrow:
29   JsHandle handle;
30   alias handle this;
31   this(Handle h) {
32     this.handle = JsHandle(h);
33   }
34   string method()() {
35     return Object_Getter__string(this.handle, "method");
36   }
37   string url()() {
38     return Object_Getter__string(this.handle, "url");
39   }
40   auto headers()() {
41     return Headers(Object_Getter__Handle(this.handle, "headers"));
42   }
43   RequestDestination destination()() {
44     return Object_Getter__int(this.handle, "destination");
45   }
46   string referrer()() {
47     return Object_Getter__string(this.handle, "referrer");
48   }
49   ReferrerPolicy referrerPolicy()() {
50     return Object_Getter__int(this.handle, "referrerPolicy");
51   }
52   RequestMode mode()() {
53     return Object_Getter__int(this.handle, "mode");
54   }
55   RequestCredentials credentials()() {
56     return Object_Getter__int(this.handle, "credentials");
57   }
58   RequestCache cache()() {
59     return Object_Getter__int(this.handle, "cache");
60   }
61   RequestRedirect redirect()() {
62     return Object_Getter__int(this.handle, "redirect");
63   }
64   string integrity()() {
65     return Object_Getter__string(this.handle, "integrity");
66   }
67   bool mozErrors()() {
68     return Object_Getter__bool(this.handle, "mozErrors");
69   }
70   auto signal()() {
71     return AbortSignal(Object_Getter__Handle(this.handle, "signal"));
72   }
73   auto clone()() {
74     return Request(Object_Getter__Handle(this.handle, "clone"));
75   }
76   void overrideContentPolicyType()(uint context) {
77     Object_Call_uint__void(this.handle, "overrideContentPolicyType", context);
78   }
79   bool bodyUsed()() {
80     return Object_Getter__bool(this.handle, "bodyUsed");
81   }
82   auto arrayBuffer()() {
83     return JsPromise!(ArrayBuffer)(Object_Getter__Handle(this.handle, "arrayBuffer"));
84   }
85   auto blob()() {
86     return JsPromise!(Blob)(Object_Getter__Handle(this.handle, "blob"));
87   }
88   auto formData()() {
89     return JsPromise!(FormData)(Object_Getter__Handle(this.handle, "formData"));
90   }
91   auto json()() {
92     return JsPromise!(JSON)(Object_Getter__Handle(this.handle, "json"));
93   }
94   auto text()() {
95     return JsPromise!(string)(Object_Getter__Handle(this.handle, "text"));
96   }
97 }
98 enum RequestCache {
99   default_,
100   no_store,
101   reload,
102   no_cache,
103   force_cache,
104   only_if_cached
105 }
106 enum RequestCredentials {
107   omit,
108   same_origin,
109   include
110 }
111 enum RequestDestination {
112   none,
113   audio,
114   audioworklet,
115   document,
116   embed,
117   font,
118   image,
119   manifest,
120   object,
121   paintworklet,
122   report,
123   script,
124   sharedworker,
125   style,
126   track,
127   video,
128   worker,
129   xslt
130 }
131 alias RequestInfo = SumType!(Request, string);
132 struct RequestInit {
133   nothrow:
134   JsHandle handle;
135   alias handle this;
136   this(Handle h) {
137     this.handle = JsHandle(h);
138   }
139   static auto create() {
140     return RequestInit(libwasm_add__object());
141   }
142   void method()(string method) {
143     Object_Call_string__void(this.handle, "method", method);
144   }
145   string method()() {
146     return Object_Getter__string(this.handle, "method");
147   }
148   void headers()(scope ref HeadersInit headers) {
149     Serialize_Object_VarArgCall!void(this.handle, "headers", "SumType!(Handle,Handle,Handle)", tuple(libwasm.sumtype.match!(((ref headers.Types[0] v) => 0),((ref headers.Types[1] v) => 1),((ref headers.Types[2] v) => 2))(headers),tuple(libwasm.sumtype.match!(((ref headers.Types[0] v) => cast(Handle)v.handle),((ref headers.Types[1] v) => Handle.init),((ref headers.Types[2] v) => Handle.init))(headers),libwasm.sumtype.match!(((ref headers.Types[0] v) => Handle.init),((ref headers.Types[1] v) => cast(Handle)v.handle),((ref headers.Types[2] v) => Handle.init))(headers),libwasm.sumtype.match!(((ref headers.Types[0] v) => Handle.init),((ref headers.Types[1] v) => Handle.init),((ref headers.Types[2] v) => cast(Handle)v.handle))(headers))));
150   }
151   auto headers()() {
152     return Object_Getter__Handle(this.handle, "headers");
153   }
154   void body_(T0)(scope auto ref Optional!(T0) body_) if (isTOrPointer!(T0, BodyInit)) {
155     Serialize_Object_VarArgCall!void(this.handle, "body", "Optional!SumType!(Handle,Handle,Handle,Handle,string)", tuple(!body_.empty, libwasm.sumtype.match!(((ref body_.Types[0] v) => 0),((ref body_.Types[1] v) => 1),((ref body_.Types[2] v) => 2),((ref body_.Types[3] v) => 3),((string v) => 4))(body_),tuple(libwasm.sumtype.match!(((ref body_.Types[0] v) => cast(Handle)v.handle),((ref body_.Types[1] v) => Handle.init),((ref body_.Types[2] v) => Handle.init),((ref body_.Types[3] v) => Handle.init),((string v) => Handle.init))(body_),libwasm.sumtype.match!(((ref body_.Types[0] v) => Handle.init),((ref body_.Types[1] v) => cast(Handle)v.handle),((ref body_.Types[2] v) => Handle.init),((ref body_.Types[3] v) => Handle.init),((string v) => Handle.init))(body_),libwasm.sumtype.match!(((ref body_.Types[0] v) => Handle.init),((ref body_.Types[1] v) => Handle.init),((ref body_.Types[2] v) => cast(Handle)v.handle),((ref body_.Types[3] v) => Handle.init),((string v) => Handle.init))(body_),libwasm.sumtype.match!(((ref body_.Types[0] v) => Handle.init),((ref body_.Types[1] v) => Handle.init),((ref body_.Types[2] v) => Handle.init),((ref body_.Types[3] v) => cast(Handle)v.handle),((string v) => Handle.init))(body_),libwasm.sumtype.match!(((ref body_.Types[0] v) => string.init),((ref body_.Types[1] v) => string.init),((ref body_.Types[2] v) => string.init),((ref body_.Types[3] v) => string.init),((string v) => v))(body_))));
156   }
157   auto body_()() {
158     return RequestInit_body_Get(this.handle);
159   }
160   void referrer()(string referrer) {
161     Object_Call_string__void(this.handle, "referrer", referrer);
162   }
163   string referrer()() {
164     return Object_Getter__string(this.handle, "referrer");
165   }
166   void referrerPolicy()(ReferrerPolicy referrerPolicy) {
167     Object_Call_int__void(this.handle, "referrerPolicy", referrerPolicy);
168   }
169   ReferrerPolicy referrerPolicy()() {
170     return Object_Getter__int(this.handle, "referrerPolicy");
171   }
172   void mode()(RequestMode mode) {
173     Object_Call_int__void(this.handle, "mode", mode);
174   }
175   RequestMode mode()() {
176     return Object_Getter__int(this.handle, "mode");
177   }
178   void credentials()(RequestCredentials credentials) {
179     Object_Call_int__void(this.handle, "credentials", credentials);
180   }
181   RequestCredentials credentials()() {
182     return Object_Getter__int(this.handle, "credentials");
183   }
184   void cache()(RequestCache cache) {
185     Object_Call_int__void(this.handle, "cache", cache);
186   }
187   RequestCache cache()() {
188     return Object_Getter__int(this.handle, "cache");
189   }
190   void redirect()(RequestRedirect redirect) {
191     Object_Call_int__void(this.handle, "redirect", redirect);
192   }
193   RequestRedirect redirect()() {
194     return Object_Getter__int(this.handle, "redirect");
195   }
196   void integrity()(string integrity) {
197     Object_Call_string__void(this.handle, "integrity", integrity);
198   }
199   string integrity()() {
200     return Object_Getter__string(this.handle, "integrity");
201   }
202   void mozErrors()(bool mozErrors) {
203     Object_Call_bool__void(this.handle, "mozErrors", mozErrors);
204   }
205   bool mozErrors()() {
206     return Object_Getter__bool(this.handle, "mozErrors");
207   }
208   void signal(T0)(scope auto ref Optional!(T0) signal) if (isTOrPointer!(T0, AbortSignal)) {
209     Serialize_Object_VarArgCall!void(this.handle, "signal", "Optional!Handle", tuple(!signal.empty, cast(Handle)signal.front._parent));
210   }
211   auto signal()() {
212     return recastOpt!(AbortSignal)(Object_Getter__OptionalHandle(this.handle, "signal"));
213   }
214   void observe()(scope ref ObserverCallback observe) {
215     Object_Call_Handle__void(this.handle, "observe", observe.handle);
216   }
217   auto observe()() {
218     return ObserverCallback(Object_Getter__Handle(this.handle, "observe"));
219   }
220 }
221 enum RequestMode {
222   same_origin,
223   no_cors,
224   cors,
225   navigate
226 }
227 enum RequestRedirect {
228   follow,
229   error,
230   manual
231 }
232 alias nsContentPolicyType = uint;
233 
234 
235 extern (C) Optional!(BodyInit) RequestInit_body_Get(Handle);