Merge pull request #31534 from oriSomething/url-search-params

[url-search-params] - Fixing definitions / add missing defs. Aligned with lib.DOM
This commit is contained in:
Wesley Wigham
2018-12-24 21:45:27 -08:00
committed by GitHub
2 changed files with 36 additions and 21 deletions
+16 -7
View File
@@ -1,20 +1,29 @@
// Type definitions for url-search-params 0.10
// Type definitions for url-search-params 1.1
// Project: https://github.com/WebReflection/url-search-params
// Definitions by: Nick <https://github.com/nick121212>
// Neha <https://github.com/nrathi>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.1
/**
* Based on definitions of lib.dom and lib.dom.iteralbe
*/
declare class URLSearchParams {
constructor(init?: string | URLSearchParams | any);
append(name: string, value: any): void;
constructor(init?: string[][] | Record<string, string> | string | URLSearchParams);
append(name: string, value: string): void;
delete(name: string): void;
entries(): Iterator<string>;
get(name: string): string | null;
getAll(name: string): string[];
has(name: string): boolean;
keys(): Iterator<string>;
set(name: string, value: any): void;
values(): Iterator<string>;
set(name: string, value: string): void;
sort(): void;
forEach(callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any): void;
[Symbol.iterator](): IterableIterator<[string, string]>;
entries(): IterableIterator<[string, string]>;
keys(): IterableIterator<string>;
values(): IterableIterator<string>;
}
export = URLSearchParams;
@@ -1,27 +1,33 @@
import URLSearchParams = require("url-search-params");
const params = new URLSearchParams('a=1&b=2');
new URLSearchParams([["1", "2"]]);
new URLSearchParams({ x: "y" });
new URLSearchParams();
new URLSearchParams(new URLSearchParams());
params.append("b", 3);
const params = new URLSearchParams("a=1&b=2");
params.append("b", "3");
params.delete("a");
params.delete("c");
params.entries();
params.get("b");
params.get("d");
params.getAll("b");
params.has("b");
params.keys();
params.set("b", 4);
params.set("c", 5);
params.set("b", "4");
params.set("c", "5");
params.toString();
params.values();
params.forEach((value, key, params) => {
const test: [string, string, URLSearchParams] = [value, key, params];
});
for (const [key, value] of params) {
const test: [string, string] = [key, value];
}
for (const [key, value] of params.entries()) {
const test: [string, string] = [key, value];
}