zephyr-agent
Version:
Zephyr plugin agent
33 lines • 1.38 kB
TypeScript
interface SetItemOptions {
ttl?: number;
}
interface PersistentStoreHooks {
beforeExpiredCleanup?: (key: string) => void | Promise<void>;
}
export declare function createPersistentStore(directory: string, hooks?: PersistentStoreHooks): {
ready: Promise<undefined>;
getItem: <T = unknown>(key: string) => Promise<T | undefined>;
setItem: (key: string, value: unknown, options?: SetItemOptions) => Promise<{
file: string;
}>;
removeItem: (key: string) => Promise<void>;
keys: () => Promise<string[]>;
forEachItem: (callback: (entry: {
key: string;
value: unknown;
}) => void | Promise<void>) => Promise<void>;
};
export declare const getItem: <T = unknown>(key: string) => Promise<T | undefined>;
export declare const setItem: (key: string, value: unknown, options?: SetItemOptions) => Promise<{
file: string;
}>;
export declare const removeItem: (key: string) => Promise<void>;
export declare const keys: () => Promise<string[]>;
export declare const forEachItem: (callback: (entry: {
key: string;
value: unknown;
}) => void | Promise<void>) => Promise<void>;
/** Persist a credential-bearing value and fail if its resulting file is not private. */
export declare function setPrivateItem(key: string, value: unknown, options?: SetItemOptions): Promise<void>;
export {};
//# sourceMappingURL=storage.d.ts.map