A controller object that allows you to abort one or more DOM requests as and when desired.
A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object.
Registers an event listener in the global scope, which will be called
synchronously whenever the event type
is dispatched.
Shows the given message and waits for the enter key pressed.
Decodes a string of data which has been encoded using base-64 encoding.
A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
Creates a base-64 ASCII encoded string from the input string.
Cancels a timed, repeating action which was previously started by a call
to setInterval()
Cancels a scheduled action initiated by setTimeout()
An API for compressing a stream of data.
Shows the given message and waits for the answer. Returns the user's answer as boolean.
This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.
The CryptoKeyPair dictionary of the Web Crypto API represents a key pair for an asymmetric cryptography algorithm, also known as a public-key algorithm.
An API for decompressing a stream of data.
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.
An event which takes place in the DOM.
EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
Fetch a resource from the network. It returns a Promise
that resolves to the
Response
to that Request
, whether it is successful or not.
Provides information about files and allows JavaScript in a web page to access their content.
Lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read.
A typed array of 16-bit float values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.
Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data".
This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs. You can add to this using methods like append() (see Examples). In all methods of this interface, header names are matched by case-insensitive byte sequence.
Deno provides extra properties on import.meta
. These are included here
to ensure that these are still available when using the Deno namespace in
conjunction with other type libs, like dom
.
The location (URL) of the object it is linked to. Changes done on it are
reflected on the object it relates to. Accessible via
globalThis.location
.
The MessageChannel interface of the Channel Messaging API allows us to create a new message channel and send data through it via its two MessagePort properties.
The MessagePort interface of the Channel Messaging API represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.
Deno supports User Timing Level 3 which is not widely supported yet in other runtimes.
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.
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.
Options which are used in conjunction with performance.mark
. Check out the
MDN
performance.mark()
documentation for more details.
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.
Options which are used in conjunction with performance.measure
. Check out the
MDN
performance.mark()
documentation for more details.
Events measuring progress of an underlying process, like an HTTP request (for an XMLHttpRequest, or the loading of the underlying resource of an , ,
Shows the given message and waits for the user's input. Returns the user's input as string.
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.
This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
Remove a previously registered event listener from the global scope
Dispatch an uncaught exception. Similar to a synchronous version of:
This Fetch API interface represents a resource request.
This Fetch API interface represents the response to a request.
Repeatedly calls a function , with a fixed time delay between each call.
Sets a timer which executes a function once after the delay (in milliseconds) elapses. Returns an id which may be used to cancel the timeout.
This Web Storage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items.
Creates a deep copy of a given value using the structured clone algorithm.
This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto).
Options for arithmetic operations like add()
and subtract()
Options for assigning fields using with()
or entire objects with
from()
.
A Temporal.Calendar
is a representation of a calendar system. It includes
information about how many days are in each year, how many months are in
each year, how many days are in each month, and how to do arithmetic in
that calendar system.
Any of these types can be passed to Temporal methods instead of a Temporal.Calendar.
Options to control the result of until()
and since()
methods in
Temporal
types.
A Temporal.Duration
represents an immutable duration of time which can be
used in date/time arithmetic.
Options to control behavior of Duration.compare()
, Duration.add()
, and
Duration.subtract()
Options for assigning fields using Duration.prototype.with()
or entire
objects with Duration.from()
, and for arithmetic with
Duration.prototype.add()
and Duration.prototype.subtract()
.
The round
method of the Temporal.Duration
accepts one required
parameter. If a string is provided, the resulting Temporal.Duration
object will be rounded to that unit. If an object is provided, the
smallestUnit
and/or largestUnit
property is required, while other
properties are optional. A string parameter is treated the same as an
object whose smallestUnit
property value is that string.
Options to control behavior of Duration.prototype.total()
A Temporal.Instant
is an exact point in time, with a precision in
nanoseconds. No time zone or calendar information is present. Therefore,
Temporal.Instant
has no concept of days, months, or even hours.
The Temporal.Now
object has several methods which give information about
the current date, time, and time zone.
A Temporal.PlainDate
represents a calendar date. "Calendar date" refers to the
concept of a date as expressed in everyday usage, independent of any time
zone. For example, it could be used to represent an event on a calendar
which happens during the whole day no matter which time zone it's happening
in.
A Temporal.PlainDateTime
represents a calendar date and wall-clock time, with
a precision in nanoseconds, and without any time zone. Of the Temporal
classes carrying human-readable time information, it is the most general
and complete one. Temporal.PlainDate
, Temporal.PlainTime
, Temporal.PlainYearMonth
,
and Temporal.PlainMonthDay
all carry less information and should be used when
complete information is not required.
A Temporal.PlainMonthDay
represents a particular day on the calendar, but
without a year. For example, it could be used to represent a yearly
recurring event, like "Bastille Day is on the 14th of July."
A Temporal.PlainTime
represents a wall-clock time, with a precision in
nanoseconds, and without any time zone. "Wall-clock time" refers to the
concept of a time as expressed in everyday usage — the time that you read
off the clock on the wall. For example, it could be used to represent an
event that happens daily at a certain time, no matter what time zone.
A Temporal.PlainYearMonth
represents a particular month on the calendar. For
example, it could be used to represent a particular instance of a monthly
recurring event, like "the June 2019 meeting".
When the name of a unit is provided to a Temporal API as a string, it is usually singular, e.g. 'day' or 'hour'. But plural unit names like 'days' or 'hours' are aso accepted too.
round
methods take one required parameter. If a string is provided, the
resulting Temporal.Duration
object will be rounded to that unit. If an
object is provided, its smallestUnit
property is required while other
properties are optional. A string is treated the same as an object whose
smallestUnit
property value is that string.
A Temporal.TimeZone
is a representation of a time zone: either an
IANA time zone, including
information about the time zone such as the offset between the local time
and UTC at a particular time, and daylight saving time (DST) changes; or
simply a particular UTC offset with no DST.
Any of these types can be passed to Temporal methods instead of a Temporal.TimeZone.
A plain object implementing the protocol for a custom time zone.
Options for conversions of Temporal.PlainDateTime
to Temporal.Instant
Options for outputting precision in toString() on types with seconds
The URL interface represents an object providing static methods used for creating object URLs.
The URLPattern API provides a web platform primitive for matching URLs based on a convenient pattern syntax.
URLPatternResult
is the object returned from URLPattern.exec
.
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).
The WebAssembly.CompileError
object indicates an error during WebAssembly decoding or validation.
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).
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.
The GlobalDescriptor
describes the options you can pass to
new WebAssembly.Global()
.
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.
The WebAssembly.instantiate() function allows you to compile and instantiate WebAssembly code.
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.
The WebAssembly.LinkError
object indicates an error during module instantiation
(besides traps from the start function).
The WebAssembly.Memory
object is a resizable ArrayBuffer
or SharedArrayBuffer
that
holds the raw bytes of memory accessed by a WebAssembly Instance.
The MemoryDescriptor
describes the options you can pass to
new WebAssembly.Memory()
.
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.
A ModuleExportDescriptor
is the description of a declared export in a
WebAssembly.Module
.
A ModuleImportDescriptor
is the description of a declared import in a
WebAssembly.Module
.
The WebAssembly.RuntimeError
object is the error type that is thrown whenever WebAssembly
specifies a trap.
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.
The TableDescriptor
describes the options you can pass to
new WebAssembly.Table()
.
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
).
The value returned from WebAssembly.instantiate
.
Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection.
This Streams API interface provides a standard abstraction for writing streaming data to a destination, known as a sink. This object comes with built-in backpressure and queuing.
This Streams API interface represents a controller allowing control of a WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate.
This Streams API interface is the object returned by WritableStream.getWriter() and once created locks the < writer to the WritableStream ensuring that no other streams can write to the underlying sink.