import type { EncBlob } from './token.vault'; export type SecretRecord = { id: string; blob: EncBlob; updatedAt: number; }; export interface TokenStore { /** Create or overwrite a blob under a stable id. */ put(id: string, blob: EncBlob): Promise; /** Fetch encrypted blob by id. */ get(id: string): Promise; /** Delete a reference. */ del(id: string): Promise; /** Allocate a new id (opaque). */ allocId(): string; } /** In-memory reference store (dev/test). */ export declare class MemoryTokenStore implements TokenStore { private m; allocId(): `${string}-${string}-${string}-${string}-${string}`; put(id: string, blob: EncBlob): Promise; get(id: string): Promise; del(id: string): Promise; } /** Redis (sketch) — replace `any` with your redis client type. */ export declare class RedisTokenStore implements TokenStore { private readonly redis; private readonly ns; constructor(redis: any, ns?: string); allocId(): `${string}-${string}-${string}-${string}-${string}`; key(id: string): string; put(id: string, blob: EncBlob): Promise; get(id: string): Promise; del(id: string): Promise; }