-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathglobal.d.ts
More file actions
99 lines (92 loc) · 3.21 KB
/
Copy pathglobal.d.ts
File metadata and controls
99 lines (92 loc) · 3.21 KB
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
declare const globalThis: {
Module: any;
};
declare module "*?worker" {
const func: new (options?: WorkerOptions) => Worker;
export default func;
}
declare module "*?worker&inline" {
const func: new (options?: WorkerOptions) => Worker;
export default func;
}
declare module "*?url" {
const func: new () => string;
export default func();
}
declare const AudioData: {
prototype: AudioData;
new (options: any): AudioData;
};
enum AudioSampleFormat {
"u8",
"s16",
"s32",
"f32",
"u8-planar",
"s16-planar",
"s32-planar",
"f32-planar",
}
/**
* https://w3c.github.io/webcodecs/#audiodata-interface
* Limited availability
* This feature is not Baseline because it does not work in some of the most widely-used browsers.
*/
interface AudioData {
readonly format: AudioSampleFormat;
readonly sampleRate: number;
readonly numberOfFrames: number;
readonly numberOfChannels: number;
readonly duration: number;
readonly timestamp: number;
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioData/allocationSize) */
allocationSize(options?: any): number;
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioData/clone) */
clone(): AudioData;
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioData/close) */
close(): void;
}
/**
* This Web Workers API interface represents a background task that can be easily created and can send messages back to its creator. Creating a worker is as simple as calling the Worker() constructor and specifying a script to be run in the worker thread.
*
* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker)
*/
interface Worker extends EventTarget, AbstractWorker {
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/message_event) */
onmessage: ((this: Worker, ev: MessageEvent) => any) | null;
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/messageerror_event) */
onmessageerror: ((this: Worker, ev: MessageEvent) => any) | null;
/**
* Clones message and transmits it to worker's global environment. transfer can be passed as a list of objects that are to be transferred rather than cloned.
*
* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/postMessage)
*/
postMessage(message: any, transfer: (Transferable | AudioData)[]): void;
postMessage(message: any, options?: StructuredSerializeOptions): void;
/**
* Aborts worker's associated global environment.
*
* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/terminate)
*/
terminate(): void;
addEventListener<K extends keyof WorkerEventMap>(
type: K,
listener: (this: Worker, ev: WorkerEventMap[K]) => any,
options?: boolean | AddEventListenerOptions
): void;
addEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | AddEventListenerOptions
): void;
removeEventListener<K extends keyof WorkerEventMap>(
type: K,
listener: (this: Worker, ev: WorkerEventMap[K]) => any,
options?: boolean | EventListenerOptions
): void;
removeEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | EventListenerOptions
): void;
}