import type { CommandDefinition } from "../../app/commands/command.js"; import type { CompletionMenu } from "../../ui-core/composer/completion.js"; import type { FileSuggestion } from "../../ui/mentions.js"; import type { InkTheme } from "../render/ink-theme.js"; import { type PanelFrameInput } from "./panel-frame.js"; export declare const COMPLETION_MIN_ROWS = 6; export declare const COMPLETION_MAX_ROWS = 12; export declare const COMPLETION_BORDER_ROWS = 2; export declare function completionRowsWanted(terminalRows: number): number; export declare function completionOverlayRows(terminalRows: number): number; export declare function isImageSuggestion(suggestion: FileSuggestion): boolean; export declare function sortSuggestions(suggestions: readonly FileSuggestion[]): readonly FileSuggestion[]; export declare function commandLabel(command: CommandDefinition): string; export declare function completionCommonPrefix(values: readonly string[]): string; export interface CompletionViewInput { readonly ink: InkTheme; readonly menu: CompletionMenu; readonly active: number; readonly columns: number; readonly rows: number; readonly previousTop?: number | undefined; } export interface CompletionView { readonly frame: PanelFrameInput; readonly top: number; readonly count: number; } export declare function completionItemValues(menu: CompletionMenu): readonly string[]; export declare function completionView(input: CompletionViewInput): CompletionView | undefined;