import type { TBranchList } from "../../../domain/type/branch.type";
import type { IBranchPlaceholderPromptOptions } from "../type/branch-placeholder-prompt-options.type";
/**
 * Prompt service for branch creation interactions
 */
export declare class BranchCreationPrompt {
    private readonly BRANCH_CHOICE_FORMATTER;
    private readonly VALIDATE_BRANCH_PLACEHOLDER_VALUE_USE_CASE;
    constructor();
    /**
     * Prompt for branch type selection
     * @param branches Available branch types
     * @returns Selected branch type
     */
    promptBranchType(branches: TBranchList): Promise<string>;
    /**
     * Prompt for a branch placeholder value based on a validation pattern.
     */
    promptPlaceholder(options: IBranchPlaceholderPromptOptions): Promise<string>;
    /**
     * Prompt to push branch to remote
     * @returns Whether to push the branch
     */
    promptPushBranch(): Promise<boolean>;
    private buildPlaceholderPromptMessage;
    private buildPlaceholderValidationMessage;
}
