import type { GitFile } from './git.js'; import type { ActionItem } from './stage-types.js'; export interface StageActionMenuCallbacks { stage_file(): void; unstage_file(): void; stage_hunk(): void; unstage_hunk(): void; stage_line(): void; unstage_line(): void; discard_file(file: GitFile): void; commit(): void; amend_commit(): void; repository(): void; refresh(path: string): void; conflict_help(file: GitFile): void; } export declare function build_stage_actions(file: GitFile, callbacks: StageActionMenuCallbacks): ActionItem[]; export declare function build_discard_confirmation(file: GitFile, on_confirm: (file: GitFile) => void, on_cancel: () => void): ActionItem[]; export declare function next_action_index(current: number, length: number, input: string): number;