electron_sys/class/
download_item.rs1use crate::interface::SaveDialogOptions;
2use js_sys::JsString;
3use node_sys::events::EventEmitter;
4use wasm_bindgen::prelude::*;
5
6#[wasm_bindgen(module = "electron")]
7extern {
8 #[wasm_bindgen(extends = EventEmitter)]
9 #[derive(Clone, Debug)]
10 pub type DownloadItem;
12
13 #[wasm_bindgen(method)]
18 pub fn cancel(this: &DownloadItem);
19
20 #[wasm_bindgen(method, js_name = "canResume")]
21 pub fn can_resume(this: &DownloadItem) -> bool;
22
23 #[wasm_bindgen(method, js_name = "getContentDisposition")]
24 pub fn get_content_disposition(this: &DownloadItem) -> JsString;
25
26 #[wasm_bindgen(method, js_name = "getETag")]
27 pub fn get_etag(this: &DownloadItem) -> JsString;
28
29 #[wasm_bindgen(method, js_name = "getFilename")]
30 pub fn get_filename(this: &DownloadItem) -> JsString;
31
32 #[wasm_bindgen(method, js_name = "getLastModifiedTime")]
33 pub fn get_last_modified_time(this: &DownloadItem) -> JsString;
34
35 #[wasm_bindgen(method, js_name = "getMimeType")]
36 pub fn get_mime_type(this: &DownloadItem) -> JsString;
37
38 #[wasm_bindgen(method, js_name = "getReceivedBytes")]
39 pub fn get_received_bytes(this: &DownloadItem) -> usize;
40
41 #[wasm_bindgen(method, js_name = "getSaveDialogOptions")]
42 pub fn get_save_dialog_options(this: &DownloadItem) -> SaveDialogOptions;
43
44 #[wasm_bindgen(method, js_name = "getSavePath")]
45 pub fn get_save_path(this: &DownloadItem) -> JsString;
46
47 #[wasm_bindgen(method, js_name = "getSavePath")]
48 pub fn get_start_time(this: &DownloadItem) -> u32;
49
50 #[wasm_bindgen(method, js_name = "getState")]
51 pub fn get_state(this: &DownloadItem) -> JsString;
52
53 #[wasm_bindgen(method, js_name = "getTotalBytes")]
54 pub fn get_total_bytes(this: &DownloadItem) -> usize;
55
56 #[wasm_bindgen(method, js_name = "getURL")]
57 pub fn get_url(this: &DownloadItem) -> JsString;
58
59 #[wasm_bindgen(method, js_name = "getURLChain")]
60 pub fn get_url_chain(this: &DownloadItem) -> Box<[JsValue]>;
61
62 #[wasm_bindgen(method, js_name = "has_user_gesture")]
63 pub fn has_user_gesture(this: &DownloadItem) -> bool;
64
65 #[wasm_bindgen(method, js_name = "is_paused")]
66 pub fn is_paused(this: &DownloadItem) -> bool;
67
68 #[wasm_bindgen(method)]
69 pub fn pause(this: &DownloadItem);
70
71 #[wasm_bindgen(method)]
72 pub fn resume(this: &DownloadItem);
73
74 #[wasm_bindgen(method, js_name = "setSaveDialogOptions")]
75 pub fn set_save_dialog_options(this: &DownloadItem, options: SaveDialogOptions);
76
77 #[wasm_bindgen(method, getter, js_name = "savePath")]
82 pub fn save_path(this: &DownloadItem) -> JsString;
83
84 #[wasm_bindgen(method, setter, js_name = "savePath")]
85 pub fn set_save_path(this: &DownloadItem, value: JsString);
86}