import { DiscordAccount, PersistedAccount } from "../types/account.js";
/**
 * Manages Discord account credentials with fallback storage options
 * Tries keytar first, falls back to encrypted file storage
 */
export declare class CredentialManager {
    private readonly SERVICE_NAME;
    private readonly CONFIG_DIR;
    private readonly CONFIG_FILE;
    private readonly ENCRYPTION_KEY_FILE;
    private keytar;
    private isKeytarAvailable;
    private initPromise;
    private encryptionKey;
    constructor();
    private initialize;
    private initializeEncryptionKey;
    private encrypt;
    private decrypt;
    waitForInitialization(): Promise<void>;
    saveAccount(account: DiscordAccount): Promise<void>;
    loadAllAccounts(): Promise<PersistedAccount[]>;
    private loadAllAccountsFromFile;
    getAccount(accountId: string): Promise<PersistedAccount | null>;
    updateAccount(account: DiscordAccount): Promise<void>;
    deleteAccount(accountId: string): Promise<void>;
}
//# sourceMappingURL=credential-manager.d.ts.map