import type { RemovedAgentGap } from './migrate-agent-detection.js'; export type RestoreSource = 'marketplace-clone' | 'repo-checkout' | 'github-tag' | 'github-main'; export interface RestoreResult { agent: string; plugin: string; status: 'restored' | 'skipped' | 'failed'; /** Where the content came from (set when status === 'restored'). */ source?: RestoreSource; /** Project-relative path written (set when status === 'restored' | 'skipped'). */ path?: string; /** Human-readable failure reason (set when status === 'failed'). */ error?: string; } export interface RestoreRemovedAgentsOptions { /** Test injection: overrides os.homedir() for the marketplace-clone probe. */ homeDir?: string; /** Test injection: overrides global fetch for the GitHub fallback. */ fetchImpl?: typeof fetch; /** CLI version used to pin the GitHub tag (e.g. "3.38.1" -> tag v3.38.1). */ version?: string; /** Report what would be written without writing. */ dryRun?: boolean; } /** * Restore each gap's agent file into /.claude/agents//. * Never overwrites an existing file (detection already excludes present * basenames anywhere under .claude/agents/, but re-check defensively). */ export declare function restoreRemovedAgents(cwd: string, gaps: RemovedAgentGap[], options?: RestoreRemovedAgentsOptions): Promise; //# sourceMappingURL=migrate-agent-restore.d.ts.map