import Vue from 'vue';
import { ChangeSource } 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?: any;
        autocomplete?: string;
        ref: string;
        placeholder: string;
    };
};
declare const _default: import("vue/types/vue").ExtendedVue<Vue, {
    userInput: any;
    filterValue: any;
    isError: boolean;
    inputing: boolean;
}, {
    decreaseIcon(): TNodeReturnValue;
    increaseIcon(): TNodeReturnValue;
    handleAdd(e: MouseEvent): void;
    handleReduce(e: MouseEvent): void;
    handleInput(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;
}, {
    disabledReduce: boolean;
    disabledAdd: boolean;
    valueDecimalPlaces: number;
    stepDecimalPlaces: number;
    digitsNum: number;
    reduceClasses: ClassName;
    reduceEvents: InputNumberEvent;
    addClasses: ClassName;
    addEvents: InputNumberEvent;
    cmptWrapClasses: ClassName;
    inputWrapProps: ClassName;
    inputClasses: ClassName;
    inputEvents: InputNumberEvent;
    inputAttrs: InputNumberAttr;
    displayValue: string | number;
}, {
    decimalPlaces: any;
    disabled: boolean;
    format: (value: number) => string | number;
    max: number;
    min: number;
    placeholder: string;
    size: "small" | "medium" | "large";
    step: number;
    theme: "normal" | "column" | "row";
    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;
