forked from DonJayamanne/pythonVSCode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathset.d.ts
More file actions
29 lines (29 loc) · 1006 Bytes
/
set.d.ts
File metadata and controls
29 lines (29 loc) · 1006 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
export declare class Set<T> {
private getIdentifier;
private _items;
constructor(getIdentifier: (item: T) => string, ...items: T[]);
get size(): number;
add(...items: T[]): void;
remove(item: T): void;
pop(): T;
has(item: T): boolean;
get items(): T[];
equals(that: Set<T>): boolean;
get empty(): boolean;
union(...those: Set<T>[]): Set<T>;
intersect(that: Set<T>): Set<T>;
filter(predicate: (item: T) => boolean): Set<T>;
map<U>(getIdentifier: (item: U) => string, transform: (item: T) => U): Set<U>;
mapSame(transform: (item: T) => T): Set<T>;
some(predicate: (item: T) => boolean): boolean;
minus(that: Set<T>): Set<T>;
take(): T;
product(that: Set<T>): Set<[T, T]>;
}
export declare class StringSet extends Set<string> {
constructor(...items: string[]);
}
export declare class NumberSet extends Set<number> {
constructor(...items: number[]);
}
export declare function range(min: number, max: number): Set<number>;