UNPKG

indexable-map

Version:

Built-in JavaScript Map with secondary indexes

23 lines (22 loc) 684 B
export declare class IndexableMap<K, V, I extends string> extends Map<K, V> { private _indexes; private _indexFields; private _indexFilters; private _indexesEnabled; constructor(entries?: readonly (readonly [K, V])[], { indexes, indexesEnabled, }?: { indexes?: { field: keyof V; filter: (val: V) => boolean; name: I; }[]; indexesEnabled?: boolean; }); getByIndex<K extends keyof V>(name: I, value: V[K]): V[]; refreshIndexes(): this; enableIndexes(): this; disableIndexes(): this; vacuum(): void; set(key: K, value: V): this; delete(key: K): boolean; clear(): void; }