Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / protobufjs / node_modules / @types / node / url.d.ts
1 declare module "url" {
2     import { ParsedUrlQuery, ParsedUrlQueryInput } from 'querystring';
3
4     // Input to `url.format`
5     interface UrlObject {
6         auth?: string | null;
7         hash?: string | null;
8         host?: string | null;
9         hostname?: string | null;
10         href?: string | null;
11         pathname?: string | null;
12         protocol?: string | null;
13         search?: string | null;
14         slashes?: boolean | null;
15         port?: string | number | null;
16         query?: string | null | ParsedUrlQueryInput;
17     }
18
19     // Output of `url.parse`
20     interface Url {
21         auth: string | null;
22         hash: string | null;
23         host: string | null;
24         hostname: string | null;
25         href: string;
26         path: string | null;
27         pathname: string | null;
28         protocol: string | null;
29         search: string | null;
30         slashes: boolean | null;
31         port: string | null;
32         query: string | null | ParsedUrlQuery;
33     }
34
35     interface UrlWithParsedQuery extends Url {
36         query: ParsedUrlQuery;
37     }
38
39     interface UrlWithStringQuery extends Url {
40         query: string | null;
41     }
42
43     function parse(urlStr: string): UrlWithStringQuery;
44     function parse(urlStr: string, parseQueryString: false | undefined, slashesDenoteHost?: boolean): UrlWithStringQuery;
45     function parse(urlStr: string, parseQueryString: true, slashesDenoteHost?: boolean): UrlWithParsedQuery;
46     function parse(urlStr: string, parseQueryString: boolean, slashesDenoteHost?: boolean): Url;
47
48     function format(URL: URL, options?: URLFormatOptions): string;
49     function format(urlObject: UrlObject | string): string;
50     function resolve(from: string, to: string): string;
51
52     function domainToASCII(domain: string): string;
53     function domainToUnicode(domain: string): string;
54
55     /**
56      * This function ensures the correct decodings of percent-encoded characters as
57      * well as ensuring a cross-platform valid absolute path string.
58      * @param url The file URL string or URL object to convert to a path.
59      */
60     function fileURLToPath(url: string | URL): string;
61
62     /**
63      * This function ensures that path is resolved absolutely, and that the URL
64      * control characters are correctly encoded when converting into a File URL.
65      * @param url The path to convert to a File URL.
66      */
67     function pathToFileURL(url: string): URL;
68
69     interface URLFormatOptions {
70         auth?: boolean;
71         fragment?: boolean;
72         search?: boolean;
73         unicode?: boolean;
74     }
75
76     class URL {
77         constructor(input: string, base?: string | URL);
78         hash: string;
79         host: string;
80         hostname: string;
81         href: string;
82         readonly origin: string;
83         password: string;
84         pathname: string;
85         port: string;
86         protocol: string;
87         search: string;
88         readonly searchParams: URLSearchParams;
89         username: string;
90         toString(): string;
91         toJSON(): string;
92     }
93
94     class URLSearchParams implements Iterable<[string, string]> {
95         constructor(init?: URLSearchParams | string | NodeJS.Dict<string | ReadonlyArray<string>> | Iterable<[string, string]> | ReadonlyArray<[string, string]>);
96         append(name: string, value: string): void;
97         delete(name: string): void;
98         entries(): IterableIterator<[string, string]>;
99         forEach(callback: (value: string, name: string, searchParams: this) => void): void;
100         get(name: string): string | null;
101         getAll(name: string): string[];
102         has(name: string): boolean;
103         keys(): IterableIterator<string>;
104         set(name: string, value: string): void;
105         sort(): void;
106         toString(): string;
107         values(): IterableIterator<string>;
108         [Symbol.iterator](): IterableIterator<[string, string]>;
109     }
110 }