import { type ControlInteractionEvent, type ControlInteractionRegistry, type ControlSubject } from '@happyvertical/smrt-ui/forms'; import type { Snippet } from 'svelte'; import type { LLMModelId, STTAdapterType } from './types.js'; export interface Props { /** Form children */ children: Snippet; /** Show mode toggle button */ showModeToggle?: boolean; /** Show form-level listen button */ showFormListen?: boolean; /** Silence timeout in seconds before stopping */ silenceTimeout?: number; /** STT adapter type */ sttAdapter?: STTAdapterType; /** LLM model for extraction (or 'none' for regex-only) */ llmModel?: LLMModelId; /** Called when form is submitted (if provided, prevents native submission) */ onsubmit?: (data: Record) => void | Promise; /** Let WebMCP propose field changes for local human review. */ webmcp?: boolean | { name?: string; description?: string; }; /** Collection/model identity used when naming the generated intent. */ collection?: string; /** HTTP method for native form submission (default: GET) */ method?: 'GET' | 'POST'; /** Form action URL for native form submission */ action?: string; /** Stable identity used by control/agent interaction adapters. */ formId?: string; /** Default record-qualified identity for registered fields. */ subject?: ControlSubject; /** Registry for form control interactions and staged edits. */ interactionRegistry?: ControlInteractionRegistry; /** Called when a form control interaction event occurs. */ oninteraction?: (event: ControlInteractionEvent) => void; /** Render the built-in human review surface for staged changes. */ stagedReview?: boolean; /** HTML id attribute for the form element. */ id?: string; /** HTML name attribute for the form element. */ name?: string; /** CSS classes to apply to the form element. */ class?: string; } declare const Form: import("svelte").Component Record; getInteractionRegistry: () => ControlInteractionRegistry; }, "">; type Form = ReturnType; export default Form; //# sourceMappingURL=Form.svelte.d.ts.map