import type { TeamsAccount, TeamsAccountType, TeamsAuthMethod, TeamsConfig, TeamsRegion } from './types.js'; export declare class TeamsCredentialManager { static accountOverride?: TeamsAccountType; private configDir; private credentialsPath; constructor(configDir?: string); loadConfig(): Promise; saveConfig(config: TeamsConfig): Promise; private migrateIfNeeded; private resolveAccountKey; getCurrentAccount(): Promise; private resolveCurrentAccount; getToken(): Promise; getTokenWithExpiry(): Promise<{ token: string; tokenExpiresAt?: string; accountType?: TeamsAccountType; region?: TeamsRegion; } | null>; setToken(token: string, accountType: TeamsAccountType, expiresAt?: string): Promise; setDeviceCodeAccount(params: { accountType: TeamsAccountType; token: string; tokenExpiresAt: string; aadRefreshToken?: string; aadClientId?: string; aadTenantId?: string; region?: TeamsRegion; userName?: string; teams: Record; currentTeam: string | null; authMethod?: TeamsAuthMethod; makeCurrent?: boolean; }): Promise; getAadRefresh(accountType: TeamsAccountType): Promise<{ refreshToken: string; clientId?: string; } | null>; updateAadRefreshToken(accountType: TeamsAccountType, refreshToken: string, clientId?: string): Promise; getCurrentTeam(): Promise<{ team_id: string; team_name: string; } | null>; setCurrentTeam(teamId: string, teamName: string): Promise; getCurrentAccountType(): Promise; setCurrentAccount(accountType: TeamsAccountType): Promise; getAccounts(): Promise>; clearCredentials(): Promise; isTokenExpired(): Promise; isAccountTokenExpired(accountType: TeamsAccountType): Promise; } //# sourceMappingURL=credential-manager.d.ts.map