import { LitElement, PropertyValues } from "lit"; import type { SliderSlot } from "../slider-thumb/slider-thumb.js"; import "../icon/icon.js"; import "../tooltip/tooltip.js"; /** * Parent component for sliders (both single and range sliders). Used in combination with a ``. * * [Warp component reference](https://warp-ds.github.io/docs/components/slider/frameworks/elements) * * @slot - For single sliders place a `` in the default slot. * @slot label - Label for the slider or range slider as a whole. * @slot description - Optional description between the label and slider. * @slot from - Range sliders need to place a `` in the from and to slots. * @slot to - Range sliders need to place a `` in the from and to slots. */ declare class WarpSlider extends LitElement { #private; /** @internal */ static shadowRootOptions: { delegatesFocus: boolean; clonable?: boolean; customElementRegistry?: CustomElementRegistry | null; mode: ShadowRootMode; serializable?: boolean; slotAssignment?: SlotAssignmentMode; }; static styles: import("lit").CSSResult[]; /** * The slider fieldset label. Required for proper accessibility. * * If you need to display HTML, use the `label` slot instead (f. ex. `Production year`) */ label: string | undefined; /** * Supplementary information that should show in a tooltip behind an information icon after the label. */ tooltip?: string; disabled: boolean; /** * Whether or not to allow values outside the range such as "Before 1950" and "2025+". */ openEnded: boolean; /** * Validation error text, if any */ error: string | undefined; /** * Additional description to show below the fieldset */ helpText: string | undefined; /** * Sets the form fields and fieldset in an invalid state */ invalid: boolean; /** * Ensures a child slider thumb has a value before allowing the containing form to submit */ required: boolean; /** * Whether to show the optional indicator after the label. */ optional: boolean; /** * The minimum allowed value in the range inputs * @default 0 */ min: string | undefined; /** * The maximum allowed value in the range inputs * @default 100 */ max: string | undefined; /** * Pass a value similar to step to create visual markers at that interval */ markers: number | undefined; /** * ets step on the range input to jump between values when dragging */ step: number | undefined; /** * Suffix used in text input fields and for the min and max values of the slider */ suffix: string | undefined; /** * Should only be used in special cases */ hiddenTextfield: boolean; /** * Formatter for the tooltip and input mask values */ valueFormatter: ((value: string, slot: SliderSlot) => string) | undefined; /** * Overrides {@link valueFormatter} for the tooltip. * * Use in open-ended sliders to show for example "300+ hk" instead of "Max" in the tooltip. */ tooltipFormatter: ((value: string, slot: SliderSlot) => string) | undefined; /** * Formatter for the min and max labels below the range. */ labelFormatter: ((slot: SliderSlot) => string) | undefined; /** @internal */ fieldset: HTMLFieldSetElement; /** @internal */ _invalidMessage: string; /** @internal */ _hasInternalError: boolean; /** @internal */ _showError: boolean; /** @internal */ _tabbableElements: Array; /** @internal */ _hasLabel: boolean; private _hasHelpTextSlot; constructor(); /** @internal */ get edgeMin(): string | undefined; /** @internal */ get edgeMax(): string | undefined; connectedCallback(): Promise; updated(changedProperties: PropertyValues): void; /** @internal */ get componentHasError(): boolean; /** @internal */ get errorText(): string; private _handleLabelSlotChange; get _label(): import("lit").TemplateResult<1>; helpTextSlotChange(): void; render(): import("lit").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { "w-slider": WarpSlider; } } export { WarpSlider };