node_sys/class/
event_emitter.rs1use js_sys::{Function, Object};
2use wasm_bindgen::prelude::*;
3
4#[wasm_bindgen(module = "events")]
5extern {
6 #[wasm_bindgen(extends = Object)]
7 #[derive(Clone, Debug)]
8 pub type EventEmitter;
9
10 #[wasm_bindgen(constructor)]
11 pub fn new() -> EventEmitter;
12
13 #[wasm_bindgen(method, getter, js_name = "defaultMaxListeners")]
14 pub fn default_max_listeners(this: &EventEmitter) -> f64;
15
16 #[wasm_bindgen(method, setter, js_name = "defaultMaxListeners")]
17 pub fn set_default_max_listeners(this: &EventEmitter, value: f64);
18
19 #[wasm_bindgen(method, js_name = "addListener")]
20 pub fn add_listener(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
21
22 #[wasm_bindgen(method, variadic)]
23 pub fn emit(this: &EventEmitter, event_name: &str, args: Box<[JsValue]>) -> bool;
24
25 #[wasm_bindgen(method, js_name = "eventNames")]
26 pub fn event_names(this: &EventEmitter) -> Box<[JsValue]>;
27
28 #[wasm_bindgen(method, js_name = "getMaxListeners")]
29 pub fn get_max_listeners(this: &EventEmitter);
30
31 #[wasm_bindgen(method, js_name = "listenerCount")]
32 pub fn listener_count(this: &EventEmitter) -> f64;
33
34 #[wasm_bindgen(method)]
35 pub fn listeners(this: &EventEmitter, event_name: &str) -> Box<[JsValue]>;
36
37 #[wasm_bindgen(method)]
38 pub fn off(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
39
40 #[wasm_bindgen(method, js_name = "on")]
41 pub fn on(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
42
43 #[wasm_bindgen(method, js_name = "once")]
44 pub fn once(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
45
46 #[wasm_bindgen(method, js_name = "prependListener")]
47 pub fn prepend_listener(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
48
49 #[wasm_bindgen(method, js_name = "prependOnceListener")]
50 pub fn prepend_once_listener(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
51
52 #[wasm_bindgen(method, js_name = "removeAllListeners")]
53 pub fn remove_all_listeners(this: &EventEmitter, event_name: Option<&str>) -> EventEmitter;
54
55 #[wasm_bindgen(method, js_name = "removeListener")]
56 pub fn remove_listener(this: &EventEmitter, event_name: &str, listener: &Function) -> EventEmitter;
57
58 #[wasm_bindgen(method, js_name = "setMaxListeners")]
59 pub fn set_max_listeners(this: &EventEmitter, n: f64) -> EventEmitter;
60
61 #[wasm_bindgen(method, js_name = "rawListeners")]
62 pub fn raw_listeners(this: &EventEmitter, event_name: &str) -> Box<[JsValue]>;
63}