• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// GENERATED CONTENT - DO NOT EDIT
2// Content was automatically extracted by Reffy into webref
3// (https://github.com/w3c/webref)
4// Source: Streams Standard (https://streams.spec.whatwg.org/)
5
6[Exposed=(Window,Worker,Worklet), Transferable]
7interface ReadableStream {
8  constructor(optional object underlyingSource, optional QueuingStrategy strategy = {});
9
10  readonly attribute boolean locked;
11
12  Promise<undefined> cancel(optional any reason);
13  ReadableStreamReader getReader(optional ReadableStreamGetReaderOptions options = {});
14  ReadableStream pipeThrough(ReadableWritablePair transform, optional StreamPipeOptions options = {});
15  Promise<undefined> pipeTo(WritableStream destination, optional StreamPipeOptions options = {});
16  sequence<ReadableStream> tee();
17
18  async iterable<any>(optional ReadableStreamIteratorOptions options = {});
19};
20
21typedef (ReadableStreamDefaultReader or ReadableStreamBYOBReader) ReadableStreamReader;
22
23enum ReadableStreamReaderMode { "byob" };
24
25dictionary ReadableStreamGetReaderOptions {
26  ReadableStreamReaderMode mode;
27};
28
29dictionary ReadableStreamIteratorOptions {
30  boolean preventCancel = false;
31};
32
33dictionary ReadableWritablePair {
34  required ReadableStream readable;
35  required WritableStream writable;
36};
37
38dictionary StreamPipeOptions {
39  boolean preventClose = false;
40  boolean preventAbort = false;
41  boolean preventCancel = false;
42  AbortSignal signal;
43};
44
45dictionary UnderlyingSource {
46  UnderlyingSourceStartCallback start;
47  UnderlyingSourcePullCallback pull;
48  UnderlyingSourceCancelCallback cancel;
49  ReadableStreamType type;
50  [EnforceRange] unsigned long long autoAllocateChunkSize;
51};
52
53typedef (ReadableStreamDefaultController or ReadableByteStreamController) ReadableStreamController;
54
55callback UnderlyingSourceStartCallback = any (ReadableStreamController controller);
56callback UnderlyingSourcePullCallback = Promise<undefined> (ReadableStreamController controller);
57callback UnderlyingSourceCancelCallback = Promise<undefined> (optional any reason);
58
59enum ReadableStreamType { "bytes" };
60
61interface mixin ReadableStreamGenericReader {
62  readonly attribute Promise<undefined> closed;
63
64  Promise<undefined> cancel(optional any reason);
65};
66
67[Exposed=(Window,Worker,Worklet)]
68interface ReadableStreamDefaultReader {
69  constructor(ReadableStream stream);
70
71  Promise<ReadableStreamDefaultReadResult> read();
72  undefined releaseLock();
73};
74ReadableStreamDefaultReader includes ReadableStreamGenericReader;
75
76dictionary ReadableStreamDefaultReadResult {
77 any value;
78 boolean done;
79};
80
81[Exposed=(Window,Worker,Worklet)]
82interface ReadableStreamBYOBReader {
83  constructor(ReadableStream stream);
84
85  Promise<ReadableStreamBYOBReadResult> read(ArrayBufferView view);
86  undefined releaseLock();
87};
88ReadableStreamBYOBReader includes ReadableStreamGenericReader;
89
90dictionary ReadableStreamBYOBReadResult {
91 ArrayBufferView value;
92 boolean done;
93};
94
95[Exposed=(Window,Worker,Worklet)]
96interface ReadableStreamDefaultController {
97  readonly attribute unrestricted double? desiredSize;
98
99  undefined close();
100  undefined enqueue(optional any chunk);
101  undefined error(optional any e);
102};
103
104[Exposed=(Window,Worker,Worklet)]
105interface ReadableByteStreamController {
106  readonly attribute ReadableStreamBYOBRequest? byobRequest;
107  readonly attribute unrestricted double? desiredSize;
108
109  undefined close();
110  undefined enqueue(ArrayBufferView chunk);
111  undefined error(optional any e);
112};
113
114[Exposed=(Window,Worker,Worklet)]
115interface ReadableStreamBYOBRequest {
116  readonly attribute ArrayBufferView? view;
117
118  undefined respond([EnforceRange] unsigned long long bytesWritten);
119  undefined respondWithNewView(ArrayBufferView view);
120};
121
122[Exposed=(Window,Worker,Worklet), Transferable]
123interface WritableStream {
124  constructor(optional object underlyingSink, optional QueuingStrategy strategy = {});
125
126  readonly attribute boolean locked;
127
128  Promise<undefined> abort(optional any reason);
129  Promise<undefined> close();
130  WritableStreamDefaultWriter getWriter();
131};
132
133dictionary UnderlyingSink {
134  UnderlyingSinkStartCallback start;
135  UnderlyingSinkWriteCallback write;
136  UnderlyingSinkCloseCallback close;
137  UnderlyingSinkAbortCallback abort;
138  any type;
139};
140
141callback UnderlyingSinkStartCallback = any (WritableStreamDefaultController controller);
142callback UnderlyingSinkWriteCallback = Promise<undefined> (any chunk, WritableStreamDefaultController controller);
143callback UnderlyingSinkCloseCallback = Promise<undefined> ();
144callback UnderlyingSinkAbortCallback = Promise<undefined> (optional any reason);
145
146[Exposed=(Window,Worker,Worklet)]
147interface WritableStreamDefaultWriter {
148  constructor(WritableStream stream);
149
150  readonly attribute Promise<undefined> closed;
151  readonly attribute unrestricted double? desiredSize;
152  readonly attribute Promise<undefined> ready;
153
154  Promise<undefined> abort(optional any reason);
155  Promise<undefined> close();
156  undefined releaseLock();
157  Promise<undefined> write(optional any chunk);
158};
159
160[Exposed=(Window,Worker,Worklet)]
161interface WritableStreamDefaultController {
162  undefined error(optional any e);
163};
164
165[Exposed=(Window,Worker,Worklet), Transferable]
166interface TransformStream {
167  constructor(optional object transformer,
168              optional QueuingStrategy writableStrategy = {},
169              optional QueuingStrategy readableStrategy = {});
170
171  readonly attribute ReadableStream readable;
172  readonly attribute WritableStream writable;
173};
174
175dictionary Transformer {
176  TransformerStartCallback start;
177  TransformerTransformCallback transform;
178  TransformerFlushCallback flush;
179  any readableType;
180  any writableType;
181};
182
183callback TransformerStartCallback = any (TransformStreamDefaultController controller);
184callback TransformerFlushCallback = Promise<undefined> (TransformStreamDefaultController controller);
185callback TransformerTransformCallback = Promise<undefined> (any chunk, TransformStreamDefaultController controller);
186
187[Exposed=(Window,Worker,Worklet)]
188interface TransformStreamDefaultController {
189  readonly attribute unrestricted double? desiredSize;
190
191  undefined enqueue(optional any chunk);
192  undefined error(optional any reason);
193  undefined terminate();
194};
195
196dictionary QueuingStrategy {
197  unrestricted double highWaterMark;
198  QueuingStrategySize size;
199};
200
201callback QueuingStrategySize = unrestricted double (optional any chunk);
202
203dictionary QueuingStrategyInit {
204  required unrestricted double highWaterMark;
205};
206
207[Exposed=(Window,Worker,Worklet)]
208interface ByteLengthQueuingStrategy {
209  constructor(QueuingStrategyInit init);
210
211  readonly attribute unrestricted double highWaterMark;
212  readonly attribute Function size;
213};
214
215[Exposed=(Window,Worker,Worklet)]
216interface CountQueuingStrategy {
217  constructor(QueuingStrategyInit init);
218
219  readonly attribute unrestricted double highWaterMark;
220  readonly attribute Function size;
221};
222
223interface mixin GenericTransformStream {
224  readonly attribute ReadableStream readable;
225  readonly attribute WritableStream writable;
226};
227