export type Cache = { [id: string]: T; }; export declare const cached: (cache: Cache, getThing: () => T) => () => T; export type Lookup = { [id: string]: string; }; export type MappingWithLookup = { [id: string]: T | string | Lookup; }; export declare const getLookup: (mapping: MappingWithLookup, getLookupKey?: (value: T) => string) => Lookup; export declare const waitFor: (milliseconds: number, value?: T) => Promise; export interface BinarySearchOptions { getLength?: (list: L) => number; getItemAtIndex?: (list: L, index: number) => T | undefined; getNewRange?: (list: L, item: T, start: number, end: number) => [number, number]; } export declare const binarySearch: (list: L, item: T, options?: BinarySearchOptions) => number; //# sourceMappingURL=general.d.ts.map