import type { GetBranchConfigUseCase } from "../../../application/use-cases/get-branch-config.use-case";
import type { GetCurrentBranchUseCase } from "../../../application/use-cases/get-current-branch.use-case";
import type { LintBranchNameUseCase } from "../../../application/use-cases/lint-branch-name.use-case";
/**
 * Controller for linting CLI operations
 */
export declare class LintController {
    private readonly ERROR_FORMATTER;
    private readonly GET_BRANCH_CONFIG_USE_CASE;
    private readonly GET_CURRENT_BRANCH_USE_CASE;
    private readonly HINT_FORMATTER;
    private readonly LINT_BRANCH_NAME_USE_CASE;
    /**
     * Constructor
     * @param getBranchConfigUseCase The use case for getting branch configuration
     * @param getCurrentBranchUseCase The use case for getting the current branch
     * @param lintBranchNameUseCase The use case for linting branch names
     */
    constructor(getBranchConfigUseCase: GetBranchConfigUseCase, getCurrentBranchUseCase: GetCurrentBranchUseCase, lintBranchNameUseCase: LintBranchNameUseCase);
    /**
     * Execute the CLI command
     * @param appName The application name
     */
    execute(appName: string): Promise<void>;
    /**
     * Handle errors that occur during execution
     * @param error The error that occurred
     * @param appName The application name
     */
    private handleError;
}
