import { ArkmeWindowsCredentialManagerBackend } from './windows-credential-helper.js'; export interface ArkmeSessionCredentials { accessToken: string; refreshToken: string; userId: number; } export interface ArkmeSessionStore { read(): Promise; write(session: ArkmeSessionCredentials): Promise; delete(): Promise; } export declare class ArkmeKeychainStore implements ArkmeSessionStore { private readonly service; private readonly account; private cached; private loaded; private persistence; constructor(service: string); read(): Promise; write(session: ArkmeSessionCredentials): Promise; delete(): Promise; private requireMacOS; } export interface ArkmeWindowsCredentialBackend { read(service: string, account: string): Promise; write(service: string, account: string, payload: string): Promise; delete(service: string, account: string): Promise; } /** Generic account-scoped secret storage used by Host-only capabilities. */ export interface ArkmeSecureValueStore { read(account: string): Promise; write(account: string, payload: string): Promise; delete(account: string): Promise; } export type ArkmeMacOSSecureValueWriter = (args: readonly string[], payload: string) => Promise; export type ArkmeMacOSSecureValueReader = (account: string, service: string) => Promise; export type ArkmeMacOSSecureValueDeleter = (account: string, service: string) => Promise; export declare function writeArkmeMacOSSecureValue(args: readonly string[], payload: string): Promise; export declare function readArkmeMacOSSecureValue(account: string, service: string): Promise; export declare function deleteArkmeMacOSSecureValue(account: string, service: string): Promise; export declare class ArkmeMacOSSecureValueStore implements ArkmeSecureValueStore { private readonly service; private readonly writer; private readonly platform; private readonly reader; private readonly deleter; constructor(service: string, writer?: ArkmeMacOSSecureValueWriter, platform?: NodeJS.Platform, reader?: ArkmeMacOSSecureValueReader, deleter?: ArkmeMacOSSecureValueDeleter); read(account: string): Promise; write(account: string, payload: string): Promise; delete(account: string): Promise; private requireMacOS; } export declare class ArkmeWindowsSecureValueStore implements ArkmeSecureValueStore { private readonly service; private readonly backend; constructor(service: string, backend?: ArkmeWindowsCredentialBackend); read(account: string): Promise; write(account: string, payload: string): Promise; delete(account: string): Promise; } export declare function createArkmeSecureValueStore(service: string, options?: ArkmeSessionStoreFactoryOptions): ArkmeSecureValueStore; export declare class ArkmeWindowsCredentialVaultBackend extends ArkmeWindowsCredentialManagerBackend { } export declare class ArkmeWindowsCredentialStore implements ArkmeSessionStore { private readonly service; private readonly backend; private readonly account; private cached; private loaded; private persistence; constructor(service: string, backend?: ArkmeWindowsCredentialBackend); read(): Promise; write(session: ArkmeSessionCredentials): Promise; delete(): Promise; } export interface ArkmeSessionStoreFactoryOptions { platform?: NodeJS.Platform; windowsBackend?: ArkmeWindowsCredentialBackend; } export declare function createArkmeSessionStore(service: string, options?: ArkmeSessionStoreFactoryOptions): ArkmeSessionStore; //# sourceMappingURL=keychain-store.d.ts.map