import { PropType } from "vue";
import type { CampoDensidade, CampoOpcao, CampoOpcaoBruta, CampoTipo, CampoValor, CampoValorMultiplo, CampoVariante } from "../../tipos";
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    /**
     * Aceita valor simples (text-like) ou lista de valores (checkbox/select multiple).
     * O componente não converte tipos automaticamente: mantém o que receber.
     */
    modelValue: {
        type: PropType<CampoValor | CampoValorMultiplo>;
        default: string;
    };
    type: {
        type: PropType<CampoTipo>;
        default: string;
    };
    label: StringConstructor;
    placeholder: StringConstructor;
    disabled: BooleanConstructor;
    error: BooleanConstructor;
    errorMessages: {
        type: PropType<string | string[]>;
        default: () => never[];
    };
    hint: StringConstructor;
    persistentHint: BooleanConstructor;
    rows: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Para select/radio/checkbox.
     * Aceita lista já normalizada ({ label, value }) ou valores primitivos.
     */
    options: {
        type: PropType<Array<CampoOpcaoBruta>>;
        default: () => never[];
    };
    clearable: BooleanConstructor;
    variant: {
        type: PropType<CampoVariante>;
        default: string;
    };
    density: {
        type: PropType<CampoDensidade>;
        default: string;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    row: BooleanConstructor;
    showPasswordToggle: BooleanConstructor;
    multiple: BooleanConstructor;
    chips: BooleanConstructor;
}>, {
    attrs: {
        [x: string]: unknown;
    };
    value: import("vue").WritableComputedRef<CampoValor | CampoValorMultiplo, CampoValor | CampoValorMultiplo>;
    isTextLike: import("vue").ComputedRef<boolean>;
    inputHtmlType: import("vue").ComputedRef<"text" | "password">;
    inputMode: import("vue").ComputedRef<"tel" | "decimal" | "numeric" | undefined>;
    internalColor: import("vue").ComputedRef<string | undefined>;
    showPassword: import("vue").Ref<boolean, boolean>;
    togglePassword: () => void;
    onInput: (e: Event) => void;
    onFocus: () => void;
    onBlur: () => void;
    computedItems: import("vue").ComputedRef<CampoOpcao[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "focus" | "blur")[], "update:modelValue" | "change" | "focus" | "blur", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Aceita valor simples (text-like) ou lista de valores (checkbox/select multiple).
     * O componente não converte tipos automaticamente: mantém o que receber.
     */
    modelValue: {
        type: PropType<CampoValor | CampoValorMultiplo>;
        default: string;
    };
    type: {
        type: PropType<CampoTipo>;
        default: string;
    };
    label: StringConstructor;
    placeholder: StringConstructor;
    disabled: BooleanConstructor;
    error: BooleanConstructor;
    errorMessages: {
        type: PropType<string | string[]>;
        default: () => never[];
    };
    hint: StringConstructor;
    persistentHint: BooleanConstructor;
    rows: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Para select/radio/checkbox.
     * Aceita lista já normalizada ({ label, value }) ou valores primitivos.
     */
    options: {
        type: PropType<Array<CampoOpcaoBruta>>;
        default: () => never[];
    };
    clearable: BooleanConstructor;
    variant: {
        type: PropType<CampoVariante>;
        default: string;
    };
    density: {
        type: PropType<CampoDensidade>;
        default: string;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    row: BooleanConstructor;
    showPasswordToggle: BooleanConstructor;
    multiple: BooleanConstructor;
    chips: BooleanConstructor;
}>> & Readonly<{
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
    onFocus?: ((...args: any[]) => any) | undefined;
    onBlur?: ((...args: any[]) => any) | undefined;
}>, {
    color: string;
    type: CampoTipo;
    variant: CampoVariante;
    disabled: boolean;
    error: boolean;
    persistentHint: boolean;
    clearable: boolean;
    row: boolean;
    showPasswordToggle: boolean;
    multiple: boolean;
    chips: boolean;
    modelValue: CampoValor | CampoValorMultiplo;
    errorMessages: string | string[];
    rows: number;
    options: CampoOpcaoBruta[];
    density: CampoDensidade;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const _default: typeof __VLS_export;
export default _default;
