electron_sys/module/
crash_reporter.rs

1use crate::interface::{CrashReport, CrashReporterStartOptions};
2use js_sys::JsString;
3use wasm_bindgen::prelude::*;
4
5#[wasm_bindgen(module = "electron")]
6extern {
7    #[wasm_bindgen]
8    pub type CrashReporter;
9
10    #[wasm_bindgen(js_name = "crashReporter")]
11    pub static crash_reporter: CrashReporter;
12
13    #[wasm_bindgen(method, js_name = "addExtraParameter")]
14    pub fn add_extra_parameter(this: &CrashReporter, key: &str, value: &str);
15
16    #[wasm_bindgen(method, js_name = "getCrashesDirectory")]
17    pub fn get_crashes_directory(this: &CrashReporter) -> JsString;
18
19    #[wasm_bindgen(method, js_name = "getLastCrashReport")]
20    pub fn get_last_crash_report(this: &CrashReporter) -> CrashReport;
21
22    #[wasm_bindgen(method, js_name = "getParameters")]
23    pub fn get_parameters(this: &CrashReporter);
24
25    #[wasm_bindgen(method, js_name = "getUploadedReports")]
26    pub fn get_uploaded_reports(this: &CrashReporter) -> Box<[JsValue]>;
27
28    #[wasm_bindgen(method, js_name = "getUploadToServer")]
29    pub fn get_upload_to_server(this: &CrashReporter) -> bool;
30
31    #[wasm_bindgen(method, js_name = "removeExtraParameter")]
32    pub fn remove_extra_parameter(this: &CrashReporter, key: &str);
33
34    #[wasm_bindgen(method, js_name = "setUploadToServer")]
35    pub fn setUploadToServer(this: &CrashReporter, upload_to_server: bool);
36
37    #[wasm_bindgen(method)]
38    pub fn start(this: &CrashReporter, options: CrashReporterStartOptions);
39}