import { DuetLocale } from "../common-types"; /** * Baseline interface for all form components, including inputs and buttons */ export interface FormComponent { value: TValue; disabled: boolean; identifier: string; name: string; setFocus(options?: FocusOptions): Promise; accessibleActiveDescendant: string; accessibleControls: string; accessibleOwns: string; } /** * Interface for form components that function as inputs */ export interface InputComponent extends FormComponent { required: boolean; label: string; } /** * Interface used by numeric inputs with step functionality */ export interface DuetNumericInput extends InputComponent { step: number; min: number; max: number; unit: string; locale: DuetLocale; }