import type { ToggleSwitchProps } from 'primevue/toggleswitch';
interface LabelProps {
    [key: string]: unknown;
}
/**
 * @emits {boolean} update:modelValue - Fires when switcher value changes. Returns inverted value
 */
interface Props extends ToggleSwitchProps {
    /**
     * Switcher label text
     * @type {string}
     * @default ''
     */
    label?: string;
    /**
     * Positions label to the left of the switcher
     * @type {boolean}
     * @default false
     */
    labelLeft?: boolean;
    /**
     * Disables the switcher
     * @type {boolean}
     * @default false
     */
    disabled?: boolean;
    /**
     * Object with props, passed down to wt-label as props
     * @type {Object}
     * @default {}
     */
    labelProps?: LabelProps;
    /**
     * For controlled mode, when need to sync visual state with model
     * @type {boolean}
     * @default false
     */
    controlled?: boolean;
}
type __VLS_Props = Props;
type __VLS_ModelProps = {
    modelValue?: boolean;
};
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
declare var __VLS_14: {
    label: string;
    value: boolean;
    disabled: boolean;
};
type __VLS_Slots = {} & {
    label?: (props: typeof __VLS_14) => any;
};
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
    "onUpdate:modelValue"?: (...args: any[]) => any;
}>, {
    label: string;
    disabled: boolean;
    labelProps: LabelProps;
    labelLeft: boolean;
    controlled: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
