summaryrefslogtreecommitdiff
path: root/ext/fetch
diff options
context:
space:
mode:
Diffstat (limited to 'ext/fetch')
-rw-r--r--ext/fetch/lib.deno_fetch.d.ts183
1 files changed, 59 insertions, 124 deletions
diff --git a/ext/fetch/lib.deno_fetch.d.ts b/ext/fetch/lib.deno_fetch.d.ts
index 5031cc431..7f574b76e 100644
--- a/ext/fetch/lib.deno_fetch.d.ts
+++ b/ext/fetch/lib.deno_fetch.d.ts
@@ -6,7 +6,7 @@
/// <reference lib="esnext" />
/** @category DOM APIs */
-interface DomIterable<K, V> {
+declare interface DomIterable<K, V> {
keys(): IterableIterator<K>;
values(): IterableIterator<V>;
entries(): IterableIterator<[K, V]>;
@@ -18,7 +18,7 @@ interface DomIterable<K, V> {
}
/** @category Fetch API */
-type FormDataEntryValue = File | string;
+declare type FormDataEntryValue = File | string;
/** 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
@@ -27,31 +27,23 @@ type FormDataEntryValue = File | string;
*
* @category Fetch API
*/
-interface FormData {
+declare interface FormData extends DomIterable<string, FormDataEntryValue> {
append(name: string, value: string | Blob, fileName?: string): void;
delete(name: string): void;
get(name: string): FormDataEntryValue | null;
getAll(name: string): FormDataEntryValue[];
has(name: string): boolean;
set(name: string, value: string | Blob, fileName?: string): void;
- keys(): IterableIterator<string>;
- values(): IterableIterator<string>;
- entries(): IterableIterator<[string, FormDataEntryValue]>;
- [Symbol.iterator](): IterableIterator<[string, FormDataEntryValue]>;
- forEach(
- callback: (value: FormDataEntryValue, key: string, parent: this) => void,
- thisArg?: any,
- ): void;
}
/** @category Fetch API */
declare var FormData: {
- prototype: FormData;
+ readonly prototype: FormData;
new (): FormData;
};
/** @category Fetch API */
-interface Body {
+declare interface Body {
/** A simple getter used to expose a `ReadableStream` of the body contents. */
readonly body: ReadableStream<Uint8Array> | null;
/** Stores a `Boolean` that declares whether the body has been used in a
@@ -81,7 +73,7 @@ interface Body {
}
/** @category Fetch API */
-type HeadersInit = Headers | string[][] | Record<string, string>;
+declare type HeadersInit = Iterable<string[]> | Record<string, string>;
/** This Fetch API interface allows you to perform various actions on HTTP
* request and response headers. These actions include retrieving, setting,
@@ -93,33 +85,13 @@ type HeadersInit = Headers | string[][] | Record<string, string>;
*
* @category Fetch API
*/
-interface Headers {
- append(name: string, value: string): void;
- delete(name: string): void;
- get(name: string): string | null;
- has(name: string): boolean;
- set(name: string, value: string): void;
- forEach(
- callbackfn: (value: string, key: string, parent: Headers) => void,
- thisArg?: any,
- ): void;
-}
-
-/** @category Fetch API */
-declare class Headers implements DomIterable<string, string> {
- constructor(init?: HeadersInit);
-
+declare interface Headers extends DomIterable<string, string> {
/** Appends a new value onto an existing header inside a `Headers` object, or
* adds the header if it does not already exist.
*/
append(name: string, value: string): void;
/** Deletes a header from a `Headers` object. */
delete(name: string): void;
- /** Returns an iterator allowing to go through all key/value pairs
- * contained in this Headers object. The both the key and value of each pairs
- * are ByteString objects.
- */
- entries(): IterableIterator<[string, string]>;
/** Returns a `ByteString` sequence of all the values of a header within a
* `Headers` object with a given name.
*/
@@ -128,32 +100,35 @@ declare class Headers implements DomIterable<string, string> {
* header.
*/
has(name: string): boolean;
- /** Returns an iterator allowing to go through all keys contained in
- * this Headers object. The keys are ByteString objects.
- */
- keys(): IterableIterator<string>;
/** Sets a new value for an existing header inside a Headers object, or adds
* the header if it does not already exist.
*/
set(name: string, value: string): void;
- /** Returns an iterator allowing to go through all values contained in
- * this Headers object. The values are ByteString objects.
- */
- values(): IterableIterator<string>;
- forEach(
- callbackfn: (value: string, key: string, parent: this) => void,
- thisArg?: any,
- ): void;
- /** The Symbol.iterator well-known symbol specifies the default
- * iterator for this Headers object
+ /** Returns an array containing the values of all `Set-Cookie` headers
+ * associated with a response.
*/
- [Symbol.iterator](): IterableIterator<[string, string]>;
+ getSetCookie(): string[];
}
+/** 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.
+ *
+ * @category Fetch API
+ */
+declare var Headers: {
+ readonly prototype: Headers;
+ new (init?: HeadersInit): Headers;
+};
+
/** @category Fetch API */
-type RequestInfo = Request | string;
+declare type RequestInfo = Request | string;
/** @category Fetch API */
-type RequestCache =
+declare type RequestCache =
| "default"
| "force-cache"
| "no-cache"
@@ -161,13 +136,13 @@ type RequestCache =
| "only-if-cached"
| "reload";
/** @category Fetch API */
-type RequestCredentials = "include" | "omit" | "same-origin";
+declare type RequestCredentials = "include" | "omit" | "same-origin";
/** @category Fetch API */
-type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
+declare type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
/** @category Fetch API */
-type RequestRedirect = "error" | "follow" | "manual";
+declare type RequestRedirect = "error" | "follow" | "manual";
/** @category Fetch API */
-type ReferrerPolicy =
+declare type ReferrerPolicy =
| ""
| "no-referrer"
| "no-referrer-when-downgrade"
@@ -178,7 +153,7 @@ type ReferrerPolicy =
| "strict-origin-when-cross-origin"
| "unsafe-url";
/** @category Fetch API */
-type BodyInit =
+declare type BodyInit =
| Blob
| BufferSource
| FormData
@@ -186,7 +161,7 @@ type BodyInit =
| ReadableStream<Uint8Array>
| string;
/** @category Fetch API */
-type RequestDestination =
+declare type RequestDestination =
| ""
| "audio"
| "audioworklet"
@@ -207,7 +182,7 @@ type RequestDestination =
| "xslt";
/** @category Fetch API */
-interface RequestInit {
+declare interface RequestInit {
/**
* A BodyInit object or null to set request's body.
*/
@@ -275,9 +250,7 @@ interface RequestInit {
*
* @category Fetch API
*/
-declare class Request implements Body {
- constructor(input: RequestInfo | URL, init?: RequestInit);
-
+declare interface Request extends Body {
/**
* Returns the cache mode associated with request, which is a string
* indicating how the request will interact with the browser's cache when
@@ -361,44 +334,26 @@ declare class Request implements Body {
*/
readonly url: string;
clone(): Request;
-
- /** A simple getter used to expose a `ReadableStream` of the body contents. */
- readonly body: ReadableStream<Uint8Array> | null;
- /** Stores a `Boolean` that declares whether the body has been used in a
- * request yet.
- */
- readonly bodyUsed: boolean;
- /** Takes a `Request` stream and reads it to completion. It returns a promise
- * that resolves with an `ArrayBuffer`.
- */
- arrayBuffer(): Promise<ArrayBuffer>;
- /** Takes a `Request` stream and reads it to completion. It returns a promise
- * that resolves with a `Blob`.
- */
- blob(): Promise<Blob>;
- /** Takes a `Request` stream and reads it to completion. It returns a promise
- * that resolves with a `FormData` object.
- */
- formData(): Promise<FormData>;
- /** Takes a `Request` stream and reads it to completion. It returns a promise
- * that resolves with the result of parsing the body text as JSON.
- */
- json(): Promise<any>;
- /** Takes a `Request` stream and reads it to completion. It returns a promise
- * that resolves with a `USVString` (text).
- */
- text(): Promise<string>;
}
+/** This Fetch API interface represents a resource request.
+ *
+ * @category Fetch API
+ */
+declare var Request: {
+ readonly prototype: Request;
+ new (input: RequestInfo | URL, init?: RequestInit): Request;
+};
+
/** @category Fetch API */
-interface ResponseInit {
+declare interface ResponseInit {
headers?: HeadersInit;
status?: number;
statusText?: string;
}
/** @category Fetch API */
-type ResponseType =
+declare type ResponseType =
| "basic"
| "cors"
| "default"
@@ -410,12 +365,7 @@ type ResponseType =
*
* @category Fetch API
*/
-declare class Response implements Body {
- constructor(body?: BodyInit | null, init?: ResponseInit);
- static json(data: unknown, init?: ResponseInit): Response;
- static error(): Response;
- static redirect(url: string | URL, status?: number): Response;
-
+declare interface Response extends Body {
readonly headers: Headers;
readonly ok: boolean;
readonly redirected: boolean;
@@ -424,35 +374,20 @@ declare class Response implements Body {
readonly type: ResponseType;
readonly url: string;
clone(): Response;
-
- /** A simple getter used to expose a `ReadableStream` of the body contents. */
- readonly body: ReadableStream<Uint8Array> | null;
- /** Stores a `Boolean` that declares whether the body has been used in a
- * response yet.
- */
- readonly bodyUsed: boolean;
- /** Takes a `Response` stream and reads it to completion. It returns a promise
- * that resolves with an `ArrayBuffer`.
- */
- arrayBuffer(): Promise<ArrayBuffer>;
- /** Takes a `Response` stream and reads it to completion. It returns a promise
- * that resolves with a `Blob`.
- */
- blob(): Promise<Blob>;
- /** Takes a `Response` stream and reads it to completion. It returns a promise
- * that resolves with a `FormData` object.
- */
- formData(): Promise<FormData>;
- /** Takes a `Response` stream and reads it to completion. It returns a promise
- * that resolves with the result of parsing the body text as JSON.
- */
- json(): Promise<any>;
- /** Takes a `Response` stream and reads it to completion. It returns a promise
- * that resolves with a `USVString` (text).
- */
- text(): Promise<string>;
}
+/** This Fetch API interface represents the response to a request.
+ *
+ * @category Fetch API
+ */
+declare var Response: {
+ readonly prototype: Response;
+ new (body?: BodyInit | null, init?: ResponseInit): Response;
+ json(data: unknown, init?: ResponseInit): Response;
+ error(): Response;
+ redirect(url: string | URL, status?: number): Response;
+};
+
/** Fetch a resource from the network. It returns a `Promise` that resolves to the
* `Response` to that `Request`, whether it is successful or not.
*