/**
 * `olam skills apply-overlays` orchestrator.
 *
 * Port of `shared/engineering/scripts/apply-overlays.py`'s merge_skills +
 * merge_agents + main functions. Walks ~/.claude/skills.overrides/ and
 * ~/.claude/agents.overrides/, applies section-as-unit overlays per
 * markdown-merger, runs post-merge sanitization, emits breadcrumbs.
 *
 * Reuses olam primitives:
 *   - mergeMarkdown from @olam/core/src/lib/markdown-merger.js (the section merger)
 *   - sanitize from packages/cli/src/commands/flywheel/sanitize-persona-output.ts
 *     (called in-process; no subprocess shell-out)
 *   - withFileLock from @olam/core/src/lib/file-lock.js (advisory locking)
 *
 * Plan reference: docs/plans/olam-flywheel-cli-namespace/phase-a-tasks.md § A9
 */
export interface ApplyOverlaysOptions {
    dryRun?: boolean;
    fixtureRoot?: string;
    claudeDir?: string;
}
export interface ApplyOverlaysResult {
    rc: number;
    skillsMerged: number;
    agentsMerged: number;
    newAgentsCreated: number;
    schemaHalts: number;
    renameHalts: number;
    sanitizeHalts: number;
    messages: string[];
}
export declare function applyOverlays(opts?: ApplyOverlaysOptions): Promise<ApplyOverlaysResult>;
export declare function formatSummary(result: ApplyOverlaysResult): string;
export declare function basenameOf(p: string): string;
//# sourceMappingURL=skills-apply-overlays.d.ts.map