wasm_streams/writable/
sys.rs1use js_sys::{Error, Promise};
4use wasm_bindgen::prelude::*;
5
6use super::into_underlying_sink::IntoUnderlyingSink;
7
8#[wasm_bindgen]
9extern "C" {
10 #[wasm_bindgen(js_name = WritableStream, typescript_type = "WritableStream")]
12 #[derive(Clone, Debug)]
13 pub type WritableStream;
14
15 #[wasm_bindgen(constructor)]
16 pub fn new() -> WritableStream;
17
18 #[wasm_bindgen(constructor)]
19 pub(crate) fn new_with_sink(sink: IntoUnderlyingSink) -> WritableStream;
20
21 #[wasm_bindgen(method, getter, js_name = locked)]
22 pub fn is_locked(this: &WritableStream) -> bool;
23
24 #[wasm_bindgen(method, js_name = abort)]
25 pub fn abort(this: &WritableStream) -> Promise;
26
27 #[wasm_bindgen(method, js_name = abort)]
28 pub fn abort_with_reason(this: &WritableStream, reason: &JsValue) -> Promise;
29
30 #[wasm_bindgen(method, catch, js_name = getWriter)]
31 pub fn get_writer(this: &WritableStream) -> Result<WritableStreamDefaultWriter, Error>;
32}
33
34#[wasm_bindgen]
35extern "C" {
36 #[derive(Clone, Debug)]
38 pub type WritableStreamDefaultWriter;
39
40 #[wasm_bindgen(method, getter, js_name = closed)]
41 pub fn closed(this: &WritableStreamDefaultWriter) -> Promise;
42
43 #[wasm_bindgen(method, getter, js_name = desiredSize)]
44 pub fn desired_size(this: &WritableStreamDefaultWriter) -> Option<f64>;
45
46 #[wasm_bindgen(method, getter, js_name = ready)]
47 pub fn ready(this: &WritableStreamDefaultWriter) -> Promise;
48
49 #[wasm_bindgen(method, js_name = abort)]
50 pub fn abort(this: &WritableStreamDefaultWriter) -> Promise;
51
52 #[wasm_bindgen(method, js_name = abort)]
53 pub fn abort_with_reason(this: &WritableStreamDefaultWriter, reason: &JsValue) -> Promise;
54
55 #[wasm_bindgen(method, js_name = close)]
56 pub fn close(this: &WritableStreamDefaultWriter) -> Promise;
57
58 #[wasm_bindgen(method, js_name = write)]
59 pub fn write(this: &WritableStreamDefaultWriter, chunk: JsValue) -> Promise;
60
61 #[wasm_bindgen(method, js_name = releaseLock)]
62 pub fn release_lock(this: &WritableStreamDefaultWriter);
63}