osra 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +284 -34
- package/build/extension/background.js +2 -0
- package/build/extension/background.js.map +1 -0
- package/build/extension/chunks/index.js +2 -0
- package/build/extension/chunks/index.js.map +1 -0
- package/build/extension/content.js +2 -0
- package/build/extension/content.js.map +1 -0
- package/build/extension/manifest.json +21 -0
- package/build/extension/popup.html +120 -0
- package/build/extension/popup.js +2 -0
- package/build/extension/popup.js.map +1 -0
- package/build/extension-test/background.js +753 -0
- package/build/extension-test/background.js.map +1 -0
- package/build/extension-test/content.js +4585 -0
- package/build/extension-test/content.js.map +1 -0
- package/build/extension-test/manifest.json +22 -0
- package/build/extension-test/popup.html +106 -0
- package/build/extension-test/popup.js +4610 -0
- package/build/extension-test/popup.js.map +1 -0
- package/build/extension-test-firefox/background.js +5464 -0
- package/build/extension-test-firefox/background.js.map +1 -0
- package/build/extension-test-firefox/content.js +5286 -0
- package/build/extension-test-firefox/content.js.map +1 -0
- package/build/extension-test-firefox/manifest.json +27 -0
- package/build/extension-test-firefox/popup.html +106 -0
- package/build/extension-test-firefox/popup.js +5213 -0
- package/build/extension-test-firefox/popup.js.map +1 -0
- package/build/index.d.ts +383 -9
- package/build/index.js +432 -327
- package/build/index.js.map +1 -1
- package/build/test.js +25848 -0
- package/build/test.js.map +1 -0
- package/package.json +13 -6
package/build/index.d.ts
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
import { Runtime } from 'webextension-polyfill';
|
|
2
|
+
import { TypedEventTarget } from 'typescript-event-target';
|
|
3
|
+
|
|
4
|
+
declare type AllocatedMessageChannel<T extends StructurableTransferable = StructurableTransferable, T2 extends StructurableTransferable = StructurableTransferable> = {
|
|
5
|
+
uuid: Uuid;
|
|
6
|
+
/** Local port */
|
|
7
|
+
port1: StrictMessagePort<T>;
|
|
8
|
+
/** Remote port that gets transferred, might be undefined if a remote context created the channel */
|
|
9
|
+
port2?: StrictMessagePort<T2>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
declare namespace arrayBuffer {
|
|
13
|
+
export {
|
|
14
|
+
type,
|
|
15
|
+
isType,
|
|
16
|
+
box,
|
|
17
|
+
revive
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
1
21
|
declare type BidirectionalConnectionMessage = {
|
|
2
22
|
type: 'init';
|
|
3
23
|
remoteUuid: Uuid;
|
|
@@ -19,12 +39,135 @@ declare type BidirectionalConnectionMessage = {
|
|
|
19
39
|
portId: string;
|
|
20
40
|
};
|
|
21
41
|
|
|
22
|
-
declare
|
|
42
|
+
declare const box: <T extends ArrayBuffer, T2 extends RevivableContext>(value: T, _context: T2) => {
|
|
43
|
+
type: "arrayBuffer";
|
|
44
|
+
__OSRA_BOX__: "revivable";
|
|
45
|
+
} & (IsJsonOnlyTransport<T2["transport"]> extends true ? {
|
|
46
|
+
base64Buffer: string;
|
|
47
|
+
} : IsJsonOnlyTransport<T2["transport"]> extends false ? {
|
|
48
|
+
arrayBuffer: ArrayBuffer;
|
|
49
|
+
} : {
|
|
50
|
+
base64Buffer: string;
|
|
51
|
+
} | {
|
|
52
|
+
arrayBuffer: ArrayBuffer;
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
declare const box_2: <T extends Date, T2 extends RevivableContext>(value: T, _context: T2) => {
|
|
56
|
+
type: "date";
|
|
57
|
+
ISOString: string;
|
|
58
|
+
__OSRA_BOX__: "revivable";
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
declare const box_3: <T extends Error, T2 extends RevivableContext>(value: T, _context: T2) => {
|
|
62
|
+
type: "error";
|
|
63
|
+
message: string;
|
|
64
|
+
stack: string;
|
|
65
|
+
__OSRA_BOX__: "revivable";
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
declare const box_4: <T extends TypedArray, T2 extends RevivableContext>(value: T, context: T2) => {
|
|
69
|
+
type: "typedArray";
|
|
70
|
+
typedArrayType: string;
|
|
71
|
+
__OSRA_BOX__: "revivable";
|
|
72
|
+
} & (IsJsonOnlyTransport<T2["transport"]> extends true ? {
|
|
73
|
+
base64Buffer: string;
|
|
74
|
+
} : IsJsonOnlyTransport<T2["transport"]> extends false ? {
|
|
75
|
+
arrayBuffer: ArrayBuffer;
|
|
76
|
+
} : {
|
|
77
|
+
base64Buffer: string;
|
|
78
|
+
} | {
|
|
79
|
+
arrayBuffer: ArrayBuffer;
|
|
80
|
+
}) & {
|
|
81
|
+
[UnderlyingType]: T;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
declare const box_5: <T, T2 extends RevivableContext = RevivableContext>(value: StructurableTransferablePort<T>, context: T2) => ({
|
|
85
|
+
type: "messagePort";
|
|
86
|
+
portId: `${string}-${string}-${string}-${string}-${string}`;
|
|
87
|
+
__OSRA_BOX__: "revivable";
|
|
88
|
+
} & {
|
|
89
|
+
[UnderlyingType]: StrictMessagePort<ExtractStructurableTransferable<T>>;
|
|
90
|
+
}) | ({
|
|
91
|
+
type: "messagePort";
|
|
92
|
+
port: StructurableTransferablePort<T>;
|
|
93
|
+
__OSRA_BOX__: "revivable";
|
|
94
|
+
} & {
|
|
95
|
+
[UnderlyingType]: StrictMessagePort<ExtractStructurableTransferable<T>>;
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
declare const box_6: <T, T2 extends RevivableContext>(value: CapablePromise<T>, context: T2) => BoxedPromise<ExtractCapable<T>>;
|
|
99
|
+
|
|
100
|
+
declare const box_7: <T extends (...args: any[]) => any, T2 extends RevivableContext>(value: T & CapableFunction<T>, context: T2) => BoxedFunction<T>;
|
|
101
|
+
|
|
102
|
+
declare const box_8: <T extends ReadableStream, T2 extends RevivableContext>(value: T, context: T2) => BoxedReadableStream<T>;
|
|
103
|
+
|
|
104
|
+
export declare const BoxBase: {
|
|
105
|
+
readonly __OSRA_BOX__: "revivable";
|
|
106
|
+
readonly type: string;
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export declare type BoxBase<T extends string = string> = typeof BoxBase & {
|
|
110
|
+
type: T;
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
declare type BoxedFunction<T extends (...args: any[]) => any = (...args: any[]) => any> = BoxBase<typeof type_6> & {
|
|
114
|
+
port: BoxedMessagePort;
|
|
115
|
+
} & {
|
|
116
|
+
[UnderlyingType]: (...args: Parameters<T>) => Promise<Awaited<ReturnType<T>>>;
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
declare type BoxedMessagePort<T extends StructurableTransferable = StructurableTransferable> = BoxBase<typeof type_7> & ({
|
|
120
|
+
portId: string;
|
|
121
|
+
} | {
|
|
122
|
+
port: StrictMessagePort<T>;
|
|
123
|
+
}) & {
|
|
124
|
+
[UnderlyingType]: StrictMessagePort<T>;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
declare type BoxedPromise<T extends Capable = Capable> = {
|
|
128
|
+
__OSRA_BOX__: 'revivable';
|
|
129
|
+
type: typeof type_5;
|
|
130
|
+
port: ReturnType<typeof box_5>;
|
|
131
|
+
[UnderlyingType]: T;
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
declare type BoxedReadableStream<T extends ReadableStream = ReadableStream> = {
|
|
135
|
+
__OSRA_BOX__: 'revivable';
|
|
136
|
+
type: typeof type_8;
|
|
137
|
+
port: BoxedMessagePort;
|
|
138
|
+
[UnderlyingType]: T;
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
declare type CallContext = [
|
|
142
|
+
/** MessagePort or portId that will be used to send the result of the function call */
|
|
143
|
+
MessagePort | string,
|
|
144
|
+
/** Arguments that will be passed to the function call */
|
|
145
|
+
Capable[]
|
|
146
|
+
];
|
|
147
|
+
|
|
148
|
+
declare type Capable<TModules extends readonly RevivableModule[] = DefaultRevivableModules> = StructurableTransferable | InferRevivables<TModules> | {
|
|
23
149
|
[key: string]: Capable;
|
|
24
150
|
} | Array<Capable> | Map<Capable, Capable> | Set<Capable>;
|
|
25
151
|
|
|
152
|
+
declare const CapableError: unique symbol;
|
|
153
|
+
|
|
154
|
+
declare type CapableFunction<T> = T extends (...args: infer P) => infer R ? P extends Capable[] ? R extends Capable ? T : never : never : never;
|
|
155
|
+
|
|
156
|
+
declare type CapablePromise<T> = T extends Capable ? Promise<T> : {
|
|
157
|
+
[CapableError]: 'Message type must extend Capable';
|
|
158
|
+
__badType__: T;
|
|
159
|
+
};
|
|
160
|
+
|
|
26
161
|
declare type ConnectionMessage = BidirectionalConnectionMessage | UnidirectionalConnectionMessage;
|
|
27
162
|
|
|
163
|
+
declare type Context = {
|
|
164
|
+
type: 'resolve';
|
|
165
|
+
data: Capable;
|
|
166
|
+
} | {
|
|
167
|
+
type: 'reject';
|
|
168
|
+
error: string;
|
|
169
|
+
};
|
|
170
|
+
|
|
28
171
|
declare type CustomTransport = {
|
|
29
172
|
isJson?: boolean;
|
|
30
173
|
} & ({
|
|
@@ -36,10 +179,32 @@ declare type CustomTransport = {
|
|
|
36
179
|
emit: EmitPlatformTransport | ((message: Message, transferables?: Transferable[]) => void);
|
|
37
180
|
});
|
|
38
181
|
|
|
182
|
+
declare namespace date {
|
|
183
|
+
export {
|
|
184
|
+
type_2 as type,
|
|
185
|
+
isType_2 as isType,
|
|
186
|
+
box_2 as box,
|
|
187
|
+
revive_2 as revive
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
declare type DefaultRevivableModules = typeof defaultRevivableModules;
|
|
192
|
+
|
|
193
|
+
declare const defaultRevivableModules: readonly [typeof arrayBuffer, typeof date, typeof error, typeof typedArray, typeof promise, typeof func, typeof messagePort, typeof readableStream];
|
|
194
|
+
|
|
39
195
|
declare type EmitJsonPlatformTransport = WebSocket | WebExtPort;
|
|
40
196
|
|
|
41
197
|
declare type EmitPlatformTransport = EmitJsonPlatformTransport | Window | ServiceWorker | Worker | SharedWorker | MessagePort;
|
|
42
198
|
|
|
199
|
+
declare namespace error {
|
|
200
|
+
export {
|
|
201
|
+
type_3 as type,
|
|
202
|
+
isType_3 as isType,
|
|
203
|
+
box_3 as box,
|
|
204
|
+
revive_3 as revive
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
43
208
|
/**
|
|
44
209
|
* Protocol mode:
|
|
45
210
|
* - Bidirectional mode
|
|
@@ -61,10 +226,76 @@ export declare const expose: <T extends Capable>(value: Capable, { transport: _t
|
|
|
61
226
|
logger?: {};
|
|
62
227
|
}) => Promise<T>;
|
|
63
228
|
|
|
229
|
+
declare type ExtractCapable<T> = T extends Capable ? T : never;
|
|
230
|
+
|
|
231
|
+
declare type ExtractStructurableTransferable<T> = T extends StructurableTransferable ? T : never;
|
|
232
|
+
|
|
233
|
+
declare type ExtractType<T> = T extends {
|
|
234
|
+
isType: (value: unknown) => value is infer S;
|
|
235
|
+
} ? S : never;
|
|
236
|
+
|
|
237
|
+
declare namespace func {
|
|
238
|
+
export {
|
|
239
|
+
type_6 as type,
|
|
240
|
+
CallContext,
|
|
241
|
+
BoxedFunction,
|
|
242
|
+
isType_6 as isType,
|
|
243
|
+
box_7 as box,
|
|
244
|
+
revive_6 as revive
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
declare type InferRevivables<TModules extends readonly unknown[]> = ExtractType<TModules[number]>;
|
|
249
|
+
|
|
250
|
+
declare type IsJsonOnlyTransport<T extends Transport> = T extends JsonPlatformTransport ? true : false;
|
|
251
|
+
|
|
252
|
+
declare const isType: (value: unknown) => value is ArrayBuffer;
|
|
253
|
+
|
|
254
|
+
declare const isType_2: (value: unknown) => value is Date;
|
|
255
|
+
|
|
256
|
+
declare const isType_3: (value: unknown) => value is Error;
|
|
257
|
+
|
|
258
|
+
declare const isType_4: (value: unknown) => value is TypedArray;
|
|
259
|
+
|
|
260
|
+
declare const isType_5: (value: unknown) => value is Promise<any>;
|
|
261
|
+
|
|
262
|
+
declare const isType_6: (value: unknown) => value is (...args: any[]) => any;
|
|
263
|
+
|
|
264
|
+
declare const isType_7: (value: unknown) => value is MessagePort;
|
|
265
|
+
|
|
266
|
+
declare const isType_8: (value: unknown) => value is ReadableStream;
|
|
267
|
+
|
|
64
268
|
declare type Jsonable = boolean | null | number | string | {
|
|
65
269
|
[key: string]: Jsonable;
|
|
66
270
|
} | Array<Jsonable>;
|
|
67
271
|
|
|
272
|
+
declare type JsonPlatformTransport = {
|
|
273
|
+
isJson: true;
|
|
274
|
+
} | EmitJsonPlatformTransport | ReceiveJsonPlatformTransport;
|
|
275
|
+
|
|
276
|
+
declare const makeMessageChannelAllocator: () => {
|
|
277
|
+
getUniqueUuid: () => `${string}-${string}-${string}-${string}-${string}`;
|
|
278
|
+
set: (uuid: Uuid, messagePorts: {
|
|
279
|
+
port1: StrictMessagePort;
|
|
280
|
+
port2?: StrictMessagePort;
|
|
281
|
+
}) => void;
|
|
282
|
+
alloc: (uuid?: Uuid | undefined, messagePorts?: {
|
|
283
|
+
port1: StrictMessagePort;
|
|
284
|
+
port2?: StrictMessagePort;
|
|
285
|
+
}) => {
|
|
286
|
+
port1: StrictMessagePort;
|
|
287
|
+
port2?: StrictMessagePort;
|
|
288
|
+
uuid: `${string}-${string}-${string}-${string}-${string}`;
|
|
289
|
+
};
|
|
290
|
+
has: (uuid: string) => boolean;
|
|
291
|
+
get: (uuid: string) => AllocatedMessageChannel<StructurableTransferable, StructurableTransferable> | undefined;
|
|
292
|
+
free: (uuid: string) => boolean;
|
|
293
|
+
getOrAlloc: (uuid?: Uuid | undefined, messagePorts?: {
|
|
294
|
+
port1: StrictMessagePort;
|
|
295
|
+
port2?: StrictMessagePort;
|
|
296
|
+
}) => AllocatedMessageChannel<StructurableTransferable, StructurableTransferable>;
|
|
297
|
+
};
|
|
298
|
+
|
|
68
299
|
declare type Message = MessageBase & MessageVariant;
|
|
69
300
|
|
|
70
301
|
declare type MessageBase = {
|
|
@@ -74,6 +305,8 @@ declare type MessageBase = {
|
|
|
74
305
|
name?: string;
|
|
75
306
|
};
|
|
76
307
|
|
|
308
|
+
declare type MessageChannelAllocator = ReturnType<typeof makeMessageChannelAllocator>;
|
|
309
|
+
|
|
77
310
|
declare type MessageContext = {
|
|
78
311
|
port?: MessagePort | WebExtPort;
|
|
79
312
|
sender?: WebExtSender;
|
|
@@ -81,9 +314,23 @@ declare type MessageContext = {
|
|
|
81
314
|
source?: MessageEventSource | null;
|
|
82
315
|
};
|
|
83
316
|
|
|
84
|
-
declare type
|
|
317
|
+
declare type MessageEventMap = {
|
|
318
|
+
message: CustomEvent<Message>;
|
|
319
|
+
};
|
|
85
320
|
|
|
86
|
-
declare
|
|
321
|
+
declare type MessageEventTarget_2 = TypedEventTarget<MessageEventMap>;
|
|
322
|
+
|
|
323
|
+
declare namespace messagePort {
|
|
324
|
+
export {
|
|
325
|
+
type_7 as type,
|
|
326
|
+
BoxedMessagePort,
|
|
327
|
+
isType_7 as isType,
|
|
328
|
+
box_5 as box,
|
|
329
|
+
revive_7 as revive
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
declare type MessageVariant = ProtocolMessage | ConnectionMessage;
|
|
87
334
|
|
|
88
335
|
declare const OSRA_KEY: "__OSRA_KEY__";
|
|
89
336
|
|
|
@@ -97,6 +344,17 @@ declare type PlatformCapabilities = {
|
|
|
97
344
|
|
|
98
345
|
declare type PlatformTransport = EmitPlatformTransport | ReceivePlatformTransport;
|
|
99
346
|
|
|
347
|
+
declare namespace promise {
|
|
348
|
+
export {
|
|
349
|
+
type_5 as type,
|
|
350
|
+
Context,
|
|
351
|
+
BoxedPromise,
|
|
352
|
+
isType_5 as isType,
|
|
353
|
+
box_6 as box,
|
|
354
|
+
revive_5 as revive
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
|
|
100
358
|
declare type ProtocolMessage = {
|
|
101
359
|
type: 'announce';
|
|
102
360
|
/** Only set when acknowledging a remote announcement */
|
|
@@ -110,11 +368,77 @@ declare type ProtocolMessage = {
|
|
|
110
368
|
remoteUuid: Uuid;
|
|
111
369
|
};
|
|
112
370
|
|
|
371
|
+
declare type PullContext = {
|
|
372
|
+
type: 'pull' | 'cancel';
|
|
373
|
+
};
|
|
374
|
+
|
|
375
|
+
declare namespace readableStream {
|
|
376
|
+
export {
|
|
377
|
+
type_8 as type,
|
|
378
|
+
PullContext,
|
|
379
|
+
BoxedReadableStream,
|
|
380
|
+
isType_8 as isType,
|
|
381
|
+
box_8 as box,
|
|
382
|
+
revive_8 as revive
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
|
|
113
386
|
declare type ReceiveJsonPlatformTransport = WebSocket | WebExtPort | WebExtOnConnect | WebExtOnMessage;
|
|
114
387
|
|
|
115
388
|
declare type ReceivePlatformTransport = ReceiveJsonPlatformTransport | Window | ServiceWorker | Worker | SharedWorker | MessagePort;
|
|
116
389
|
|
|
117
|
-
declare type
|
|
390
|
+
declare type RevivableContext<TModules extends readonly RevivableModule[] = DefaultRevivableModules> = {
|
|
391
|
+
platformCapabilities: PlatformCapabilities;
|
|
392
|
+
transport: Transport;
|
|
393
|
+
remoteUuid: Uuid;
|
|
394
|
+
messagePorts: Set<MessagePort>;
|
|
395
|
+
messageChannels: MessageChannelAllocator;
|
|
396
|
+
sendMessage: (message: ConnectionMessage) => void;
|
|
397
|
+
revivableModules: TModules;
|
|
398
|
+
eventTarget: MessageEventTarget_2;
|
|
399
|
+
};
|
|
400
|
+
|
|
401
|
+
declare type RevivableModule<T extends string = string, T2 = any, T3 extends BoxBase<T> = any> = {
|
|
402
|
+
readonly type: T;
|
|
403
|
+
readonly isType: (value: unknown) => value is T2;
|
|
404
|
+
readonly box: ((value: T2, context: RevivableContext) => T3) | ((...args: any[]) => any);
|
|
405
|
+
readonly revive: (value: T3, context: RevivableContext) => T2;
|
|
406
|
+
};
|
|
407
|
+
|
|
408
|
+
declare const revive: <T extends ReturnType<typeof box>, T2 extends RevivableContext>(value: T, _context: T2) => ArrayBuffer;
|
|
409
|
+
|
|
410
|
+
declare const revive_2: <T extends ReturnType<typeof box_2>, T2 extends RevivableContext>(value: T, _context: T2) => Date;
|
|
411
|
+
|
|
412
|
+
declare const revive_3: <T extends ReturnType<typeof box_3>, T2 extends RevivableContext>(value: T, _context: T2) => Error;
|
|
413
|
+
|
|
414
|
+
declare const revive_4: <T extends ReturnType<typeof box_4>, T2 extends RevivableContext>(value: T, context: T2) => T[UnderlyingType];
|
|
415
|
+
|
|
416
|
+
declare const revive_5: <T extends BoxedPromise, T2 extends RevivableContext>(value: T, context: T2) => Promise<T[typeof UnderlyingType]>;
|
|
417
|
+
|
|
418
|
+
declare const revive_6: <T extends BoxedFunction, T2 extends RevivableContext>(value: T, context: T2) => T[UnderlyingType];
|
|
419
|
+
|
|
420
|
+
declare const revive_7: <T extends StructurableTransferable, T2 extends RevivableContext>(value: BoxedMessagePort<T>, context: T2) => StrictMessagePort<T>;
|
|
421
|
+
|
|
422
|
+
declare const revive_8: <T extends BoxedReadableStream, T2 extends RevivableContext>(value: T, context: T2) => T[UnderlyingType];
|
|
423
|
+
|
|
424
|
+
declare interface StrictMessagePort<T = StructurableTransferable> extends EventTarget {
|
|
425
|
+
[UnderlyingType]: T;
|
|
426
|
+
onmessage: ((this: MessagePort, ev: MessageEvent<T>) => any) | null;
|
|
427
|
+
onmessageerror: ((this: MessagePort, ev: MessageEvent) => any) | null;
|
|
428
|
+
close(): void;
|
|
429
|
+
postMessage(message: T, transfer: Transferable[]): void;
|
|
430
|
+
postMessage(message: T, options?: StructuredSerializeOptions): void;
|
|
431
|
+
start(): void;
|
|
432
|
+
addEventListener<K extends keyof StrictMessagePortEventMap<T>>(type: K, listener: (this: MessagePort, ev: StrictMessagePortEventMap<T>[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
433
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
434
|
+
removeEventListener<K extends keyof StrictMessagePortEventMap<T>>(type: K, listener: (this: MessagePort, ev: StrictMessagePortEventMap<T>[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
435
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
declare type StrictMessagePortEventMap<T = any> = {
|
|
439
|
+
'message': MessageEvent<T>;
|
|
440
|
+
'messageerror': MessageEvent;
|
|
441
|
+
};
|
|
118
442
|
|
|
119
443
|
declare type Structurable = Jsonable
|
|
120
444
|
/** not really structureable but here for convenience */
|
|
@@ -122,16 +446,66 @@ declare type Structurable = Jsonable
|
|
|
122
446
|
[key: string]: Structurable;
|
|
123
447
|
} | Array<Structurable> | Map<Structurable, Structurable> | Set<Structurable>;
|
|
124
448
|
|
|
125
|
-
declare type
|
|
126
|
-
[
|
|
127
|
-
|
|
449
|
+
declare type StructurableTransferable = Structurable | Transferable | {
|
|
450
|
+
[key: string]: StructurableTransferable;
|
|
451
|
+
} | Array<StructurableTransferable> | Map<StructurableTransferable, StructurableTransferable> | Set<StructurableTransferable>;
|
|
452
|
+
|
|
453
|
+
declare const StructurableTransferableError: unique symbol;
|
|
454
|
+
|
|
455
|
+
declare type StructurableTransferablePort<T> = T extends StructurableTransferable ? StrictMessagePort<T> : {
|
|
456
|
+
[StructurableTransferableError]: 'Message type must extend StructurableTransferable';
|
|
457
|
+
__badType__: T;
|
|
128
458
|
};
|
|
129
459
|
|
|
130
460
|
declare type Transport = PlatformTransport | CustomTransport;
|
|
131
461
|
|
|
462
|
+
declare const type: "arrayBuffer";
|
|
463
|
+
|
|
464
|
+
declare const type_2: "date";
|
|
465
|
+
|
|
466
|
+
declare const type_3: "error";
|
|
467
|
+
|
|
468
|
+
declare const type_4: "typedArray";
|
|
469
|
+
|
|
470
|
+
declare const type_5: "promise";
|
|
471
|
+
|
|
472
|
+
declare const type_6: "function";
|
|
473
|
+
|
|
474
|
+
declare const type_7: "messagePort";
|
|
475
|
+
|
|
476
|
+
declare const type_8: "readableStream";
|
|
477
|
+
|
|
132
478
|
declare type TypedArray = typeof typedArrays[number];
|
|
133
479
|
|
|
134
|
-
declare
|
|
480
|
+
declare namespace typedArray {
|
|
481
|
+
export {
|
|
482
|
+
type_4 as type,
|
|
483
|
+
TypedArrayConstructor,
|
|
484
|
+
TypedArray,
|
|
485
|
+
typedArrayToType,
|
|
486
|
+
TypedArrayType,
|
|
487
|
+
typedArrayTypeToTypedArrayConstructor,
|
|
488
|
+
isType_4 as isType,
|
|
489
|
+
box_4 as box,
|
|
490
|
+
revive_4 as revive
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
declare type TypedArrayConstructor = typeof typedArrayConstructors[number];
|
|
495
|
+
|
|
496
|
+
declare const typedArrayConstructors: (Int8ArrayConstructor | Uint8ArrayConstructor | Uint8ClampedArrayConstructor | Int16ArrayConstructor | Uint16ArrayConstructor | Int32ArrayConstructor | Uint32ArrayConstructor | Float16ArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor | BigInt64ArrayConstructor | BigUint64ArrayConstructor)[];
|
|
497
|
+
|
|
498
|
+
declare const typedArrays: (BigInt64Array<ArrayBuffer> | BigUint64Array<ArrayBuffer> | Int8Array<ArrayBuffer> | Float64Array<ArrayBuffer> | Uint8ClampedArray<ArrayBuffer> | Int16Array<ArrayBuffer> | Uint16Array<ArrayBuffer> | Int32Array<ArrayBuffer> | Uint32Array<ArrayBuffer> | Float16Array<ArrayBuffer> | Float32Array<ArrayBuffer> | Uint8Array<ArrayBuffer>)[];
|
|
499
|
+
|
|
500
|
+
declare const typedArrayToType: <T extends TypedArray>(value: T) => "BigUint64Array" | "BigInt64Array" | "Float64Array" | "Int8Array" | "Uint8ClampedArray" | "Int16Array" | "Uint16Array" | "Int32Array" | "Uint32Array" | "Float16Array" | "Float32Array" | "Uint8Array";
|
|
501
|
+
|
|
502
|
+
declare type TypedArrayType = ReturnType<typeof typedArrayToType>;
|
|
503
|
+
|
|
504
|
+
declare const typedArrayTypeToTypedArrayConstructor: (value: TypedArrayType) => TypedArrayConstructor;
|
|
505
|
+
|
|
506
|
+
export declare const UnderlyingType: unique symbol;
|
|
507
|
+
|
|
508
|
+
export declare type UnderlyingType = typeof UnderlyingType;
|
|
135
509
|
|
|
136
510
|
declare type UnidirectionalConnectionMessage = {
|
|
137
511
|
type: 'message';
|
|
@@ -146,7 +520,7 @@ declare type WebExtOnConnect = WebExtRuntime['onConnect'];
|
|
|
146
520
|
|
|
147
521
|
declare type WebExtOnMessage = WebExtRuntime['onMessage'];
|
|
148
522
|
|
|
149
|
-
declare type WebExtPort = ReturnType<WebExtRuntime['connect']
|
|
523
|
+
declare type WebExtPort = ReturnType<WebExtRuntime['connect']> | Runtime.Port;
|
|
150
524
|
|
|
151
525
|
declare type WebExtRuntime = typeof browser.runtime;
|
|
152
526
|
|