import { type CommandContext, type GlobalOptions } from '../../../app/command-context.js';
import { type UpsertSectionResult } from '../../shared/agents-md.js';
import { type PromptContext, type SelectChoice } from '../../shared/shared.prompts.js';
import { type OatConfig } from '../../../config/oat-config.js';
import { Command } from 'commander';
import { type DocsInitResolvedOptions } from './resolve-options.js';
interface DocsInitDependencies {
    buildCommandContext: (options: GlobalOptions) => CommandContext;
    resolveAssetsRoot: () => Promise<string>;
    detectRepoShape: (repoRoot: string) => Promise<'monorepo' | 'single-package'>;
    inputWithDefault: (message: string, defaultValue: string, ctx: PromptContext) => Promise<string | null>;
    selectWithAbort: <T extends string>(message: string, choices: SelectChoice<T>[], ctx: PromptContext) => Promise<T | null>;
    runDocsInit: (context: CommandContext, options: DocsInitResolvedOptions, assetsRoot: string) => Promise<void>;
    upsertAgentsMdSection: (repoRoot: string, key: string, body: string) => Promise<UpsertSectionResult>;
    readOatConfig: (repoRoot: string) => Promise<OatConfig>;
    confirmAction: (message: string, ctx: PromptContext) => Promise<boolean>;
}
export declare function buildDocsSectionBody(options: DocsInitResolvedOptions): string;
export declare function createDocsInitCommand(overrides?: Partial<DocsInitDependencies>): Command;
export {};
//# sourceMappingURL=index.d.ts.map