import * as react_jsx_runtime from 'react/jsx-runtime'; import { A as AriaProps } from './accessibility-Dv-wc-jy.js'; import { ReactNode } from 'react'; interface FormContextValue { values: Record; errors: Record; isDirty: boolean; setFieldValue: (name: string, value: unknown) => void; setFieldError: (name: string, error: string) => void; } declare function useFormContext(): FormContextValue; interface FormField$1 { name: string; validate?: (value: unknown) => string | null; } interface FormProps extends AriaProps { onSubmit: (values: Record) => void; initialValues?: Record; fields?: FormField$1[]; children: ReactNode; } declare function Form({ onSubmit, initialValues, fields, children, 'aria-label': ariaLabel, 'aria-description': ariaDescription, 'aria-live': ariaLive, }: FormProps): react_jsx_runtime.JSX.Element; interface FormFieldProps { label: string; children: ReactNode; error?: string; hint?: string; required?: boolean; /** Gap between label, input, and hint/error. Default: 0 */ gap?: number; /** Icon shown before error message. Default: '✗' */ errorIcon?: string; /** Color override for the label. Default: theme.colors.foreground */ labelColor?: string; } declare function FormField({ label, children, error, hint, required, gap, errorIcon, labelColor, }: FormFieldProps): react_jsx_runtime.JSX.Element; interface ConfirmProps { message: string; onConfirm?: () => void; onCancel?: () => void; confirmLabel?: string; cancelLabel?: string; defaultValue?: boolean; variant?: 'default' | 'danger'; } declare function Confirm({ message, onConfirm, onCancel, confirmLabel, cancelLabel, defaultValue, variant, }: ConfirmProps): react_jsx_runtime.JSX.Element; interface WizardStep { key: string; title: string; content: ReactNode; validate?: () => boolean | string; } interface WizardProps { steps: WizardStep[]; onComplete?: (completedSteps: string[]) => void; onCancel?: () => void; showProgress?: boolean; } declare function Wizard({ steps, onComplete, onCancel, showProgress }: WizardProps): react_jsx_runtime.JSX.Element; interface DatePickerProps { value?: Date; onChange?: (date: Date) => void; onSubmit?: (date: Date) => void; label?: string; minDate?: Date; maxDate?: Date; autoFocus?: boolean; id?: string; } declare function DatePicker({ value: controlledValue, onChange, onSubmit, label, minDate, maxDate, autoFocus, id, }: DatePickerProps): react_jsx_runtime.JSX.Element; interface TimePickerProps { value?: { hours: number; minutes: number; }; onChange?: (time: { hours: number; minutes: number; }) => void; onSubmit?: (time: { hours: number; minutes: number; }) => void; label?: string; /** 12 or 24 hour format. Default: 24 */ format?: 12 | 24; autoFocus?: boolean; id?: string; } declare function TimePicker({ value: controlledValue, onChange, onSubmit, label, format, autoFocus, id, }: TimePickerProps): react_jsx_runtime.JSX.Element; interface FilePickerProps { value?: string; onChange?: (path: string) => void; onSubmit?: (path: string) => void; label?: string; /** Starting directory. Default: process.cwd() */ startDir?: string; /** Show only files with these extensions */ extensions?: string[]; /** Show only directories */ dirsOnly?: boolean; autoFocus?: boolean; id?: string; width?: number; /** Max number of files to show. Default: 8 */ maxVisible?: number; } declare function FilePicker({ value: controlledValue, onChange, onSubmit, label, startDir, extensions, dirsOnly, autoFocus, id, width, maxVisible, }: FilePickerProps): react_jsx_runtime.JSX.Element; export { Confirm, type ConfirmProps, DatePicker, type DatePickerProps, FilePicker, type FilePickerProps, Form, FormField, type FormField$1 as FormFieldDefinition, type FormFieldProps, type FormProps, TimePicker, type TimePickerProps, Wizard, type WizardProps, type WizardStep, useFormContext };