electron-sys 0.4.0

Raw bindings to the Electron API for projects using wasm-bindgen.
Documentation
use js_sys::{JsString, Object};
use wasm_bindgen::prelude::*;

#[wasm_bindgen]
extern {
    #[wasm_bindgen(extends = Object)]
    pub type Task;

    #[wasm_bindgen(constructor)]
    pub fn new(
        arguments: JsString,
        description: JsString,
        icon_index: usize,
        icon_path: JsString,
        program: JsString,
        title: JsString,
        working_directory: Option<JsString>,
    ) -> Task;

    #[wasm_bindgen(method, getter)]
    pub fn arguments(this: &Task) -> JsString;

    #[wasm_bindgen(method, setter)]
    pub fn set_arguments(this: &Task, value: JsString);

    #[wasm_bindgen(method, getter)]
    pub fn description(this: &Task) -> JsString;

    #[wasm_bindgen(method, setter)]
    pub fn set_description(this: &Task, value: JsString);

    #[wasm_bindgen(method, getter, js_name = "iconIndex")]
    pub fn icon_index(this: &Task) -> usize;

    #[wasm_bindgen(method, setter)]
    pub fn set_icon_index(this: &Task, value: usize);

    #[wasm_bindgen(method, getter, js_name = "iconPath")]
    pub fn icon_path(this: &Task) -> JsString;

    #[wasm_bindgen(method, setter)]
    pub fn set_icon_path(this: &Task, value: JsString);

    #[wasm_bindgen(method, getter)]
    pub fn program(this: &Task) -> JsString;

    #[wasm_bindgen(method, setter)]
    pub fn set_program(this: &Task, value: JsString);

    #[wasm_bindgen(method, getter)]
    pub fn title(this: &Task) -> JsString;

    #[wasm_bindgen(method, setter)]
    pub fn set_title(this: &Task, value: JsString);

    #[wasm_bindgen(method, getter, js_name = "workingDirectory")]
    pub fn working_directory(this: &Task) -> Option<JsString>;

    #[wasm_bindgen(method, setter)]
    pub fn set_working_directory(this: &Task, value: Option<JsString>);
}