import { type CommandContext, type GlobalOptions } from '../../../../app/command-context.js';
import { type PromptContext } from '../../../shared/shared.prompts.js';
import { type ScanToolsOptions } from '../../../tools/shared/scan-tools.js';
import type { ToolInfo } from '../../../tools/shared/types.js';
import { type OatConfig } from '../../../../config/oat-config.js';
import { Command } from 'commander';
import { type InstallBrainstormOptions, type InstallBrainstormResult } from './install-brainstorm.js';
type InstallScope = 'project' | 'user';
interface InitToolsBrainstormDependencies {
    buildCommandContext: (options: GlobalOptions) => CommandContext;
    resolveProjectRoot: (cwd: string) => Promise<string>;
    resolveScopeRoot: (scope: InstallScope, cwd: string, home: string) => string;
    resolveAssetsRoot: () => Promise<string>;
    installBrainstorm: (options: InstallBrainstormOptions) => Promise<InstallBrainstormResult>;
    confirmAction: (message: string, ctx: PromptContext) => Promise<boolean>;
    scanTools: (options: ScanToolsOptions) => Promise<ToolInfo[]>;
    readOatConfig: (repoRoot: string) => Promise<OatConfig>;
    writeOatConfig: (repoRoot: string, config: OatConfig) => Promise<void>;
}
export declare function createInitToolsBrainstormCommand(overrides?: Partial<InitToolsBrainstormDependencies>): Command;
export {};
//# sourceMappingURL=index.d.ts.map