import { FilterProp } from '../../composables/useFilterable/useFilterable';
import { locales as defaultLocales } from './locales';
type __VLS_Props = {
    modelValue?: FilterProp;
    modale?: boolean;
    locales?: typeof defaultLocales;
    zIndex?: number;
};
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Partial<Record<string, (_: {
        props: {
            modelValue: any;
            'onUpdate:modelValue': (value: unknown) => void;
        };
    }) => any>>;
    refs: {
        drawerBtnRef: import('vue').CreateComponentPublicInstanceWithMixins<{
            style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
            density: import('vuetify/lib/composables/density.mjs').Density;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
            disabled: boolean;
            size: string | number;
            replace: boolean;
            exact: boolean;
            symbol: any;
            flat: boolean;
            block: boolean;
            readonly: boolean;
            slim: boolean;
            stacked: boolean;
            ripple: boolean | {
                class?: string | undefined;
                keys?: string[] | undefined;
            };
        } & {
            theme?: string | undefined;
            class?: any;
            border?: string | number | boolean | undefined;
            elevation?: string | number | undefined;
            rounded?: string | number | boolean | undefined;
            color?: string | undefined;
            value?: any;
            selectedClass?: string | undefined;
            height?: string | number | undefined;
            maxHeight?: string | number | undefined;
            maxWidth?: string | number | undefined;
            minHeight?: string | number | undefined;
            minWidth?: string | number | undefined;
            width?: string | number | undefined;
            location?: import('vuetify/lib/types.mjs').Anchor | null | undefined;
            loading?: string | boolean | undefined;
            position?: "absolute" | "fixed" | "relative" | "static" | "sticky" | undefined;
            href?: string | undefined;
            to?: string | import('vue-router').RouteLocationAsPathGeneric | import('vue-router').RouteLocationAsRelativeGeneric | undefined;
            active?: boolean | undefined;
            activeColor?: string | undefined;
            baseColor?: string | undefined;
            icon?: boolean | import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            prependIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            appendIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            spaced?: "both" | "end" | "start" | undefined;
            text?: string | number | boolean | undefined;
        } & {
            $children?: {
                default?: (() => import('vue').VNodeChild) | undefined;
                prepend?: (() => import('vue').VNodeChild) | undefined;
                append?: (() => import('vue').VNodeChild) | undefined;
                loader?: (() => import('vue').VNodeChild) | undefined;
            } | {
                $stable?: boolean | undefined;
            } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
            "v-slots"?: {
                default?: false | (() => import('vue').VNodeChild) | undefined;
                prepend?: false | (() => import('vue').VNodeChild) | undefined;
                append?: false | (() => import('vue').VNodeChild) | undefined;
                loader?: false | (() => import('vue').VNodeChild) | undefined;
            } | undefined;
        } & {
            "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:loader"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
        } & {
            "onGroup:selected"?: ((val: {
                value: boolean;
            }) => any) | undefined;
        }, {
            group: import('vuetify/lib/composables/group.mjs').GroupItemProvide | null;
        }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            "group:selected": (val: {
                value: boolean;
            }) => true;
        }, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, {
            style: import('vue').StyleValue;
            density: import('vuetify/lib/composables/density.mjs').Density;
            rounded: string | number | boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
            disabled: boolean;
            size: string | number;
            replace: boolean;
            exact: boolean;
            active: boolean;
            symbol: any;
            flat: boolean;
            block: boolean;
            readonly: boolean;
            slim: boolean;
            stacked: boolean;
            ripple: boolean | {
                class?: string | undefined;
                keys?: string[] | undefined;
            } | undefined;
            text: string | number | boolean;
        }, true, {}, import('vue').SlotsType<Partial<{
            default: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            prepend: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            append: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            loader: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
        }>>, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, {
            style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
            density: import('vuetify/lib/composables/density.mjs').Density;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
            disabled: boolean;
            size: string | number;
            replace: boolean;
            exact: boolean;
            symbol: any;
            flat: boolean;
            block: boolean;
            readonly: boolean;
            slim: boolean;
            stacked: boolean;
            ripple: boolean | {
                class?: string | undefined;
                keys?: string[] | undefined;
            };
        } & {
            theme?: string | undefined;
            class?: any;
            border?: string | number | boolean | undefined;
            elevation?: string | number | undefined;
            rounded?: string | number | boolean | undefined;
            color?: string | undefined;
            value?: any;
            selectedClass?: string | undefined;
            height?: string | number | undefined;
            maxHeight?: string | number | undefined;
            maxWidth?: string | number | undefined;
            minHeight?: string | number | undefined;
            minWidth?: string | number | undefined;
            width?: string | number | undefined;
            location?: import('vuetify/lib/types.mjs').Anchor | null | undefined;
            loading?: string | boolean | undefined;
            position?: "absolute" | "fixed" | "relative" | "static" | "sticky" | undefined;
            href?: string | undefined;
            to?: string | import('vue-router').RouteLocationAsPathGeneric | import('vue-router').RouteLocationAsRelativeGeneric | undefined;
            active?: boolean | undefined;
            activeColor?: string | undefined;
            baseColor?: string | undefined;
            icon?: boolean | import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            prependIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            appendIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
            spaced?: "both" | "end" | "start" | undefined;
            text?: string | number | boolean | undefined;
        } & {
            $children?: {
                default?: (() => import('vue').VNodeChild) | undefined;
                prepend?: (() => import('vue').VNodeChild) | undefined;
                append?: (() => import('vue').VNodeChild) | undefined;
                loader?: (() => import('vue').VNodeChild) | undefined;
            } | {
                $stable?: boolean | undefined;
            } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
            "v-slots"?: {
                default?: false | (() => import('vue').VNodeChild) | undefined;
                prepend?: false | (() => import('vue').VNodeChild) | undefined;
                append?: false | (() => import('vue').VNodeChild) | undefined;
                loader?: false | (() => import('vue').VNodeChild) | undefined;
            } | undefined;
        } & {
            "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:loader"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
        } & {
            "onGroup:selected"?: ((val: {
                value: boolean;
            }) => any) | undefined;
        }, {
            group: import('vuetify/lib/composables/group.mjs').GroupItemProvide | null;
        }, {}, {}, {}, {
            style: import('vue').StyleValue;
            density: import('vuetify/lib/composables/density.mjs').Density;
            rounded: string | number | boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
            disabled: boolean;
            size: string | number;
            replace: boolean;
            exact: boolean;
            active: boolean;
            symbol: any;
            flat: boolean;
            block: boolean;
            readonly: boolean;
            slim: boolean;
            stacked: boolean;
            ripple: boolean | {
                class?: string | undefined;
                keys?: string[] | undefined;
            } | undefined;
            text: string | number | boolean;
        }> | null;
        drawerRef: import('vue').CreateComponentPublicInstanceWithMixins<{
            style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
            mobile: boolean | null;
            order: string | number;
            absolute: boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            retainFocus: boolean;
            captureFocus: boolean;
            disableResizeWatcher: boolean;
            disableRouteWatcher: boolean;
            expandOnHover: boolean;
            floating: boolean;
            modelValue: boolean | null;
            permanent: boolean;
            rail: boolean | null;
            railWidth: string | number;
            scrim: string | boolean;
            temporary: boolean;
            persistent: boolean;
            touchless: boolean;
            width: string | number;
            location: "bottom" | "end" | "left" | "right" | "start" | "top";
            sticky: boolean;
        } & {
            theme?: string | undefined;
            class?: any;
            mobileBreakpoint?: number | import('vuetify/lib/types.mjs').DisplayBreakpoint | undefined;
            name?: string | undefined;
            border?: string | number | boolean | undefined;
            elevation?: string | number | undefined;
            rounded?: string | number | boolean | undefined;
            closeDelay?: string | number | undefined;
            openDelay?: string | number | undefined;
            color?: string | undefined;
            image?: string | undefined;
        } & {
            $children?: {
                default?: (() => import('vue').VNodeChild) | undefined;
                prepend?: (() => import('vue').VNodeChild) | undefined;
                append?: (() => import('vue').VNodeChild) | undefined;
                image?: ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            } | {
                $stable?: boolean | undefined;
            } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
            "v-slots"?: {
                default?: false | (() => import('vue').VNodeChild) | undefined;
                prepend?: false | (() => import('vue').VNodeChild) | undefined;
                append?: false | (() => import('vue').VNodeChild) | undefined;
                image?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            } | undefined;
        } & {
            "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:image"?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
        } & {
            "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
            "onUpdate:rail"?: ((val: boolean) => any) | undefined;
        }, {
            isStuck: import('vue').ShallowRef<"bottom" | "top" | boolean, "bottom" | "top" | boolean>;
        }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            "update:modelValue": (val: boolean) => true;
            "update:rail": (val: boolean) => true;
        }, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, {
            style: import('vue').StyleValue;
            mobile: boolean | null;
            order: string | number;
            absolute: boolean;
            rounded: string | number | boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            retainFocus: boolean;
            captureFocus: boolean;
            disableResizeWatcher: boolean;
            disableRouteWatcher: boolean;
            expandOnHover: boolean;
            floating: boolean;
            modelValue: boolean | null;
            permanent: boolean;
            rail: boolean | null;
            railWidth: string | number;
            scrim: string | boolean;
            temporary: boolean;
            persistent: boolean;
            touchless: boolean;
            width: string | number;
            location: "bottom" | "end" | "left" | "right" | "start" | "top";
            sticky: boolean;
        }, true, {}, import('vue').SlotsType<Partial<{
            default: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            prepend: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            append: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
            image: (arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
                [key: string]: any;
            }>[];
        }>>, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, {
            style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
            mobile: boolean | null;
            order: string | number;
            absolute: boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            retainFocus: boolean;
            captureFocus: boolean;
            disableResizeWatcher: boolean;
            disableRouteWatcher: boolean;
            expandOnHover: boolean;
            floating: boolean;
            modelValue: boolean | null;
            permanent: boolean;
            rail: boolean | null;
            railWidth: string | number;
            scrim: string | boolean;
            temporary: boolean;
            persistent: boolean;
            touchless: boolean;
            width: string | number;
            location: "bottom" | "end" | "left" | "right" | "start" | "top";
            sticky: boolean;
        } & {
            theme?: string | undefined;
            class?: any;
            mobileBreakpoint?: number | import('vuetify/lib/types.mjs').DisplayBreakpoint | undefined;
            name?: string | undefined;
            border?: string | number | boolean | undefined;
            elevation?: string | number | undefined;
            rounded?: string | number | boolean | undefined;
            closeDelay?: string | number | undefined;
            openDelay?: string | number | undefined;
            color?: string | undefined;
            image?: string | undefined;
        } & {
            $children?: {
                default?: (() => import('vue').VNodeChild) | undefined;
                prepend?: (() => import('vue').VNodeChild) | undefined;
                append?: (() => import('vue').VNodeChild) | undefined;
                image?: ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            } | {
                $stable?: boolean | undefined;
            } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
            "v-slots"?: {
                default?: false | (() => import('vue').VNodeChild) | undefined;
                prepend?: false | (() => import('vue').VNodeChild) | undefined;
                append?: false | (() => import('vue').VNodeChild) | undefined;
                image?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            } | undefined;
        } & {
            "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
            "v-slot:image"?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
            "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
        } & {
            "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
            "onUpdate:rail"?: ((val: boolean) => any) | undefined;
        }, {
            isStuck: import('vue').ShallowRef<"bottom" | "top" | boolean, "bottom" | "top" | boolean>;
        }, {}, {}, {}, {
            style: import('vue').StyleValue;
            mobile: boolean | null;
            order: string | number;
            absolute: boolean;
            rounded: string | number | boolean;
            tile: boolean;
            tag: string | import('vuetify/lib/types.mjs').JSXComponent;
            retainFocus: boolean;
            captureFocus: boolean;
            disableResizeWatcher: boolean;
            disableRouteWatcher: boolean;
            expandOnHover: boolean;
            floating: boolean;
            modelValue: boolean | null;
            permanent: boolean;
            rail: boolean | null;
            railWidth: string | number;
            scrim: string | boolean;
            temporary: boolean;
            persistent: boolean;
            touchless: boolean;
            width: string | number;
            location: "bottom" | "end" | "left" | "right" | "start" | "top";
            sticky: boolean;
        }> | null;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "update:modelValue": () => any;
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
    "onUpdate:modelValue"?: (() => any) | undefined;
}>, {
    locales: typeof defaultLocales;
    modelValue: FilterProp;
    zIndex: number;
    modale: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    drawerBtnRef: import('vue').CreateComponentPublicInstanceWithMixins<{
        style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
        density: import('vuetify/lib/composables/density.mjs').Density;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
        disabled: boolean;
        size: string | number;
        replace: boolean;
        exact: boolean;
        symbol: any;
        flat: boolean;
        block: boolean;
        readonly: boolean;
        slim: boolean;
        stacked: boolean;
        ripple: boolean | {
            class?: string | undefined;
            keys?: string[] | undefined;
        };
    } & {
        theme?: string | undefined;
        class?: any;
        border?: string | number | boolean | undefined;
        elevation?: string | number | undefined;
        rounded?: string | number | boolean | undefined;
        color?: string | undefined;
        value?: any;
        selectedClass?: string | undefined;
        height?: string | number | undefined;
        maxHeight?: string | number | undefined;
        maxWidth?: string | number | undefined;
        minHeight?: string | number | undefined;
        minWidth?: string | number | undefined;
        width?: string | number | undefined;
        location?: import('vuetify/lib/types.mjs').Anchor | null | undefined;
        loading?: string | boolean | undefined;
        position?: "absolute" | "fixed" | "relative" | "static" | "sticky" | undefined;
        href?: string | undefined;
        to?: string | import('vue-router').RouteLocationAsPathGeneric | import('vue-router').RouteLocationAsRelativeGeneric | undefined;
        active?: boolean | undefined;
        activeColor?: string | undefined;
        baseColor?: string | undefined;
        icon?: boolean | import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        prependIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        appendIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        spaced?: "both" | "end" | "start" | undefined;
        text?: string | number | boolean | undefined;
    } & {
        $children?: {
            default?: (() => import('vue').VNodeChild) | undefined;
            prepend?: (() => import('vue').VNodeChild) | undefined;
            append?: (() => import('vue').VNodeChild) | undefined;
            loader?: (() => import('vue').VNodeChild) | undefined;
        } | {
            $stable?: boolean | undefined;
        } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
        "v-slots"?: {
            default?: false | (() => import('vue').VNodeChild) | undefined;
            prepend?: false | (() => import('vue').VNodeChild) | undefined;
            append?: false | (() => import('vue').VNodeChild) | undefined;
            loader?: false | (() => import('vue').VNodeChild) | undefined;
        } | undefined;
    } & {
        "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:loader"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
    } & {
        "onGroup:selected"?: ((val: {
            value: boolean;
        }) => any) | undefined;
    }, {
        group: import('vuetify/lib/composables/group.mjs').GroupItemProvide | null;
    }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        "group:selected": (val: {
            value: boolean;
        }) => true;
    }, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, {
        style: import('vue').StyleValue;
        density: import('vuetify/lib/composables/density.mjs').Density;
        rounded: string | number | boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
        disabled: boolean;
        size: string | number;
        replace: boolean;
        exact: boolean;
        active: boolean;
        symbol: any;
        flat: boolean;
        block: boolean;
        readonly: boolean;
        slim: boolean;
        stacked: boolean;
        ripple: boolean | {
            class?: string | undefined;
            keys?: string[] | undefined;
        } | undefined;
        text: string | number | boolean;
    }, true, {}, import('vue').SlotsType<Partial<{
        default: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        prepend: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        append: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        loader: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
    }>>, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, {
        style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
        density: import('vuetify/lib/composables/density.mjs').Density;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
        disabled: boolean;
        size: string | number;
        replace: boolean;
        exact: boolean;
        symbol: any;
        flat: boolean;
        block: boolean;
        readonly: boolean;
        slim: boolean;
        stacked: boolean;
        ripple: boolean | {
            class?: string | undefined;
            keys?: string[] | undefined;
        };
    } & {
        theme?: string | undefined;
        class?: any;
        border?: string | number | boolean | undefined;
        elevation?: string | number | undefined;
        rounded?: string | number | boolean | undefined;
        color?: string | undefined;
        value?: any;
        selectedClass?: string | undefined;
        height?: string | number | undefined;
        maxHeight?: string | number | undefined;
        maxWidth?: string | number | undefined;
        minHeight?: string | number | undefined;
        minWidth?: string | number | undefined;
        width?: string | number | undefined;
        location?: import('vuetify/lib/types.mjs').Anchor | null | undefined;
        loading?: string | boolean | undefined;
        position?: "absolute" | "fixed" | "relative" | "static" | "sticky" | undefined;
        href?: string | undefined;
        to?: string | import('vue-router').RouteLocationAsPathGeneric | import('vue-router').RouteLocationAsRelativeGeneric | undefined;
        active?: boolean | undefined;
        activeColor?: string | undefined;
        baseColor?: string | undefined;
        icon?: boolean | import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        prependIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        appendIcon?: import('vuetify/lib/composables/icons.mjs').IconValue | undefined;
        spaced?: "both" | "end" | "start" | undefined;
        text?: string | number | boolean | undefined;
    } & {
        $children?: {
            default?: (() => import('vue').VNodeChild) | undefined;
            prepend?: (() => import('vue').VNodeChild) | undefined;
            append?: (() => import('vue').VNodeChild) | undefined;
            loader?: (() => import('vue').VNodeChild) | undefined;
        } | {
            $stable?: boolean | undefined;
        } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
        "v-slots"?: {
            default?: false | (() => import('vue').VNodeChild) | undefined;
            prepend?: false | (() => import('vue').VNodeChild) | undefined;
            append?: false | (() => import('vue').VNodeChild) | undefined;
            loader?: false | (() => import('vue').VNodeChild) | undefined;
        } | undefined;
    } & {
        "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:loader"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
    } & {
        "onGroup:selected"?: ((val: {
            value: boolean;
        }) => any) | undefined;
    }, {
        group: import('vuetify/lib/composables/group.mjs').GroupItemProvide | null;
    }, {}, {}, {}, {
        style: import('vue').StyleValue;
        density: import('vuetify/lib/composables/density.mjs').Density;
        rounded: string | number | boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal";
        disabled: boolean;
        size: string | number;
        replace: boolean;
        exact: boolean;
        active: boolean;
        symbol: any;
        flat: boolean;
        block: boolean;
        readonly: boolean;
        slim: boolean;
        stacked: boolean;
        ripple: boolean | {
            class?: string | undefined;
            keys?: string[] | undefined;
        } | undefined;
        text: string | number | boolean;
    }> | null;
    drawerRef: import('vue').CreateComponentPublicInstanceWithMixins<{
        style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
        mobile: boolean | null;
        order: string | number;
        absolute: boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        retainFocus: boolean;
        captureFocus: boolean;
        disableResizeWatcher: boolean;
        disableRouteWatcher: boolean;
        expandOnHover: boolean;
        floating: boolean;
        modelValue: boolean | null;
        permanent: boolean;
        rail: boolean | null;
        railWidth: string | number;
        scrim: string | boolean;
        temporary: boolean;
        persistent: boolean;
        touchless: boolean;
        width: string | number;
        location: "bottom" | "end" | "left" | "right" | "start" | "top";
        sticky: boolean;
    } & {
        theme?: string | undefined;
        class?: any;
        mobileBreakpoint?: number | import('vuetify/lib/types.mjs').DisplayBreakpoint | undefined;
        name?: string | undefined;
        border?: string | number | boolean | undefined;
        elevation?: string | number | undefined;
        rounded?: string | number | boolean | undefined;
        closeDelay?: string | number | undefined;
        openDelay?: string | number | undefined;
        color?: string | undefined;
        image?: string | undefined;
    } & {
        $children?: {
            default?: (() => import('vue').VNodeChild) | undefined;
            prepend?: (() => import('vue').VNodeChild) | undefined;
            append?: (() => import('vue').VNodeChild) | undefined;
            image?: ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        } | {
            $stable?: boolean | undefined;
        } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
        "v-slots"?: {
            default?: false | (() => import('vue').VNodeChild) | undefined;
            prepend?: false | (() => import('vue').VNodeChild) | undefined;
            append?: false | (() => import('vue').VNodeChild) | undefined;
            image?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        } | undefined;
    } & {
        "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:image"?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
    } & {
        "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
        "onUpdate:rail"?: ((val: boolean) => any) | undefined;
    }, {
        isStuck: import('vue').ShallowRef<"bottom" | "top" | boolean, "bottom" | "top" | boolean>;
    }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        "update:modelValue": (val: boolean) => true;
        "update:rail": (val: boolean) => true;
    }, import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, {
        style: import('vue').StyleValue;
        mobile: boolean | null;
        order: string | number;
        absolute: boolean;
        rounded: string | number | boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        retainFocus: boolean;
        captureFocus: boolean;
        disableResizeWatcher: boolean;
        disableRouteWatcher: boolean;
        expandOnHover: boolean;
        floating: boolean;
        modelValue: boolean | null;
        permanent: boolean;
        rail: boolean | null;
        railWidth: string | number;
        scrim: string | boolean;
        temporary: boolean;
        persistent: boolean;
        touchless: boolean;
        width: string | number;
        location: "bottom" | "end" | "left" | "right" | "start" | "top";
        sticky: boolean;
    }, true, {}, import('vue').SlotsType<Partial<{
        default: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        prepend: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        append: () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
        image: (arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
            [key: string]: any;
        }>[];
    }>>, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, {
        style: string | false | import('vue').StyleValue[] | import('vue').CSSProperties | null;
        mobile: boolean | null;
        order: string | number;
        absolute: boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        retainFocus: boolean;
        captureFocus: boolean;
        disableResizeWatcher: boolean;
        disableRouteWatcher: boolean;
        expandOnHover: boolean;
        floating: boolean;
        modelValue: boolean | null;
        permanent: boolean;
        rail: boolean | null;
        railWidth: string | number;
        scrim: string | boolean;
        temporary: boolean;
        persistent: boolean;
        touchless: boolean;
        width: string | number;
        location: "bottom" | "end" | "left" | "right" | "start" | "top";
        sticky: boolean;
    } & {
        theme?: string | undefined;
        class?: any;
        mobileBreakpoint?: number | import('vuetify/lib/types.mjs').DisplayBreakpoint | undefined;
        name?: string | undefined;
        border?: string | number | boolean | undefined;
        elevation?: string | number | undefined;
        rounded?: string | number | boolean | undefined;
        closeDelay?: string | number | undefined;
        openDelay?: string | number | undefined;
        color?: string | undefined;
        image?: string | undefined;
    } & {
        $children?: {
            default?: (() => import('vue').VNodeChild) | undefined;
            prepend?: (() => import('vue').VNodeChild) | undefined;
            append?: (() => import('vue').VNodeChild) | undefined;
            image?: ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        } | {
            $stable?: boolean | undefined;
        } | (() => import('vue').VNodeChild) | import('vue').VNodeChild;
        "v-slots"?: {
            default?: false | (() => import('vue').VNodeChild) | undefined;
            prepend?: false | (() => import('vue').VNodeChild) | undefined;
            append?: false | (() => import('vue').VNodeChild) | undefined;
            image?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        } | undefined;
    } & {
        "v-slot:append"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:default"?: false | (() => import('vue').VNodeChild) | undefined;
        "v-slot:image"?: false | ((arg: import('vuetify/lib/components/VNavigationDrawer/VNavigationDrawer.mjs').VNavigationDrawerImageSlot) => import('vue').VNodeChild) | undefined;
        "v-slot:prepend"?: false | (() => import('vue').VNodeChild) | undefined;
    } & {
        "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
        "onUpdate:rail"?: ((val: boolean) => any) | undefined;
    }, {
        isStuck: import('vue').ShallowRef<"bottom" | "top" | boolean, "bottom" | "top" | boolean>;
    }, {}, {}, {}, {
        style: import('vue').StyleValue;
        mobile: boolean | null;
        order: string | number;
        absolute: boolean;
        rounded: string | number | boolean;
        tile: boolean;
        tag: string | import('vuetify/lib/types.mjs').JSXComponent;
        retainFocus: boolean;
        captureFocus: boolean;
        disableResizeWatcher: boolean;
        disableRouteWatcher: boolean;
        expandOnHover: boolean;
        floating: boolean;
        modelValue: boolean | null;
        permanent: boolean;
        rail: boolean | null;
        railWidth: string | number;
        scrim: string | boolean;
        temporary: boolean;
        persistent: boolean;
        touchless: boolean;
        width: string | number;
        location: "bottom" | "end" | "left" | "right" | "start" | "top";
        sticky: boolean;
    }> | null;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
