import * as solid_js from 'solid-js'; import { Accessor, ValidComponent } from 'solid-js'; import { ElementOf, PolymorphicProps } from './polymorphic/index.js'; import { ValidationState } from '@kobalte/utils'; interface FormControlDataSet { "data-valid": string | undefined; "data-invalid": string | undefined; "data-required": string | undefined; "data-disabled": string | undefined; "data-readonly": string | undefined; } interface FormControlContextValue { name: Accessor; dataset: Accessor; validationState: Accessor; isRequired: Accessor; isDisabled: Accessor; isReadOnly: Accessor; labelId: Accessor; fieldId: Accessor; descriptionId: Accessor; errorMessageId: Accessor; getAriaLabelledBy: (fieldId: string | undefined, fieldAriaLabel: string | undefined, fieldAriaLabelledBy: string | undefined) => string | undefined; getAriaDescribedBy: (fieldAriaDescribedBy: string | undefined) => string | undefined; generateId: (part: string) => string; registerLabel: (id: string) => () => void; registerField: (id: string) => () => void; registerDescription: (id: string) => () => void; registerErrorMessage: (id: string) => () => void; } declare const FormControlContext: solid_js.Context; declare function useFormControlContext(): FormControlContextValue; interface FormControlDescriptionOptions { } interface FormControlDescriptionCommonProps { id: string; } interface FormControlDescriptionRenderProps extends FormControlDescriptionCommonProps, FormControlDataSet { } type FormControlDescriptionProps = FormControlDescriptionOptions & Partial>>; /** * The description that gives the user more information on the form control. */ declare function FormControlDescription(props: PolymorphicProps>): solid_js.JSX.Element; export { FormControlDataSet as F, FormControlDescription as a, FormControlDescriptionOptions as b, FormControlDescriptionCommonProps as c, FormControlDescriptionRenderProps as d, FormControlDescriptionProps as e, FormControlContextValue as f, FormControlContext as g, useFormControlContext as u };