import { PropType, Ref } from 'vue';
import Option from '../../types/Option.ts';
declare const _default: import("vue").DefineComponent<{
    /**
     * Value for v-model
     */
    modelValue: {
        type: PropType<string | number | string[] | number[] | null>;
        default: null;
    };
    /**
     * Html id
     */
    id: {
        type: StringConstructor;
        required: true;
    };
    /**
     * Label for input
     */
    label: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Attribute hint
     */
    hint: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Options
     */
    options: {
        type: PropType<Option[]>;
        required: true;
    };
    /**
     * Placeholder
     */
    placeholder: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Enable or disable validator
     */
    validatorEnabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    inputRef: Ref<HTMLInputElement | null>;
    validator: {
        onInvalid: (event: Event) => void;
        getInvalidMessage: () => string | null;
        setCustomError: (data: string) => void;
    };
}, unknown, {}, {
    /**
     * Hint id is generated
     */
    getHintId(): string;
    /**
     * On input event
     *
     * @param event
     */
    onInput(event: Event): void;
    /**
     * On invalid event
     *
     * @param event
     */
    onInvalid(event: Event): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Value for v-model
     */
    modelValue: {
        type: PropType<string | number | string[] | number[] | null>;
        default: null;
    };
    /**
     * Html id
     */
    id: {
        type: StringConstructor;
        required: true;
    };
    /**
     * Label for input
     */
    label: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Attribute hint
     */
    hint: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Options
     */
    options: {
        type: PropType<Option[]>;
        required: true;
    };
    /**
     * Placeholder
     */
    placeholder: {
        type: StringConstructor;
        default: undefined;
    };
    /**
     * Enable or disable validator
     */
    validatorEnabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}, {
    label: string;
    modelValue: string | number | string[] | number[] | null;
    hint: string;
    validatorEnabled: boolean;
    placeholder: string;
}, {}>;
export default _default;
