import type { IPresetManager, ILayoutEngine, ICommandExecutor } from "./interfaces";
export interface CLIOptions {
    presetManager?: IPresetManager;
    createLayoutEngine?: (options: {
        verbose: boolean;
        dryRun: boolean;
        executor?: ICommandExecutor;
    }) => ILayoutEngine;
    createCommandExecutor?: (options: {
        verbose: boolean;
        dryRun: boolean;
    }) => ICommandExecutor;
}
export declare class CLI {
    private program;
    private presetManager;
    private createLayoutEngine;
    private createCommandExecutor;
    private logger;
    constructor(options?: CLIOptions);
    private setupCommands;
    run(args?: string[]): Promise<void>;
    private listPresets;
    private executePreset;
    private handleError;
}
//# sourceMappingURL=cli.d.ts.map