/**
 * Init flow module
 *
 * Provides the complete interactive init experience using @clack/prompts.
 * This flow handles:
 * - Persistence warning confirmation
 * - Ancestor installation detection and warning
 * - Existing config detection and capture
 * - Skillset name collection with validation
 */
import type { ExistingConfig } from "../../../cli/features/agentRegistry.js";
/**
 * Callbacks for the init flow
 */
export type InitFlowCallbacks = {
    onCheckAncestors: (args: {
        installDir: string;
    }) => Promise<Array<string>>;
    onDetectExistingConfig: (args: {
        installDir: string;
    }) => Promise<ExistingConfig | null>;
    onCaptureConfig: (args: {
        installDir: string;
        skillsetName: string;
    }) => Promise<void>;
    onInit: (args: {
        installDir: string;
        capturedSkillsetName: string | null;
    }) => Promise<void>;
};
/**
 * Result of the init flow
 */
export type InitFlowResult = {
    capturedSkillsetName: string | null;
    statusMessage: string;
};
/**
 * Execute the interactive init flow
 *
 * @param args - Flow configuration
 * @param args.installDir - Installation directory
 * @param args.skipWarning - If true, skip the persistence warning confirmation
 * @param args.callbacks - Callback functions for side-effectful operations
 *
 * @returns Result on success, null on cancel
 */
export declare const initFlow: (args: {
    installDir: string;
    skipWarning?: boolean | null;
    callbacks: InitFlowCallbacks;
}) => Promise<InitFlowResult | null>;
//# sourceMappingURL=init.d.ts.map