import { type CSSResultGroup, type PropertyDeclarations } from 'lit'; import { AriaSliderController, AriaSliderThumbController } from '../../controllers/aria-slider-controller.js'; import { ElementSlug } from '../../definitions/enums.js'; import type { AriaSliderElementEventMap, AriaSliderThumbElementEventMap } from '../../definitions/events.js'; import type { QueryDeclarations } from '../../definitions/interfaces.js'; import type { Orientation } from '../../definitions/types.js'; import { AracnaBaseElement as BaseElement } from '../core/base-element.js'; import { AracnaFormControlElement as FormControlElement } from '../core/form-control-element.js'; declare global { interface HTMLElementTagNameMap { 'aracna-aria-slider': AriaSliderElement; 'aracna-aria-slider-thumb': AriaSliderThumbElement; } } declare class AriaSliderElement extends FormControlElement { protected aria: AriaSliderController; /** * Properties */ /** */ protected _decimals?: number; disableSwap?: boolean; protected _max?: number; protected _min?: number; protected _minDistance?: number; protected _orientation?: Orientation; protected _step?: number; /** * Queries */ /** */ inputElement?: HTMLInputElement; thumbElements: [AriaSliderThumbElement] | [AriaSliderThumbElement, AriaSliderThumbElement]; connectedCallback(): void; disconnectedCallback(): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; onClick(event: MouseEvent): void; get slug(): ElementSlug; get percentage(): number | number[]; get decimals(): number; set decimals(value: number | undefined); get max(): number; set max(value: number | undefined); get min(): number; set min(value: number | undefined); get minDistance(): number; set minDistance(value: number | undefined); get orientation(): Orientation; set orientation(value: Orientation | undefined); get step(): number; set step(value: number | undefined); get thumbElementsPercentage(): number[]; get thumbElementsValue(): number[]; get value(): number | number[] | undefined; set value(value: number | number[] | undefined); get hasMultipleThumbs(): boolean; get hasSingleThumb(): boolean; get isOrientationHorizontal(): boolean; get isOrientationVertical(): boolean; static properties: PropertyDeclarations; static queries: QueryDeclarations; static styles: CSSResultGroup; } declare class AriaSliderThumbElement extends BaseElement { protected aria: AriaSliderThumbController; /** * Properties */ /** */ defaultValue?: number; disableComputePosition?: boolean; movable?: boolean; /** * Queries */ /** */ rootElement?: AriaSliderElement; /** * Internals */ /** */ protected _value?: number; connectedCallback(): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; disconnectedCallback(): void; onKeyDown: (event: KeyboardEvent) => void; onPointerDown: () => void; onPointerMove: (event: PointerEvent) => void; onPointerUp: () => void; computePosition(): void; setValueByCoordinates(x: number, y: number): void; setValueByPercentage(percentage: number): void; setValue(value: number): void; getPercentageByCoordinates(x: number, y: number): number; get index(): number; get slug(): ElementSlug; get percentage(): number; get value(): number | undefined; set value(value: number | undefined); static properties: PropertyDeclarations; static queries: QueryDeclarations; static styles: CSSResultGroup; } export { AriaSliderElement as AracnaAriaSliderElement, AriaSliderThumbElement as AracnaAriaSliderThumbElement };