/**
 * ------------------------------------------------
 *  # Setup: Props
 * ------------------------------------------------
 */
export type DsgToggleSize = "xs" | "sm" | "md";
export interface DsgToggleProps {
    modelValue?: boolean;
    size?: DsgToggleSize;
    label?: string;
    subText?: string;
    disabled?: boolean;
}
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        'dsg-toggle--label'?(_: {}): any;
        'dsg-toggle--subtext'?(_: {}): any;
    };
    refs: {
        toggleCheckbox: HTMLInputElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<DsgToggleProps, {
    set: (value: boolean) => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    "update:modelValue": (newValue: boolean) => any;
    "before-toggle": (oldValue: boolean, newValue: boolean) => any;
    "after-toggle": (newValue: boolean) => any;
}, string, import('vue').PublicProps, Readonly<DsgToggleProps> & Readonly<{
    "onUpdate:modelValue"?: ((newValue: boolean) => any) | undefined;
    "onBefore-toggle"?: ((oldValue: boolean, newValue: boolean) => any) | undefined;
    "onAfter-toggle"?: ((newValue: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    toggleCheckbox: HTMLInputElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
