///
import type { ComponentProps } from '@fluentui/react-utilities';
import type { ComponentState } from '@fluentui/react-utilities';
import type { ForwardRefComponent } from '@fluentui/react-utilities';
import { Label } from '@fluentui/react-label';
import * as React_2 from 'react';
import type { Slot } from '@fluentui/react-utilities';
import type { SlotClassNames } from '@fluentui/react-utilities';
export declare const Field: ForwardRefComponent;
export declare const fieldClassNames: SlotClassNames;
export declare const FieldContextProvider: React_2.Provider & {
labelFor?: string | undefined;
labelId?: string | undefined;
validationMessageId?: string | undefined;
hintId?: string | undefined;
}> | undefined>;
export declare type FieldContextValue = Readonly & {
/** The label's for prop. Undefined if there is no label. */
labelFor?: string;
/** The label's id prop. Undefined if there is no label. */
labelId?: string;
/** The validationMessage's id prop. Undefined if there is no validationMessage. */
validationMessageId?: string;
/** The hint's id prop. Undefined if there is no hint. */
hintId?: string;
}>;
export declare type FieldContextValues = {
field: FieldContextValue;
};
/**
* The props added to the control inside the Field.
*/
export declare type FieldControlProps = Pick, 'id' | 'aria-labelledby' | 'aria-describedby' | 'aria-invalid' | 'aria-required'>;
/**
* Options for `useFieldControlProps_unstable`.
*/
export declare type FieldControlPropsOptions = {
/**
* Skips setting `aria-labelledby` on the control if the `label.htmlFor` refers to the control.
*
* This should be used with controls that can be the target of a label's `for` prop:
* `