UNPKG

@capgo/cli

Version:

A CLI to upload to capgo servers

111 lines (110 loc) 3.96 kB
export declare const INIT_CANCEL: unique symbol; export type InitLogTone = 'cyan' | 'yellow' | 'green' | 'red'; export type InitScreenTone = 'cyan' | 'blue' | 'green' | 'yellow'; export interface InitScreen { title?: string; introLines?: string[]; phaseLabel?: string; progress?: number; stepLabel?: string; stepSummary?: string; roadmapLine?: string; statusLine?: string; resumeLine?: string; completionLines?: string[]; tone?: InitScreenTone; } export interface ConfirmPrompt { kind: 'confirm'; message: string; initialValue?: boolean; resolve: (value: boolean | symbol) => void; } export interface TextPrompt { kind: 'text'; message: string; placeholder?: string; validate?: (value: string | undefined) => string | undefined; error?: string; resolve: (value: string | symbol) => void; } export interface SelectPromptOption { label: string; hint?: string; value: string; } export interface SelectPrompt { kind: 'select'; message: string; options: SelectPromptOption[]; resolve: (value: string | symbol) => void; } export type PromptRequest = ConfirmPrompt | TextPrompt | SelectPrompt; export interface InitLogEntry { message: string; tone: InitLogTone; } export interface InitVersionWarning { currentVersion: string; latestVersion: string; majorVersion: string; } export interface InitCodeDiffLine { lineNumber: number; text: string; kind: 'context' | 'add'; } export interface InitCodeDiff { filePath: string; created: boolean; lines: InitCodeDiffLine[]; note?: string; } export type InitEncryptionPhase = 'enabled' | 'pending-sync' | 'skipped' | 'failed'; export interface InitEncryptionSummary { phase: InitEncryptionPhase; title: string; lines: string[]; } export type InitStreamingOutputStatus = 'running' | 'success' | 'error'; export interface InitStreamingOutput { title: string; command: string; lines: string[]; status: InitStreamingOutputStatus; statusMessage?: string; } export interface InitRuntimeState { screen?: InitScreen; logs: InitLogEntry[]; spinner?: string; prompt?: PromptRequest; versionWarning?: InitVersionWarning; codeDiff?: InitCodeDiff; encryptionSummary?: InitEncryptionSummary; streamingOutput?: InitStreamingOutput; } export declare function subscribe(listener: () => void): () => boolean; export declare function getInitSnapshot(): InitRuntimeState; export declare function ensureInitInkSession(): void; export declare function stopInitInkSession(finalMessage?: { text: string; tone: 'green' | 'yellow'; }): void; export declare function setInitScreen(screen: InitScreen): void; export declare function pushInitLog(message: string, tone: InitLogTone): void; export declare function clearInitLogs(): void; export declare function setInitSpinner(message?: string): void; export declare function requestInitConfirm(message: string, initialValue?: boolean): Promise<boolean | symbol>; export declare function requestInitText(message: string, placeholder?: string, validate?: (value: string | undefined) => string | undefined): Promise<string | symbol>; export declare function requestInitSelect(message: string, options: SelectPromptOption[]): Promise<string | symbol>; export declare function setInitCodeDiff(diff?: InitCodeDiff): void; export declare function setInitEncryptionSummary(summary?: InitEncryptionSummary): void; export declare function startInitStreamingOutput(params: { title: string; command: string; }): void; export declare function appendInitStreamingLine(line: string): void; export declare function updateInitStreamingStatus(status: InitStreamingOutputStatus, statusMessage?: string): void; export declare function clearInitStreamingOutput(): void; export declare function setInitVersionWarning(currentVersion: string, latestVersion: string, majorVersion: string): void;