import { ExtractPropTypes } from 'vue'; import { BigIntDecimal } from '../../../utils/bigInt'; import { focus, select, getPrecision, toPrecision, updated, mounted, unmounted, getDecimal, handleFocus, decrease, increase, handleInput, getNumPecision, displayValue, internalDecrease, internalIncrease, handleInputChange, mouseEvent, handleBlur, watchValue, setCurrentValue, dispatchDisplayedValue, getDisplayedValue, initService, getDisplayOnlyText, filterValue, handleClear, handleChange } from './renderless'; import { ISharedRenderlessFunctionParams, ISharedRenderlessParamUtils } from '../../../shared.type'; export type { ISharedRenderlessParamHooks } from '../../../shared.type'; export declare const $constants: { MAX: string; MIN: string; VALUENOW: string; DISABLED: string; KEY: string; VALUE: string; EVENT_NAME: { blur: string; change: string; }; COMPONENT_NAME: string; FILTER_OPTION: string[]; }; export declare const numericProps: { _constants: { type: ObjectConstructor; default: () => { MAX: string; MIN: string; VALUENOW: string; DISABLED: string; KEY: string; VALUE: string; EVENT_NAME: { blur: string; change: string; }; COMPONENT_NAME: string; FILTER_OPTION: string[]; }; }; allowEmpty: { type: BooleanConstructor; default: boolean; }; circulate: BooleanConstructor; controls: { type: BooleanConstructor; default: boolean; }; controlsPosition: { type: StringConstructor; default: string; }; disabled: BooleanConstructor; format: (StringConstructor | ObjectConstructor)[]; hideUnit: { type: BooleanConstructor; default: boolean; }; holdZero: { type: BooleanConstructor; default: boolean; }; label: StringConstructor; max: { type: (NumberConstructor | StringConstructor)[]; default: number; }; min: { type: (NumberConstructor | StringConstructor)[]; default: number; }; modelTruncation: { type: BooleanConstructor; default: boolean; }; modelValue: (NumberConstructor | StringConstructor | undefined)[]; mouseWheel: BooleanConstructor; name: StringConstructor; placeholder: StringConstructor; plugin: FunctionConstructor; precision: { type: NumberConstructor; validator(val: any): boolean; }; size: StringConstructor; step: { type: (NumberConstructor | StringConstructor)[]; default: number; }; stepStrictly: { type: BooleanConstructor; default: boolean; }; strictInput: { type: BooleanConstructor; default: boolean; }; stringMode: BooleanConstructor; tabindex: { type: StringConstructor; default: string; }; theme: { type: StringConstructor; default: string; }; unit: StringConstructor; unitCenter: { type: BooleanConstructor; default: boolean; }; validateEvent: { type: BooleanConstructor; default: boolean; }; displayOnly: { type: BooleanConstructor; default: boolean; }; showLeft: { type: BooleanConstructor; default: boolean; }; showEmptyValue: { type: BooleanConstructor; default: boolean; }; title: { type: StringConstructor; default: string; }; tip: StringConstructor; shape: StringConstructor; clearable: { type: BooleanConstructor; default: boolean; }; filter: { type: BooleanConstructor; default: boolean; }; blank: { type: BooleanConstructor; default: boolean; }; changeCompat: { type: BooleanConstructor; default: boolean; }; }; export type INumericProps = ExtractPropTypes; export type INumericConstants = typeof $constants; export interface INumericState { radioVal: string; currentValue: number | string; userInput: number | string; lastInput: number | string; inputStatus: boolean; decimal: BigIntDecimal; strictInput: boolean; inputSize: INumericSize; formSize: string; formDisabled: boolean; inputDisabled: boolean; displayValue: number | string; numPrecision: number; minDisabled: boolean; maxDisabled: boolean; controlsAtRight: boolean; format: INumericUnitPrecision; isDisplayOnly: boolean; } export interface INumericApi { focus: ReturnType; select: ReturnType; getPrecision: ReturnType; toPrecision: ReturnType; updated: ReturnType; mounted: ReturnType; unmounted: ReturnType; getDecimal: ReturnType; handleFocus: ReturnType; decrease: ReturnType; increase: ReturnType; handleInput: ReturnType; getNumPecision: ReturnType; displayValue: ReturnType; internalDecrease: ReturnType; internalIncrease: ReturnType; handleInputChange: ReturnType; mouseEvent: ReturnType; handleBlur: ReturnType; watchValue: ReturnType; setCurrentValue: ReturnType; dispatchDisplayedValue: ReturnType; getDisplayedValue: ReturnType; getDisplayOnlyText: ReturnType; filterValue: ReturnType; handleClear: ReturnType; handleChange: ReturnType; } export type INumericRenderlessParams = ISharedRenderlessFunctionParams & { api: INumericApi; state: INumericState; props: INumericProps; }; export type INumericRenderlessParamUtils = ISharedRenderlessParamUtils; export type INumericSize = 'medium' | 'small' | 'mini'; export interface INumericUnitPrecision { decimalSeparator: string; groupSeparator: string; fraction?: string; rounding?: string; zeroize: boolean; } export interface INumericInitStateParams extends Pick { $service: ReturnType; } export interface INumericGetEmitValueParams { newVal: number; emitValue: number | string | undefined; allowEmpty: boolean; defaultVal: number; bigNew: BigIntDecimal; oldVal: number; max: number; min: number; api: INumericApi; props: INumericProps; format: INumericState['format']; plugin: INumericProps['plugin']; stringMode: boolean; }