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.
		
		
		
		
		
			
		
			
				
					
					
						
							55 lines
						
					
					
						
							1.3 KiB
						
					
					
				
			
		
		
	
	
							55 lines
						
					
					
						
							1.3 KiB
						
					
					
				| /**
 | |
|  * Mnemonist PassjoinIndex Typings
 | |
|  * ================================
 | |
|  */
 | |
| type LevenshteinDistanceFunction<T> = (a: T, b: T) => number;
 | |
| 
 | |
| export default class PassjoinIndex<T> implements Iterable<T> {
 | |
| 
 | |
|   // Members
 | |
|   size: number;
 | |
| 
 | |
|   // Constructor
 | |
|   constructor(levenshtein: LevenshteinDistanceFunction<T>, k: number);
 | |
| 
 | |
|   // Methods
 | |
|   add(value: T): this;
 | |
|   search(query: T): Set<T>;
 | |
|   clear(): void;
 | |
|   forEach(callback: (value: T, index: number, self: this) => void, scope?: any): void;
 | |
|   values(): IterableIterator<T>;
 | |
|   [Symbol.iterator](): IterableIterator<T>;
 | |
|   inspect(): any;
 | |
| 
 | |
|   // Statics
 | |
|   static from<I>(
 | |
|     iterable: Iterable<I> | {[key: string]: I},
 | |
|     levenshtein: LevenshteinDistanceFunction<I>,
 | |
|     k: number
 | |
|   ): PassjoinIndex<I>;
 | |
| }
 | |
| 
 | |
| export function countKeys(k: number, s: number): number;
 | |
| export function comparator<T>(a: T, b: T): number;
 | |
| export function partition(k: number, l: number): Array<[number, number]>;
 | |
| export function segments<T>(k: number, string: T): Array<T>;
 | |
| export function segmentPos<T>(k: number, i: number, string: T): number;
 | |
| 
 | |
| export function multiMatchAwareInterval(
 | |
|   k: number,
 | |
|   delta: number,
 | |
|   i: number,
 | |
|   s: number,
 | |
|   pi: number,
 | |
|   li: number
 | |
| ): [number, number];
 | |
| 
 | |
| export function multiMatchAwareSubstrings<T>(
 | |
|   k: number,
 | |
|   string: T,
 | |
|   l: number,
 | |
|   i: number,
 | |
|   pi: number,
 | |
|   li: number
 | |
| ): Array<T>;
 |