import { HTMLAttributes, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { PolymorphicProps } from '../factory';
import { RootEmits, RootProps } from './number-input.types';
import { FocusChangeDetails, ValueChangeDetails, ValueInvalidDetails } from '@zag-js/number-input';
export interface NumberInputRootBaseProps extends RootProps, PolymorphicProps {
}
export interface NumberInputRootProps extends NumberInputRootBaseProps,
/**
* @vue-ignore
*/
HTMLAttributes {
}
export interface NumberInputRootEmits extends RootEmits {
}
declare const _default: __VLS_WithTemplateSlots< DefineComponent any;
valueChange: (details: ValueChangeDetails) => any;
"update:modelValue": (value: string) => any;
valueInvalid: (details: ValueInvalidDetails) => any;
}, string, PublicProps, Readonly & Readonly<{
onFocusChange?: ((details: FocusChangeDetails) => any) | undefined;
onValueChange?: ((details: ValueChangeDetails) => any) | undefined;
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
onValueInvalid?: ((details: ValueInvalidDetails) => any) | undefined;
}>, {
invalid: boolean;
disabled: boolean;
required: boolean;
readOnly: boolean;
allowOverflow: boolean;
allowMouseWheel: boolean;
clampValueOnBlur: boolean;
focusInputOnChange: boolean;
spinOnPress: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
};
};