@synet/patterns
Version:
Robust, battle-tested collection of stable patterns used in Synet packages
22 lines (21 loc) • 700 B
TypeScript
import type { IIndexer } from "@synet/patterns/storage/promises";
interface IndexEntry {
id: string;
alias: string;
}
export declare class FileIndexer implements IIndexer<IndexEntry> {
private readonly directory;
private readonly indexPath;
private indexCache;
constructor(directory: string);
exists(): Promise<boolean>;
create(entry: IndexEntry): Promise<void>;
get(idOrAlias: string): Promise<IndexEntry | null>;
find(keyword: string): Promise<IndexEntry | null>;
delete(idOrAlias: string): Promise<boolean>;
list(): Promise<IndexEntry[]>;
rebuild(entries: IndexEntry[]): Promise<void>;
private loadIndex;
private saveIndex;
}
export {};