import { z } from 'zod'; declare const credentialSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; serverUrl: z.ZodString; deviceId: z.ZodString; authorizationMethod: z.ZodEnum<{ account: "account"; host_registration_code: "host_registration_code"; owned_device: "owned_device"; }>; account: z.ZodOptional; accessToken: z.ZodString; accessTokenExpiresAt: z.ZodNumber; refreshToken: z.ZodString; refreshTokenExpiresAt: z.ZodNumber; }, z.core.$strict>; export interface ServerCredentials extends z.infer { } export declare class ServerCredentialStore { private readonly path; constructor(directory: string); /** Serialize the complete read/refresh/write transaction across processes. * Never steal an old lock: a suspended owner may still consume a one-use token. * After a crash, stop all instances before removing the orphaned lock. */ withRefreshLock(operation: () => Promise): Promise; load(serverUrl: string, deviceId: string): Promise; save(credentials: Omit): Promise; clear(): Promise; } export declare class ServerCredentialsInvalidError extends Error { readonly code = "SERVER_CREDENTIALS_INVALID"; } export declare class ServerCredentialsBusyError extends Error { readonly code = "SERVER_CREDENTIALS_BUSY"; constructor(); } export {}; //# sourceMappingURL=server-credentials.d.ts.map