import type { ElicitationRequest } from '../../agent/types/sdk-types.js'; import type { ReplElicitationDeps } from './repl-shared.js'; export declare const MAX_FIELDS = 64; export declare const BLOCKED_KEYS: Set; export interface FieldDef { type?: string; description?: string; enum?: unknown[]; default?: unknown; title?: string; } export type FieldOutcome = { tag: 'value'; value: unknown; } | { tag: 'cancel'; } | { tag: 'decline'; }; export declare function parseProperties(schema: Record): { properties: Record; required: Set; fieldsTruncated: boolean; originalFieldCount: number; }; export declare function renderFormHeader(writer: ReplElicitationDeps['writer'], req: ElicitationRequest): void; export declare function promptField(fieldKey: string, fieldDef: FieldDef, isRequired: boolean, readLine: ReplElicitationDeps['readLine'], writer: ReplElicitationDeps['writer'], signal: AbortSignal, pickFromList?: ReplElicitationDeps['pickFromList']): Promise;