/** * BaseFormControl ref * @public */ export interface FormControlRef { /** Returns the wrapping element ref.*/ readonly element: T | null; /** Returns the underlying input ref.*/ readonly inputRef?: HTMLInputElement | HTMLSelectElement | null; /** Will focus the underlying input or interactive element. */ focus?: () => void; /** Validates the form control and sets the validity state. */ validate: () => void; } /** * Ref for form-elements with overlay * @public */ export interface FormControlWithOverlayRef extends FormControlRef { /** Function to open the overlay of the control. */ open: () => void; /** Function to close the overlay of the control. */ close: () => void; /** Ref to the opening trigger element. */ readonly triggerRef?: HTMLElement | null; } /** * An imperative handle giving access to the root element and the actual input element of the component, as well as the open and close handlers for the overlay. * @public */ export interface TimeRangePickerRef extends Omit, 'inputRef'> { /** Returns the underlying input ref.*/ readonly inputRef: { /** Returns the underlying 'From' input ref.*/ readonly from?: HTMLInputElement | null; /** Returns the underlying 'To' input ref.*/ readonly to?: HTMLInputElement | null; }; } /** * Type guard function that determines whether a FormControlRef is * of type FormControlWithOverlayRef. * @internal */ export declare function isFormControlWithOverlayRef(props: any): props is FormControlWithOverlayRef; /** * Type guard function that determines whether the input is of type FormControlRef. * @internal */ export declare function isFormControlRef(ref: any): ref is FormControlRef;