import type { CacheStats, TokenCache, TokenCacheEntry } from "./types.js"; export type TokenCacheOperations = Readonly<{ [Key in keyof TokenCache]: TokenCache[Key]; }>; export declare function assertCacheOptionsObject(value: unknown, label: string, allowedKeys: readonly string[]): asserts value is Record; /** * Enforce synchronous registry mutation across cache startup seams. TypeScript * permits async functions where a void-returning callback is expected, so the * runtime must reject and observe returned thenables explicitly. */ export declare function requireSynchronousCacheRegistryOperation(result: unknown, label: string): void; export declare function snapshotTokenCacheOperations(value: unknown, label?: string): TokenCacheOperations; /** * Capture cleanup ownership before validating the rest of an extension * contract. The bound data-function snapshot cannot be replaced by a later * property mutation or accessor. */ export declare function snapshotTokenCacheClose(value: unknown, label?: string): TokenCache["close"]; /** * Snapshot a cache and place its owned close operation behind one immutable * attempt. Independent aggregate and direct owners can then share teardown * without assuming the backend's raw close operation is idempotent. */ export declare function snapshotOwnedTokenCacheOperations(value: unknown, label?: string): TokenCacheOperations; export declare function requireTokenCacheKey(value: unknown): string; export declare function snapshotTokenCacheEntry(value: unknown): TokenCacheEntry; export declare function snapshotTokenCacheStats(value: unknown): CacheStats; //# sourceMappingURL=validation.d.ts.map