import { BaseCommand } from '../base.js';
import { type CommandDefinition, type InitDependenciesOptions, type SoloListrTask } from '../../types/index.js';
import { InitContext } from './init-context.js';
import { Listr, ListrRendererValue } from 'listr2';
import { type DefaultKindClientBuilder } from '../../integration/kind/impl/default-kind-client-builder.js';
import { BrewPackageManager } from '../../core/package-managers/brew-package-manager.js';
import { OsPackageManager } from '../../core/package-managers/os-package-manager.js';
import { ClusterTaskManager } from '../../core/cluster-task-manager.js';
/**
 * Defines the core functionalities of 'init' command
 */
export declare class InitCommand extends BaseCommand {
    protected readonly kindBuilder: DefaultKindClientBuilder;
    protected readonly podmanInstallationDirectory: string;
    protected readonly brewPackageManager: BrewPackageManager;
    protected readonly osPackageManager: OsPackageManager;
    protected readonly clusterTaskManager: ClusterTaskManager;
    static readonly COMMAND_NAME: string;
    static readonly INIT_COMMAND_NAME: string;
    constructor(kindBuilder: DefaultKindClientBuilder, podmanInstallationDirectory: string, brewPackageManager: BrewPackageManager, osPackageManager: OsPackageManager, clusterTaskManager: ClusterTaskManager);
    setupSystemFilesTasks(argv: any): SoloListrTask<InitContext>[];
    installDependenciesTasks(options: InitDependenciesOptions): SoloListrTask<InitContext>[];
    /** Executes the init CLI command */
    initTasks(argv: any): Listr<InitContext, ListrRendererValue, ListrRendererValue>;
    init(argv: any): Promise<boolean>;
    /**
     * Return Yargs command definition for 'init' command
     * @returns A object representing the Yargs command definition
     */
    getCommandDefinition(): CommandDefinition;
    close(): Promise<void>;
}
