summaryrefslogtreecommitdiff
path: root/cli/tsc/dts/lib.deno.shared_globals.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tsc/dts/lib.deno.shared_globals.d.ts')
-rw-r--r--cli/tsc/dts/lib.deno.shared_globals.d.ts684
1 files changed, 684 insertions, 0 deletions
diff --git a/cli/tsc/dts/lib.deno.shared_globals.d.ts b/cli/tsc/dts/lib.deno.shared_globals.d.ts
new file mode 100644
index 000000000..5b30c0a87
--- /dev/null
+++ b/cli/tsc/dts/lib.deno.shared_globals.d.ts
@@ -0,0 +1,684 @@
+// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.
+
+// Documentation partially adapted from [MDN](https://developer.mozilla.org/),
+// by Mozilla Contributors, which is licensed under CC-BY-SA 2.5.
+
+/// <reference no-default-lib="true" />
+/// <reference lib="esnext" />
+/// <reference lib="deno.console" />
+/// <reference lib="deno.url" />
+/// <reference lib="deno.web" />
+/// <reference lib="deno.fetch" />
+/// <reference lib="deno.websocket" />
+/// <reference lib="deno.crypto" />
+/// <reference lib="deno.broadcast_channel" />
+
+/** @category WebAssembly */
+declare namespace WebAssembly {
+ /**
+ * The `WebAssembly.CompileError` object indicates an error during WebAssembly decoding or validation.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/CompileError)
+ *
+ * @category WebAssembly
+ */
+ export class CompileError extends Error {
+ /** Creates a new `WebAssembly.CompileError` object. */
+ constructor(message?: string, options?: ErrorOptions);
+ }
+
+ /**
+ * A `WebAssembly.Global` object represents a global variable instance, accessible from
+ * both JavaScript and importable/exportable across one or more `WebAssembly.Module`
+ * instances. This allows dynamic linking of multiple modules.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Global)
+ *
+ * @category WebAssembly
+ */
+ export class Global {
+ /** Creates a new `Global` object. */
+ constructor(descriptor: GlobalDescriptor, v?: any);
+
+ /**
+ * The value contained inside the global variable — this can be used to directly set
+ * and get the global's value.
+ */
+ value: any;
+
+ /** Old-style method that returns the value contained inside the global variable. */
+ valueOf(): any;
+ }
+
+ /**
+ * A `WebAssembly.Instance` object is a stateful, executable instance of a `WebAssembly.Module`.
+ * Instance objects contain all the Exported WebAssembly functions that allow calling into
+ * WebAssembly code from JavaScript.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Instance)
+ *
+ * @category WebAssembly
+ */
+ export class Instance {
+ /** Creates a new Instance object. */
+ constructor(module: Module, importObject?: Imports);
+
+ /**
+ * Returns an object containing as its members all the functions exported from the
+ * WebAssembly module instance, to allow them to be accessed and used by JavaScript.
+ * Read-only.
+ */
+ readonly exports: Exports;
+ }
+
+ /**
+ * The `WebAssembly.LinkError` object indicates an error during module instantiation
+ * (besides traps from the start function).
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/LinkError)
+ *
+ * @category WebAssembly
+ */
+ export class LinkError extends Error {
+ /** Creates a new WebAssembly.LinkError object. */
+ constructor(message?: string, options?: ErrorOptions);
+ }
+
+ /**
+ * The `WebAssembly.Memory` object is a resizable `ArrayBuffer` or `SharedArrayBuffer` that
+ * holds the raw bytes of memory accessed by a WebAssembly Instance.
+ *
+ * A memory created by JavaScript or in WebAssembly code will be accessible and mutable
+ * from both JavaScript and WebAssembly.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Memory)
+ *
+ * @category WebAssembly
+ */
+ export class Memory {
+ /** Creates a new `Memory` object. */
+ constructor(descriptor: MemoryDescriptor);
+
+ /** An accessor property that returns the buffer contained in the memory. */
+ readonly buffer: ArrayBuffer | SharedArrayBuffer;
+
+ /**
+ * Increases the size of the memory instance by a specified number of WebAssembly
+ * pages (each one is 64KB in size).
+ */
+ grow(delta: number): number;
+ }
+
+ /**
+ * A `WebAssembly.Module` object contains stateless WebAssembly code that has already been compiled
+ * by the browser — this can be efficiently shared with Workers, and instantiated multiple times.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Module)
+ *
+ * @category WebAssembly
+ */
+ export class Module {
+ /** Creates a new `Module` object. */
+ constructor(bytes: BufferSource);
+
+ /**
+ * Given a `Module` and string, returns a copy of the contents of all custom sections in the
+ * module with the given string name.
+ */
+ static customSections(
+ moduleObject: Module,
+ sectionName: string,
+ ): ArrayBuffer[];
+
+ /** Given a `Module`, returns an array containing descriptions of all the declared exports. */
+ static exports(moduleObject: Module): ModuleExportDescriptor[];
+
+ /** Given a `Module`, returns an array containing descriptions of all the declared imports. */
+ static imports(moduleObject: Module): ModuleImportDescriptor[];
+ }
+
+ /**
+ * The `WebAssembly.RuntimeError` object is the error type that is thrown whenever WebAssembly
+ * specifies a trap.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/RuntimeError)
+ *
+ * @category WebAssembly
+ */
+ export class RuntimeError extends Error {
+ /** Creates a new `WebAssembly.RuntimeError` object. */
+ constructor(message?: string, options?: ErrorOptions);
+ }
+
+ /**
+ * The `WebAssembly.Table()` object is a JavaScript wrapper object — an array-like structure
+ * representing a WebAssembly Table, which stores function references. A table created by
+ * JavaScript or in WebAssembly code will be accessible and mutable from both JavaScript
+ * and WebAssembly.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Table)
+ *
+ * @category WebAssembly
+ */
+ export class Table {
+ /** Creates a new `Table` object. */
+ constructor(descriptor: TableDescriptor);
+
+ /** Returns the length of the table, i.e. the number of elements. */
+ readonly length: number;
+
+ /** Accessor function — gets the element stored at a given index. */
+ get(index: number): Function | null;
+
+ /** Increases the size of the `Table` instance by a specified number of elements. */
+ grow(delta: number): number;
+
+ /** Sets an element stored at a given index to a given value. */
+ set(index: number, value: Function | null): void;
+ }
+
+ /** The `GlobalDescriptor` describes the options you can pass to
+ * `new WebAssembly.Global()`.
+ *
+ * @category WebAssembly
+ */
+ export interface GlobalDescriptor {
+ mutable?: boolean;
+ value: ValueType;
+ }
+
+ /** The `MemoryDescriptor` describes the options you can pass to
+ * `new WebAssembly.Memory()`.
+ *
+ * @category WebAssembly
+ */
+ export interface MemoryDescriptor {
+ initial: number;
+ maximum?: number;
+ shared?: boolean;
+ }
+
+ /** A `ModuleExportDescriptor` is the description of a declared export in a
+ * `WebAssembly.Module`.
+ *
+ * @category WebAssembly
+ */
+ export interface ModuleExportDescriptor {
+ kind: ImportExportKind;
+ name: string;
+ }
+
+ /** A `ModuleImportDescriptor` is the description of a declared import in a
+ * `WebAssembly.Module`.
+ *
+ * @category WebAssembly
+ */
+ export interface ModuleImportDescriptor {
+ kind: ImportExportKind;
+ module: string;
+ name: string;
+ }
+
+ /** The `TableDescriptor` describes the options you can pass to
+ * `new WebAssembly.Table()`.
+ *
+ * @category WebAssembly
+ */
+ export interface TableDescriptor {
+ element: TableKind;
+ initial: number;
+ maximum?: number;
+ }
+
+ /** The value returned from `WebAssembly.instantiate`.
+ *
+ * @category WebAssembly
+ */
+ export interface WebAssemblyInstantiatedSource {
+ /* A `WebAssembly.Instance` object that contains all the exported WebAssembly functions. */
+ instance: Instance;
+
+ /**
+ * A `WebAssembly.Module` object representing the compiled WebAssembly module.
+ * This `Module` can be instantiated again, or shared via postMessage().
+ */
+ module: Module;
+ }
+
+ /** @category WebAssembly */
+ export type ImportExportKind = "function" | "global" | "memory" | "table";
+ /** @category WebAssembly */
+ export type TableKind = "anyfunc";
+ /** @category WebAssembly */
+ export type ValueType = "f32" | "f64" | "i32" | "i64";
+ /** @category WebAssembly */
+ export type ExportValue = Function | Global | Memory | Table;
+ /** @category WebAssembly */
+ export type Exports = Record<string, ExportValue>;
+ /** @category WebAssembly */
+ export type ImportValue = ExportValue | number;
+ /** @category WebAssembly */
+ export type ModuleImports = Record<string, ImportValue>;
+ /** @category WebAssembly */
+ export type Imports = Record<string, ModuleImports>;
+
+ /**
+ * The `WebAssembly.compile()` function compiles WebAssembly binary code into a
+ * `WebAssembly.Module` object. This function is useful if it is necessary to compile
+ * a module before it can be instantiated (otherwise, the `WebAssembly.instantiate()`
+ * function should be used).
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/compile)
+ *
+ * @category WebAssembly
+ */
+ export function compile(bytes: BufferSource): Promise<Module>;
+
+ /**
+ * The `WebAssembly.compileStreaming()` function compiles a `WebAssembly.Module`
+ * directly from a streamed underlying source. This function is useful if it is
+ * necessary to a compile a module before it can be instantiated (otherwise, the
+ * `WebAssembly.instantiateStreaming()` function should be used).
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/compileStreaming)
+ *
+ * @category WebAssembly
+ */
+ export function compileStreaming(
+ source: Response | Promise<Response>,
+ ): Promise<Module>;
+
+ /**
+ * The WebAssembly.instantiate() function allows you to compile and instantiate
+ * WebAssembly code.
+ *
+ * This overload takes the WebAssembly binary code, in the form of a typed
+ * array or ArrayBuffer, and performs both compilation and instantiation in one step.
+ * The returned Promise resolves to both a compiled WebAssembly.Module and its first
+ * WebAssembly.Instance.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/instantiate)
+ *
+ * @category WebAssembly
+ */
+ export function instantiate(
+ bytes: BufferSource,
+ importObject?: Imports,
+ ): Promise<WebAssemblyInstantiatedSource>;
+
+ /**
+ * The WebAssembly.instantiate() function allows you to compile and instantiate
+ * WebAssembly code.
+ *
+ * This overload takes an already-compiled WebAssembly.Module and returns
+ * a Promise that resolves to an Instance of that Module. This overload is useful
+ * if the Module has already been compiled.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/instantiate)
+ *
+ * @category WebAssembly
+ */
+ export function instantiate(
+ moduleObject: Module,
+ importObject?: Imports,
+ ): Promise<Instance>;
+
+ /**
+ * The `WebAssembly.instantiateStreaming()` function compiles and instantiates a
+ * WebAssembly module directly from a streamed underlying source. This is the most
+ * efficient, optimized way to load wasm code.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/instantiateStreaming)
+ *
+ * @category WebAssembly
+ */
+ export function instantiateStreaming(
+ response: Response | PromiseLike<Response>,
+ importObject?: Imports,
+ ): Promise<WebAssemblyInstantiatedSource>;
+
+ /**
+ * The `WebAssembly.validate()` function validates a given typed array of
+ * WebAssembly binary code, returning whether the bytes form a valid wasm
+ * module (`true`) or not (`false`).
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/validate)
+ *
+ * @category WebAssembly
+ */
+ export function validate(bytes: BufferSource): boolean;
+}
+
+/** Sets a timer which executes a function once after the timer expires. Returns
+ * an id which may be used to cancel the timeout.
+ *
+ * ```ts
+ * setTimeout(() => { console.log('hello'); }, 500);
+ * ```
+ *
+ * @category Timers
+ */
+declare function setTimeout(
+ /** callback function to execute when timer expires */
+ cb: (...args: any[]) => void,
+ /** delay in ms */
+ delay?: number,
+ /** arguments passed to callback function */
+ ...args: any[]
+): number;
+
+/** Repeatedly calls a function , with a fixed time delay between each call.
+ *
+ * ```ts
+ * // Outputs 'hello' to the console every 500ms
+ * setInterval(() => { console.log('hello'); }, 500);
+ * ```
+ *
+ * @category Timers
+ */
+declare function setInterval(
+ /** callback function to execute when timer expires */
+ cb: (...args: any[]) => void,
+ /** delay in ms */
+ delay?: number,
+ /** arguments passed to callback function */
+ ...args: any[]
+): number;
+
+/** Cancels a timed, repeating action which was previously started by a call
+ * to `setInterval()`
+ *
+ * ```ts
+ * const id = setInterval(() => {console.log('hello');}, 500);
+ * // ...
+ * clearInterval(id);
+ * ```
+ *
+ * @category Timers
+ */
+declare function clearInterval(id?: number): void;
+
+/** Cancels a scheduled action initiated by `setTimeout()`
+ *
+ * ```ts
+ * const id = setTimeout(() => {console.log('hello');}, 500);
+ * // ...
+ * clearTimeout(id);
+ * ```
+ *
+ * @category Timers
+ */
+declare function clearTimeout(id?: number): void;
+
+/** @category Scheduling */
+interface VoidFunction {
+ (): void;
+}
+
+/** A microtask is a short function which is executed after the function or
+ * module which created it exits and only if the JavaScript execution stack is
+ * empty, but before returning control to the event loop being used to drive the
+ * script's execution environment. This event loop may be either the main event
+ * loop or the event loop driving a web worker.
+ *
+ * ```ts
+ * queueMicrotask(() => { console.log('This event loop stack is complete'); });
+ * ```
+ *
+ * @category Scheduling
+ */
+declare function queueMicrotask(func: VoidFunction): void;
+
+/** Dispatches an event in the global scope, synchronously invoking any
+ * registered event listeners for this event in the appropriate order. Returns
+ * false if event is cancelable and at least one of the event handlers which
+ * handled this event called Event.preventDefault(). Otherwise it returns true.
+ *
+ * ```ts
+ * dispatchEvent(new Event('unload'));
+ * ```
+ *
+ * @category DOM Events
+ */
+declare function dispatchEvent(event: Event): boolean;
+
+/** @category DOM APIs */
+interface DOMStringList {
+ /** Returns the number of strings in strings. */
+ readonly length: number;
+ /** Returns true if strings contains string, and false otherwise. */
+ contains(string: string): boolean;
+ /** Returns the string with index index from strings. */
+ item(index: number): string | null;
+ [index: number]: string;
+}
+
+/** @category Typed Arrays */
+type BufferSource = ArrayBufferView | ArrayBuffer;
+
+/** @category Console and Debugging */
+declare var console: Console;
+
+/** @category DOM Events */
+interface ErrorEventInit extends EventInit {
+ message?: string;
+ filename?: string;
+ lineno?: number;
+ colno?: number;
+ error?: any;
+}
+
+/** @category DOM Events */
+declare class ErrorEvent extends Event {
+ readonly message: string;
+ readonly filename: string;
+ readonly lineno: number;
+ readonly colno: number;
+ readonly error: any;
+ constructor(type: string, eventInitDict?: ErrorEventInit);
+}
+
+/** @category Observability */
+interface PromiseRejectionEventInit extends EventInit {
+ promise: Promise<any>;
+ reason?: any;
+}
+
+/** @category Observability */
+declare class PromiseRejectionEvent extends Event {
+ readonly promise: Promise<any>;
+ readonly reason: any;
+ constructor(type: string, eventInitDict?: PromiseRejectionEventInit);
+}
+
+/** @category Web Workers */
+interface AbstractWorkerEventMap {
+ "error": ErrorEvent;
+}
+
+/** @category Web Workers */
+interface WorkerEventMap extends AbstractWorkerEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/** @category Web Workers */
+interface WorkerOptions {
+ type?: "classic" | "module";
+ name?: string;
+}
+
+/** @category Web Workers */
+declare class Worker extends EventTarget {
+ onerror?: (e: ErrorEvent) => void;
+ onmessage?: (e: MessageEvent) => void;
+ onmessageerror?: (e: MessageEvent) => void;
+ constructor(
+ specifier: string | URL,
+ options?: WorkerOptions,
+ );
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): 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;
+ terminate(): void;
+}
+
+/** @category Performance */
+declare type PerformanceEntryList = PerformanceEntry[];
+
+/** @category Performance */
+declare class Performance extends EventTarget {
+ /** Returns a timestamp representing the start of the performance measurement. */
+ readonly timeOrigin: number;
+ constructor();
+
+ /** Removes the stored timestamp with the associated name. */
+ clearMarks(markName?: string): void;
+
+ /** Removes stored timestamp with the associated name. */
+ clearMeasures(measureName?: string): void;
+
+ getEntries(): PerformanceEntryList;
+ getEntriesByName(name: string, type?: string): PerformanceEntryList;
+ getEntriesByType(type: string): PerformanceEntryList;
+
+ /** Stores a timestamp with the associated name (a "mark"). */
+ mark(markName: string, options?: PerformanceMarkOptions): PerformanceMark;
+
+ /** Stores the `DOMHighResTimeStamp` duration between two marks along with the
+ * associated name (a "measure"). */
+ measure(
+ measureName: string,
+ options?: PerformanceMeasureOptions,
+ ): PerformanceMeasure;
+ /** Stores the `DOMHighResTimeStamp` duration between two marks along with the
+ * associated name (a "measure"). */
+ measure(
+ measureName: string,
+ startMark?: string,
+ endMark?: string,
+ ): PerformanceMeasure;
+
+ /** Returns a current time from Deno's start in milliseconds.
+ *
+ * Use the permission flag `--allow-hrtime` return a precise value.
+ *
+ * ```ts
+ * const t = performance.now();
+ * console.log(`${t} ms since start!`);
+ * ```
+ *
+ * @tags allow-hrtime
+ */
+ now(): number;
+
+ /** Returns a JSON representation of the performance object. */
+ toJSON(): any;
+}
+
+/** @category Performance */
+declare var performance: Performance;
+
+/** @category Performance */
+declare interface PerformanceMarkOptions {
+ /** Metadata to be included in the mark. */
+ detail?: any;
+
+ /** Timestamp to be used as the mark time. */
+ startTime?: number;
+}
+
+declare interface PerformanceMeasureOptions {
+ /** Metadata to be included in the measure. */
+ detail?: any;
+
+ /** Timestamp to be used as the start time or string to be used as start
+ * mark. */
+ start?: string | number;
+
+ /** Duration between the start and end times. */
+ duration?: number;
+
+ /** Timestamp to be used as the end time or string to be used as end mark. */
+ end?: string | number;
+}
+
+/** Encapsulates a single performance metric that is part of the performance
+ * timeline. A performance entry can be directly created by making a performance
+ * mark or measure (for example by calling the `.mark()` method) at an explicit
+ * point in an application.
+ *
+ * @category Performance
+ */
+declare class PerformanceEntry {
+ readonly duration: number;
+ readonly entryType: string;
+ readonly name: string;
+ readonly startTime: number;
+ toJSON(): any;
+}
+
+/** `PerformanceMark` is an abstract interface for `PerformanceEntry` objects
+ * with an entryType of `"mark"`. Entries of this type are created by calling
+ * `performance.mark()` to add a named `DOMHighResTimeStamp` (the mark) to the
+ * performance timeline.
+ *
+ * @category Performance
+ */
+declare class PerformanceMark extends PerformanceEntry {
+ readonly detail: any;
+ readonly entryType: "mark";
+ constructor(name: string, options?: PerformanceMarkOptions);
+}
+
+/** `PerformanceMeasure` is an abstract interface for `PerformanceEntry` objects
+ * with an entryType of `"measure"`. Entries of this type are created by calling
+ * `performance.measure()` to add a named `DOMHighResTimeStamp` (the measure)
+ * between two marks to the performance timeline.
+ *
+ * @category Performance
+ */
+declare class PerformanceMeasure extends PerformanceEntry {
+ readonly detail: any;
+ readonly entryType: "measure";
+}
+
+/** @category DOM Events */
+declare interface CustomEventInit<T = any> extends EventInit {
+ detail?: T;
+}
+
+/** @category DOM Events */
+declare class CustomEvent<T = any> extends Event {
+ constructor(typeArg: string, eventInitDict?: CustomEventInit<T>);
+ /** Returns any custom data event was created with. Typically used for
+ * synthetic events. */
+ readonly detail: T;
+}
+
+/** @category DOM APIs */
+interface ErrorConstructor {
+ /** See https://v8.dev/docs/stack-trace-api#stack-trace-collection-for-custom-exceptions. */
+ captureStackTrace(error: Object, constructor?: Function): void;
+ // TODO(nayeemrmn): Support `Error.prepareStackTrace()`. We currently use this
+ // internally in a way that makes it unavailable for users.
+}