/** @jsxImportSource @opentui/react */ import { createCliRenderer } from "@opentui/core"; import { createRoot } from "@opentui/react"; import type { ReactNode } from "react"; import { type OpenTuiCancel, type OpenTuiSelectOption, type PromptResolver } from "./open-tui-types.js"; interface RunPromptArgs { render: (resolve: PromptResolver) => ReactNode; formatHistoryLine?: (value: T) => string | undefined; } export interface OpenTuiRendererSession { initialize: () => Promise; runPrompt: (args: RunPromptArgs) => Promise; appendHistoryLines: (lines: string[]) => void; setHistorySection: (key: string, lines: string[]) => void; renderStatusLine: (content: string, fg?: string) => void; clearStatusLine: () => void; flushHistoryToStdout: () => void; dispose: () => Promise; } interface OpenTuiSessionDependencies { createRenderer: typeof createCliRenderer; createReactRoot: typeof createRoot; destroyEvent: string; } declare function createOpenTuiRendererSessionWithDependencies(deps: OpenTuiSessionDependencies): OpenTuiRendererSession; export declare function runOpenTuiTextPrompt(args: { message: string; placeholder?: string; defaultValue?: string; validate?: (value: string) => string | undefined; multiline?: boolean; charLimit?: number; height?: number; inline?: boolean; hint?: string; formatHistoryLine?: (value: string) => string | undefined; }, session?: OpenTuiRendererSession): Promise; export declare function createOpenTuiRendererSession(): OpenTuiRendererSession; export declare const __openTuiSessionInternalsForTests: { createOpenTuiRendererSessionWithDependencies: typeof createOpenTuiRendererSessionWithDependencies; }; export declare function runOpenTuiConfirmPrompt(args: { message: string; initialValue?: boolean; affirmativeLabel?: string; negativeLabel?: string; timeout?: number; formatHistoryLine?: (value: boolean) => string | undefined; }, session?: OpenTuiRendererSession): Promise; export declare function runOpenTuiSelectPrompt(args: { message: string; options: OpenTuiSelectOption[]; initialValue?: T; formatHistoryLine?: (value: T) => string | undefined; }, session?: OpenTuiRendererSession): Promise; export declare function runOpenTuiMultiSelectPrompt(args: { message: string; options: OpenTuiSelectOption[]; initialValues?: T[]; required?: boolean; ordered?: boolean; height?: number; formatHistoryLine?: (value: T[]) => string | undefined; }, session?: OpenTuiRendererSession): Promise; export declare function runOpenTuiFilterPrompt(args: { message: string; options: OpenTuiSelectOption[]; placeholder?: string; prompt?: string; multiple?: boolean; limit?: number; fuzzy?: boolean; reverse?: boolean; selectIfOne?: boolean; height?: number; formatHistoryLine?: (value: T | T[]) => string | undefined; }, session?: OpenTuiRendererSession): Promise; export declare function runOpenTuiPagerPrompt(args: { content: string; title?: string; showLineNumbers?: boolean; height?: number | `${number}%` | "auto"; width?: number | `${number}%` | "auto"; }, session?: OpenTuiRendererSession): Promise; export declare function isOpenTuiCancel(value: unknown): value is OpenTuiCancel; export {}; //# sourceMappingURL=open-tui-session.d.ts.map