/** * @license * Copyright 2023 Nuraly, Laabidi Aymen * SPDX-License-Identifier: MIT */ import { LitElement } from 'lit'; type Constructor = new (...args: any[]) => T; /** * Interface for components that support number operations */ export interface NumberCapable { /** * Increment the number value */ increment(): void; /** * Decrement the number value */ decrement(): void; /** * Set the step attribute for number inputs * @param step - The step value */ setStep(step: string | undefined): void; /** * Validate if a step value is valid * @param step - The step value to validate * @returns True if valid */ isValidStep(step: string | undefined): boolean; } /** * Mixin that provides number input capabilities to input components * * @param superClass - The base class to extend * @returns Enhanced class with number capabilities * * @example * ```typescript * export class MyInput extends NumberMixin(LitElement) { * @query('input') input!: HTMLInputElement; * * handleUpClick() { * this.increment(); * } * } * ``` */ export declare const NumberMixin: >(superClass: T) => Constructor & T; export {}; //# sourceMappingURL=number-mixin.d.ts.map