electron_sys/module/
native_image.rs1use crate::{
2 class::NativeImage,
3 interface::{CreateFromBitmapOptions, CreateFromBufferOptions},
4};
5use node_sys::Buffer;
6use wasm_bindgen::prelude::*;
7
8#[wasm_bindgen(module = "electron")]
9extern {
10 #[wasm_bindgen]
11 pub type NativeImageModule;
12
13 #[wasm_bindgen(js_name = "nativeImage")]
14 pub static native_image: NativeImageModule;
15
16 #[wasm_bindgen(method, js_name = "createEmpty")]
17 pub fn create_empty(this: &NativeImageModule) -> NativeImage;
18
19 #[wasm_bindgen(method, js_name = "createFromBitmap")]
20 pub fn create_from_bitmap(
21 this: &NativeImageModule,
22 buffer: &Buffer,
23 options: CreateFromBitmapOptions,
24 ) -> NativeImage;
25
26 #[wasm_bindgen(method, js_name = "createFromBuffer")]
27 pub fn create_from_buffer(
28 this: &NativeImageModule,
29 buffer: &Buffer,
30 options: Option<CreateFromBufferOptions>,
31 ) -> NativeImage;
32
33 #[wasm_bindgen(method, js_name = "createFromDataURL")]
34 pub fn create_from_data_url(this: &NativeImageModule, data_url: &str) -> NativeImage;
35
36 #[wasm_bindgen(method, js_name = "createFromNamedImage")]
37 pub fn create_from_named_image(
38 this: &NativeImageModule,
39 image_name: &str,
40 hsl_shift: Option<Box<[JsValue]>>,
41 ) -> NativeImage;
42
43 #[wasm_bindgen(method, js_name = "createFromPath")]
44 pub fn create_from_path(this: &NativeImageModule, path: &str) -> NativeImage;
45}