import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { DefineComponent } from 'vue';
import { PublicProps } from 'vue';

declare const __VLS_component: DefineComponent<CheckboxProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:checked": (value: boolean | (string | number)[]) => any;
}, string, PublicProps, Readonly<CheckboxProps> & Readonly<{
"onUpdate:checked"?: ((value: boolean | (string | number)[]) => any) | undefined;
}>, {
id: string;
label: string;
disabled: boolean;
value: string | number;
modelValue: boolean | Array<string | number>;
hasError: boolean;
errorText: string;
hintText: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        hint?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;

declare type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare interface CheckboxProps {
    /**
     * Whether the checkbox is currently checked based on the current value.
     * Either defined by a boolean, or whether `checked` as an array includes `value`.
     */
    checked: boolean | Array<string | number>;
    /**
     * Whether the checkbox is in an error state (optional). For error styling without error text.
     *
     * @deprecated Just pass `error-text` instead.
     */
    hasError?: boolean;
    /**
     * Unique ID for the checkbox, required for accessibility purposes
     */
    id?: string;
    /**
     * Label text to display with checkbox
     */
    label?: string;
    /**
     * Error text to display. Replaces `hintText` (if provided) and adds error styling (overrides `hasError`).
     */
    errorText?: string;
    /**
     * Displays text below the input; hidden when the isReadOnly prop is truthy.
     */
    hintText?: string;
    /**
     * @deprecated use the `checked` prop instead
     */
    modelValue?: boolean | Array<string | number>;
    /**
     * The value of the checkbox.
     */
    value?: string | number;
    /**
     * Whether the checkbox is disabled.
     */
    disabled?: boolean;
}

declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;

export { }
