1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
use crate::{EventTarget, Tab};
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
extern "C" {
#[derive(Debug, Clone)]
pub type MessageSender;
#[wasm_bindgen(method, getter)]
pub fn tab(this: &MessageSender) -> Option<Tab>;
#[wasm_bindgen(method, getter, js_name = frameId)]
pub fn frame_id(this: &MessageSender) -> Option<u32>;
#[wasm_bindgen(method, getter)]
pub fn id(this: &MessageSender) -> Option<String>;
#[wasm_bindgen(method, getter)]
pub fn url(this: &MessageSender) -> Option<String>;
#[wasm_bindgen(method, getter, js_name = tlsChannelId)]
pub fn tls_channel_id(this: &MessageSender) -> Option<String>;
}
#[wasm_bindgen]
extern "C" {
#[derive(Debug, Clone, PartialEq)]
pub type Port;
#[wasm_bindgen(method, getter)]
pub fn name(this: &Port) -> String;
#[wasm_bindgen(method, getter)]
pub fn error(this: &Port) -> js_sys::Error;
#[wasm_bindgen(method)]
pub fn disconnect(this: &Port);
#[wasm_bindgen(method, getter, js_name = onDisconnect)]
pub fn on_disconnect(this: &Port) -> EventTarget;
#[wasm_bindgen(method, getter, js_name = onMessage)]
pub fn on_message(this: &Port) -> EventTarget;
#[wasm_bindgen(method, js_name = postMessage)]
pub fn post_message(this: &Port, value: &JsValue);
#[wasm_bindgen(method, getter)]
pub fn sender(this: &Port) -> Option<MessageSender>;
}