import { IEventEmitter } from '@breadstone/mosaik-elements'; import { type ISpinEventDetail } from '../../../events'; import { UpDownSpinPosition } from '../../../Types/UpDownSpinPosition'; import { CustomElement } from '../../Abstracts/CustomElement'; import type { IUpDownSpinnerElementProps } from './IUpDownSpinnerElementProps'; declare const UpDownSpinnerElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Sizeable").ISizeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Appearanceable").IAppearanceableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Orientable").IOrientableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Disableable").IDisableableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * UpDownSpinner - Increment/decrement controls for numeric input fields and value adjustments. * * @description * The UpDownSpinner element provides a pair of increase/decrease buttons typically used alongside * numeric inputs, date pickers, or any value that can be adjusted incrementally. Features auto-repeat * functionality when buttons are held down, customizable icons, delay/interval settings, and support * for disabling individual buttons when limits are reached. Commonly used in number inputs, quantity * selectors, and stepper controls. * * @name UpDownSpinner * @element mosaik-updown-spinner * @category Primitives * * @slot - Default content slot displayed between the spinner buttons * @slot prefix - Content displayed before the default slot * @slot suffix - Content displayed after the default slot * * @csspart content - Container for slotted content (prefix, default, suffix) * @csspart decrease - The decrease/down button * @csspart increase - The increase/up button * * @cssprop {String} --up-down-spinner-font-family - The down spinner font family CSS custom property. * @cssprop {String} --up-down-spinner-font-letter-spacing - The down spinner font letter spacing CSS custom property. * @cssprop {String} --up-down-spinner-font-line-height - The down spinner font line height CSS custom property. * @cssprop {String} --up-down-spinner-font-size - The down spinner font size CSS custom property. * @cssprop {String} --up-down-spinner-font-text-decoration - The down spinner font text decoration CSS custom property. * @cssprop {String} --up-down-spinner-font-text-transform - The down spinner font text transform CSS custom property. * @cssprop {String} --up-down-spinner-font-weight - The down spinner font weight CSS custom property. * @cssprop {String} --up-down-spinner-gap - The down spinner gap CSS custom property. * @cssprop {String} --up-down-spinner-padding-bottom - The down spinner padding bottom CSS custom property. * @cssprop {String} --up-down-spinner-padding-left - The down spinner padding left CSS custom property. * @cssprop {String} --up-down-spinner-padding-right - The down spinner padding right CSS custom property. * @cssprop {String} --up-down-spinner-padding-top - The down spinner padding top CSS custom property. * @cssprop {String} --up-down-spinner-shadow - The down spinner shadow CSS custom property. * @cssprop {String} --up-down-spinner-shadow-blur - The down spinner shadow blur CSS custom property. * @cssprop {String} --up-down-spinner-shadow-color - The down spinner shadow color CSS custom property. * @cssprop {String} --up-down-spinner-shadow-offset-x - The down spinner shadow offset x CSS custom property. * @cssprop {String} --up-down-spinner-shadow-offset-y - The down spinner shadow offset y CSS custom property. * @cssprop {String} --up-down-spinner-shadow-spread - The down spinner shadow spread CSS custom property. * @cssprop {String} --up-down-spinner-transition-duration - The down spinner transition duration CSS custom property. * @cssprop {String} --up-down-spinner-transition-mode - The down spinner transition mode CSS custom property. * @cssprop {String} --up-down-spinner-transition-property - The down spinner transition property CSS custom property. * @cssprop {String} --up-down-spinner-translate - The down spinner translate CSS custom property. * * @fires spinned {SpinEvent} - Fired when increase or decrease is triggered, includes direction * * @dependency mosaik-repeat-button - The Repeat Button element. * * @example * Basic spinner with numeric input: * ```html *
* * *
* * * ``` * * @example * Custom icons and styling: * ```html * * * ``` * * @example * With disabled states at limits: * ```html * * * * * ``` * * @example * Horizontal orientation with custom timing: * ```html * * * ``` * * @public */ export declare class UpDownSpinnerElement extends UpDownSpinnerElement_base implements IUpDownSpinnerElementProps { private readonly _spinned; private _delay; private _interval; private _position; private _increaseDisabled; private _increaseIcon; private _decreaseDisabled; private _decreaseIcon; private _focusable; /** * @public */ constructor(); /** * Returns the `is` property. * The `is` property represents natural name of this element. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `delay` property. * * @public * @attr */ get delay(): number; set delay(value: number); /** * Gets or sets the `interval` property. * * @public * @attr */ get interval(): number; set interval(value: number); /** * Gets or sets the `position` property. * * @public * @attr */ get position(): UpDownSpinPosition; set position(value: UpDownSpinPosition); /** * Gets or sets the `increaseDisabled` property. * * @public * @attr */ get increaseDisabled(): boolean; set increaseDisabled(value: boolean); /** * Gets or sets the `increaseIcon` property. * * @public * @attr */ get increaseIcon(): string; set increaseIcon(value: string); /** * Gets or sets the `decreaseDisabled` property. * * @public * @attr */ get decreaseDisabled(): boolean; set decreaseDisabled(value: boolean); /** * Gets or sets the `decreaseIcon` property. * * @public * @attr */ get decreaseIcon(): string; set decreaseIcon(value: string); /** * Gets or sets the `focusable` property. * * @public * @attr */ get focusable(): boolean; set focusable(value: boolean); /** * Called when the element is spinned. * Provides reference to `ISpinEventDetail` as event argument. * * @public * @readonly * @eventProperty */ get spinned(): IEventEmitter; /** * Emits the `spinned` event. * * @protected */ protected onSpinned(args: ISpinEventDetail): void; /** * @private * @template */ onIncrease(event?: Event): void; /** * @private * @template */ onDecrease(event?: Event): void; } /** * @public */ export declare namespace UpDownSpinnerElement { type Props = IUpDownSpinnerElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-updown-spinner': UpDownSpinnerElement; } } export {}; //# sourceMappingURL=UpDownSpinnerElement.d.ts.map