import { ElementType, ReactNode } from 'react'; import { ShapeType, SizeType, ThemeType } from '../const/types.js'; export interface FormFieldContextValue { id: string; labelId: string; errorId: string; prop?: string; value: unknown; size?: SizeType; shape?: ShapeType; theme?: ThemeType; disabled: boolean; readOnly: boolean; invalid: boolean; required: boolean; describedBy?: string; update: (value: unknown) => void; blur: () => void; } export declare const FormFieldContext: import('react').Context; export interface FormFieldAdapter { valueProp?: "value" | "checked" | "fileList" | "targetKeys"; getChangeValue?: (...args: unknown[]) => unknown; getFieldValue?: (value: unknown) => unknown; inherit?: Array<"size" | "shape" | "theme" | "disabled" | "readOnly">; } export declare const resolveFormControlAttrs: (props: Record, field: FormFieldContextValue | null | undefined) => { id: {} | undefined; "aria-labelledby": {} | undefined; "aria-describedby": {} | undefined; "aria-invalid": {} | undefined; "aria-required": {} | undefined; }; export declare const isFormFieldComponent: (component: unknown) => boolean; export declare const markFormFieldWrapper: (component: T) => T; export declare const isFormFieldWrapper: (component: unknown) => boolean; export declare function createFormFieldComponent(Component: T, adapter?: FormFieldAdapter): T; export declare function FormFieldProvider({ value, children, }: { value: FormFieldContextValue; children: ReactNode; }): import('react').FunctionComponentElement>;