export interface PromptContext {
    interactive: boolean;
}
export interface SelectChoice<T extends string = string> {
    label: string;
    value: T;
    description?: string;
}
export interface MultiSelectChoice<T extends string = string> {
    label: string;
    value: T;
    description?: string;
    checked?: boolean;
}
export declare function confirmAction(message: string, ctx: PromptContext): Promise<boolean>;
export declare function inputRequired(message: string, ctx: PromptContext): Promise<string | null>;
export declare function inputWithDefault(message: string, defaultValue: string, ctx: PromptContext): Promise<string | null>;
export declare function selectWithAbort<T extends string>(message: string, choices: SelectChoice<T>[], ctx: PromptContext): Promise<T | null>;
export declare function selectManyWithAbort<T extends string>(message: string, choices: MultiSelectChoice<T>[], ctx: PromptContext): Promise<T[] | null>;
export declare function selectManyOrEmpty<T extends string>(message: string, choices: MultiSelectChoice<T>[], ctx: PromptContext): Promise<T[]>;
//# sourceMappingURL=shared.prompts.d.ts.map