import Vue from 'vue';
import { ChangeSource, TdInputNumberProps } from './type';
import { ClassName, TNodeReturnValue } from '../common';
declare type InputNumberEvent = {
    on: {
        input?: (e: InputEvent) => void;
        click?: (e: MouseEvent) => void;
        blur?: (e: FocusEvent) => void;
        focus?: (e: FocusEvent) => void;
        keydown?: (e: KeyboardEvent) => void;
        keyup?: (e: KeyboardEvent) => void;
        keypress?: (e: KeyboardEvent) => void;
    };
};
declare type ChangeContextEvent = InputEvent | MouseEvent | FocusEvent;
declare type InputNumberAttr = {
    attrs: {
        disabled?: boolean;
        readonly?: boolean;
        autocomplete?: string;
        ref: string;
        placeholder: string;
        unselectable?: string;
        tips: TdInputNumberProps['tips'];
        autoWidth: boolean;
        align: TdInputNumberProps['align'];
        status: TdInputNumberProps['status'];
    };
};
declare const _default: import("vue/types/vue").ExtendedVue<Vue, {
    formDisabled: any;
    userInput: any;
    filterValue: any;
    isError: boolean;
    inputting: boolean;
}, {
    decreaseIcon(): TNodeReturnValue;
    increaseIcon(): TNodeReturnValue;
    handleAdd(e: MouseEvent): void;
    handleReduce(e: MouseEvent): void;
    getClickValue(op: string): number;
    handleInput(val: string, e: InputEvent): void;
    handleAction(value: number, actionType: ChangeSource, e: ChangeContextEvent): void;
    toValidStringNumber(s: string): string;
    toValidNumber(s: string): any;
    handleChange(value: number, ctx: {
        type: ChangeSource;
        e: ChangeContextEvent;
    }): void;
    handleBlur(e: FocusEvent): Promise<void>;
    handleFocus(e: FocusEvent): void;
    handleKeydownEnter(e: KeyboardEvent): void;
    handleKeydown(e: KeyboardEvent): void;
    handleKey(e: KeyboardEvent): void;
    handleKeyup(e: KeyboardEvent): void;
    handleKeypress(e: KeyboardEvent): void;
    handleStartInput(): void;
    handleEndInput(e: FocusEvent): void;
    updateValue(v: number): void;
    handleInputError(visible: boolean): void;
    isValid(v: string): boolean;
    isValidNumber(v: number): boolean;
    empty(v: string): boolean;
    clearInput(): void;
    clearFilterValue(): void;
    multiE(s: string): boolean;
    multiDot(s: string): boolean;
    multiNegative(s: string): boolean;
    toDecimalPlaces(value: number): number;
}, {
    tDisabled: boolean;
    disabledReduce: boolean;
    disabledAdd: boolean;
    valueDecimalPlaces: number;
    stepDecimalPlaces: number;
    digitsNum: number;
    reduceClasses: ClassName;
    reduceEvents: InputNumberEvent;
    addClasses: ClassName;
    addEvents: InputNumberEvent;
    cmptWrapClasses: ClassName;
    inputEvents: InputNumberEvent;
    inputAttrs: InputNumberAttr;
    displayValue: string | number;
}, {
    align: "center" | "left" | "right";
    autoWidth: boolean;
    decimalPlaces: any;
    disabled: boolean;
    format: (value: number) => string | number;
    inputProps: import("../input").TdInputProps;
    max: number;
    min: number;
    placeholder: any;
    readonly: boolean;
    size: "small" | "medium" | "large";
    status: "error" | "success" | "warning";
    step: number;
    theme: "normal" | "column" | "row";
    tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    value: any;
    defaultValue: any;
    onBlur: (value: number, context: {
        e: FocusEvent;
    }) => void;
    onChange: (value: number, context: import("./type").ChangeContext) => void;
    onEnter: (value: number, context: {
        e: KeyboardEvent;
    }) => void;
    onFocus: (value: number, context: {
        e: FocusEvent;
    }) => void;
    onKeydown: (value: number, context: {
        e: KeyboardEvent;
    }) => void;
    onKeypress: (value: number, context: {
        e: KeyboardEvent;
    }) => void;
    onKeyup: (value: number, context: {
        e: KeyboardEvent;
    }) => void;
}>;
export default _default;
