UNPKG

@earendil-works/pi-coding-agent

Version:

Coding agent CLI with read, bash, edit, write tools and session management

42 lines 1.59 kB
import type { ExtensionCommandContext } from "../../core/extensions/types.ts"; import type { LlamaModelInfo, LlamaProgress } from "./client.ts"; import type { HuggingFaceModel } from "./huggingface.ts"; export type LlamaManagerAction = { type: "model"; model: LlamaModelInfo; } | { type: "download"; } | { type: "close"; }; interface ProgressState extends LlamaProgress { title: string; model: string; } export interface LlamaUi { showModels(serverUrl: string, models: LlamaModelInfo[]): Promise<LlamaManagerAction>; select(title: string, options: string[]): Promise<string | undefined>; confirm(title: string, message: string): Promise<boolean>; connectionError(serverUrl: string, message: string): Promise<"retry" | "close">; searchModels(search: (query: string, signal: AbortSignal) => Promise<HuggingFaceModel[]>): Promise<string | undefined>; showStatus(title: string, message: string): void; progress(state: ProgressState): Promise<void>; updateProgress(state: ProgressState): void; } export declare function showLlamaUi(ctx: ExtensionCommandContext, run: (ui: LlamaUi) => Promise<void>): Promise<void>; export declare function runWithProgress<T>(ui: LlamaUi, options: { title: string; model: string; initialMessage: string; cancelTitle: string; cancelMessage: string; run(signal: AbortSignal, update: (progress: LlamaProgress) => void): Promise<T>; cancel(): Promise<void>; }): Promise<{ cancelled: true; } | { cancelled: false; value: T; }>; export {}; //# sourceMappingURL=ui.d.ts.map