import type { AgentConfig } from '../../shared/agent-config.js'; import type { ClaudeCodeAccountState, ProviderAccountId, ProviderAccountsResponse } from '../../shared/provider-accounts.js'; import { defaultAgentRegistryService } from '../agents/agent.service.js'; import { defaultRuntimeService } from '../runtime/runtime.service.js'; import { defaultServerSettingsService } from '../settings/settings.service.js'; import { claudeAccountContinuityNeedsSetup, ensureClaudeAccountsContinuity } from './claude-account-continuity.js'; import { synchronizeClaudeAccountMcpState } from './claude-account-mcp.js'; import { discoverClaudeAccounts } from './claude-account-config.js'; import { stageClaudeAccountRemoval, type StagedClaudeAccountRemoval } from './claude-account-removal.js'; export declare class ProviderAccountError extends Error { readonly statusCode: number; constructor(statusCode: number, message: string); } interface ProviderAccountSettings { getProviderAccounts(): ReturnType; setProviderAccounts(providerAccounts: Parameters[0]): ReturnType; } interface ProviderAccountAgents { listAgentConfigs(): ReturnType; } interface ProviderAccountRuntime { listStatuses(): ReturnType; reloadAgentForAccountSwitch(agentId: string): ReturnType; } export declare class ProviderAccountService { private readonly settings; private readonly agents; private readonly runtime; private readonly ensureContinuity; private readonly discoverAccounts; private readonly continuityNeedsSetup; private readonly synchronizeMcpState; private readonly saveAgentClaudeAccount; private readonly stageAccountRemoval; private mutationTail; constructor(settings?: ProviderAccountSettings, agents?: ProviderAccountAgents, runtime?: ProviderAccountRuntime, ensureContinuity?: typeof ensureClaudeAccountsContinuity, discoverAccounts?: typeof discoverClaudeAccounts, continuityNeedsSetup?: typeof claudeAccountContinuityNeedsSetup, synchronizeMcpState?: typeof synchronizeClaudeAccountMcpState, saveAgentClaudeAccount?: (agentId: string, accountId: ProviderAccountId | null) => Promise, stageAccountRemoval?: (account: Parameters[0]) => Promise); list(): Promise; claudeState(): Promise; selectClaudeAccount(accountId: string): Promise; assignClaudeAccount(agentId: string, accountId: ProviderAccountId | null): Promise; private performClaudeAccountAssignment; removeClaudeAccount(accountId: string): Promise; private performClaudeAccountRemoval; private performClaudeAccountSelection; } export declare const defaultProviderAccountService: ProviderAccountService; export {}; //# sourceMappingURL=provider-account.service.d.ts.map