import { FormControlInstance, FormControlValue } from './form-control.mixin.js'; interface FormControlSliderInstance extends FormControlInstance { value: number; valueAsNumber: number; orientation: 'horizontal' | 'vertical'; } export interface SliderFormControlMixin { new (...args: any[]): FormControlSliderInstance; formAssociated: boolean; readonly observedAttributes: string[]; } type Constructor = new (...args: any[]) => HTMLElement & { connectedCallback?(): void; disconnectedCallback?(): void; attributeChangedCallback?(name: string, oldValue: string | null, newValue: string | null): void; requestUpdate?(name?: string, oldValue?: unknown): void; updateComplete?: Promise; } & { observedAttributes?: string[]; }; /** * Mixin that extends FormControlMixin with slider-specific functionality. * Provides native HTMLInputElement[type=range]-like behavior for custom slider components. * * Features: * - value: Numeric value within min/max range * - min/max: Define the allowed value boundaries * - step: Granularity of value changes * - orientation: horizontal or vertical layout * - Keyboard navigation (Arrow keys, Home, End) * - Touch/pointer drag support * - Form value handling * * @see https://www.w3.org/WAI/ARIA/apg/patterns/slider/ */ export declare function SliderFormControlMixin(SuperClass: TBase): TBase & SliderFormControlMixin; export {};