import type { Input as TextboxInput, TextboxEvent } from "../ebay-textbox/component-browser"; import type { WithNormalizedProps } from "../../global"; export interface State { value: number; min: number; max: number; } interface NumberInputInput extends Omit { label?: Marko.AttrTag<{ renderBody: Marko.Body; }>; "a11y-delete-text"?: Marko.HTMLAttributes["aria-label"]; "on-keydown"?: (event: TextboxEvent) => void; "on-keypress"?: (event: TextboxEvent) => void; "on-keyup"?: (event: TextboxEvent) => void; "on-change"?: (event: TextboxEvent) => void; "on-input-change"?: (event: TextboxEvent) => void; "on-focus"?: (event: TextboxEvent) => void; "on-blur"?: (event: TextboxEvent) => void; "on-delete-click"?: (event: TextboxEvent) => void; "on-increment"?: (event: TextboxEvent) => void; "on-decrement"?: (event: TextboxEvent) => void; } export interface Input extends WithNormalizedProps { } declare class NumberInput extends Marko.Component { textbox: HTMLInputElement; onCreate(): void; onMount(): void; onInput(input: Input): void; checkBoundary(value: any, inc?: number): number; updateInputValue(event: TextboxEvent): void; updateInputValueChange(event: TextboxEvent): void; handleAnimation(action: string): void; handleIncrement(event: { originalEvent: MouseEvent; }): void; handleDecrement(event: { originalEvent: MouseEvent; }): void; } export default NumberInput;