You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					47 lines
				
				1.3 KiB
			
		
		
			
		
	
	
					47 lines
				
				1.3 KiB
			| 
											3 years ago
										 | /** | ||
|  |  * Mnemonist MultiMap Typings | ||
|  |  * =========================== | ||
|  |  */ | ||
|  | 
 | ||
|  | interface MultiMap<K, V, C extends V[] | Set<V> = V[]> extends Iterable<[K, V]> { | ||
|  | 
 | ||
|  |   // Members
 | ||
|  |   dimension: number; | ||
|  |   size: number; | ||
|  | 
 | ||
|  |   // Methods
 | ||
|  |   clear(): void; | ||
|  |   set(key: K, value: V): this; | ||
|  |   delete(key: K): boolean; | ||
|  |   remove(key: K, value: V): boolean; | ||
|  |   has(key: K): boolean; | ||
|  |   get(key: K): C | undefined; | ||
|  |   multiplicity(key: K): number; | ||
|  |   forEach(callback: (value: V, key: K, map: this) => void, scope?: any): void; | ||
|  |   forEachAssociation(callback: (value: C, key: K, map: this) => void, scope?: any): void; | ||
|  |   keys(): IterableIterator<K>; | ||
|  |   values(): IterableIterator<V>; | ||
|  |   entries(): IterableIterator<[K, V]>; | ||
|  |   containers(): IterableIterator<C>; | ||
|  |   associations(): IterableIterator<[K, C]>; | ||
|  |   [Symbol.iterator](): IterableIterator<[K, V]>; | ||
|  |   inspect(): any; | ||
|  |   toJSON(): any; | ||
|  | } | ||
|  | 
 | ||
|  | interface MultiMapConstructor { | ||
|  |   new <K, V>(container: SetConstructor): MultiMap<K, V, Set<V>>; | ||
|  |   new <K, V>(container?: ArrayConstructor): MultiMap<K, V, V[]>; | ||
|  | 
 | ||
|  |   from<K, V>( | ||
|  |     iterable: Iterable<[K, V]> | {[key: string]: V}, | ||
|  |     Container: SetConstructor | ||
|  |   ): MultiMap<K, V, Set<V>>; | ||
|  |   from<K, V>( | ||
|  |     iterable: Iterable<[K, V]> | {[key: string]: V}, | ||
|  |     Container?: ArrayConstructor | ||
|  |   ): MultiMap<K, V, V[]>; | ||
|  | } | ||
|  | 
 | ||
|  | declare const MultiMap: MultiMapConstructor; | ||
|  | export default MultiMap; |