import type { StoredConnectionSecret } from "@polpo-ai/connect"; export interface ConnectionSecretStore { setSecret(ref: string, secret: StoredConnectionSecret): Promise; getSecret(ref: string): Promise; deleteSecret(ref: string): Promise; } export interface VersionedConnectionSecret { secret: StoredConnectionSecret; version: string; } export interface VersionedConnectionSecretStore extends ConnectionSecretStore { getVersioned(ref: string): Promise; compareAndSet(ref: string, version: string, secret: StoredConnectionSecret): Promise; } export interface TokenRefreshCoordinator { runExclusive(connectionId: string, fn: () => Promise): Promise; } export declare class MemoryConnectionSecretStore implements ConnectionSecretStore { private readonly records; private readonly versions; setSecret(ref: string, secret: StoredConnectionSecret): Promise; getSecret(ref: string): Promise; deleteSecret(ref: string): Promise; getVersioned(ref: string): Promise; compareAndSet(ref: string, version: string, secret: StoredConnectionSecret): Promise; } export declare class MemoryTokenRefreshCoordinator implements TokenRefreshCoordinator { private readonly tails; runExclusive(connectionId: string, fn: () => Promise): Promise; } export declare function isVersionedConnectionSecretStore(store: ConnectionSecretStore): store is VersionedConnectionSecretStore; //# sourceMappingURL=secrets.d.ts.map