import type { DateFieldConfig, DateTimeFieldConfig, EmailFieldConfig, HiddenFieldConfig, NumberFieldConfig, PasswordFieldConfig, TextFieldConfig, TimeFieldConfig } from './field-config.js'; import type { ManagedFieldController } from './managed-field-controller.js'; type StringInputConfig = TextFieldConfig | EmailFieldConfig | PasswordFieldConfig | DateFieldConfig | TimeFieldConfig | DateTimeFieldConfig | HiddenFieldConfig; /** * Creates a string-valued native input controller. * * @param config - String input configuration. * @param fieldId - Instance-scoped control identifier. * @param invalidMessage - English or overridden validation fallback. * @param requiredMessage - Localized required-value message. * @param onUserChange - Form-owned change notification. * @returns Managed field controller. */ export declare function createInputFieldController(config: StringInputConfig, fieldId: string, invalidMessage: string, requiredMessage: string, onUserChange: () => void): ManagedFieldController; /** Creates a number controller with explicit empty-value normalization. */ export declare function createNumberFieldController(config: NumberFieldConfig, fieldId: string, invalidMessage: string, requiredMessage: string, onUserChange: () => void): ManagedFieldController; export {};