electron_sys/class/
client_request.rs

1use crate::interface::{ClientRequestOptions, UploadProgress};
2use js_sys::{Function, JsString};
3use node_sys::{events::EventEmitter, Buffer};
4use wasm_bindgen::prelude::*;
5
6#[wasm_bindgen(module = "electron")]
7extern {
8    #[wasm_bindgen(extends = EventEmitter)]
9    #[derive(Clone, Debug)]
10    /// Docs: http://electronjs.org/docs/api/client-request
11    pub type ClientRequest;
12
13    //*************//
14    // Constructor //
15    //*************//
16
17    #[wasm_bindgen(constructor)]
18    pub fn new(options: ClientRequestOptions) -> ClientRequest;
19
20    //******************//
21    // Instance Methods //
22    //******************//
23
24    #[wasm_bindgen(method)]
25    pub fn abort(this: &ClientRequest);
26
27    #[wasm_bindgen(method)]
28    pub fn end(this: &ClientRequest, chunk: Option<&Buffer>, encoding: Option<&str>, callback: Option<&Function>);
29
30    #[wasm_bindgen(method)]
31    pub fn follow_redirect(this: &ClientRequest);
32
33    #[wasm_bindgen(method, js_name = "getHeader")]
34    pub fn get_header(this: &ClientRequest, name: &str) -> JsString;
35
36    #[wasm_bindgen(method, js_name = "getUploadProgress")]
37    pub fn get_upload_progress(this: &ClientRequest) -> UploadProgress;
38
39    #[wasm_bindgen(method, js_name = "removeHeader")]
40    pub fn remove_header(this: &ClientRequest, name: &str);
41
42    #[wasm_bindgen(method, js_name = "setHeader")]
43    pub fn set_header(this: &ClientRequest, name: &str, value: &str);
44
45    #[wasm_bindgen(method)]
46    pub fn write(this: &ClientRequest, chunk: &Buffer, encoding: Option<&str>, callback: Option<&Function>);
47
48    //*********************//
49    // Instance Properties //
50    //*********************//
51
52    #[wasm_bindgen(method, getter, js_name = "chunkedEncoding")]
53    pub fn chunked_encoding(this: &ClientRequest) -> bool;
54
55    #[wasm_bindgen(method, setter, js_name = "chunkedEncoding")]
56    pub fn set_chunked_encoding(this: &ClientRequest, value: bool);
57}