import { AllowedComponentProps } from 'vue';
import { Component } from 'vue';
import { ComponentCustomProperties } from 'vue';
import { ComponentCustomProps } from 'vue';
import { ComponentInternalInstance } from 'vue';
import { ComponentOptionsBase } from 'vue';
import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { ComponentPublicInstance } from 'vue';
import { DebuggerEvent } from 'vue';
import { DefineComponent } from 'vue';
import { DirectiveBinding } from 'vue';
import { Disposer } from 'zeed';
import { DisposerFunction } from 'zeed';
import { GlobalComponents } from 'vue';
import { GlobalDirectives } from 'vue';
import { InputTypeHTMLAttribute } from 'vue';
import { LoggerInterface } from 'zeed';
import { LogMessage } from 'zeed';
import { nextTick } from 'vue';
import { OffsetOptions } from '@floating-ui/vue';
import { OnCleanup } from '@vue/reactivity';
import { Padding } from '@floating-ui/vue';
import { Placement } from '@floating-ui/vue';
import { PublicProps } from 'vue';
import { Reactive } from 'vue';
import { Ref } from 'vue';
import { ShallowUnwrapRef } from 'vue';
import { Slot } from 'vue';
import { VNode } from 'vue';
import { VNodeProps } from 'vue';
import { WatchOptions } from 'vue';
import { WatchStopHandle } from 'vue';

declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
size: "small" | "normal" | "large";
mode: "primary" | "danger" | "neutral" | "success" | "ghost";
dropdown: boolean;
outline: boolean;
target: string;
disabled: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_10: DefineComponent<__VLS_Props_13, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_13> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
root: HTMLDivElement;
}, any>;

declare const __VLS_component_11: DefineComponent<__VLS_Props_17, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_17> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_12: DefineComponent<__VLS_PublicProps_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: any) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_8> & Readonly<{
"onUpdate:modelValue"?: ((value: any) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_13: DefineComponent<__VLS_PublicProps_10, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_10> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_14: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLDivElement>;

declare const __VLS_component_15: DefineComponent<__VLS_PublicProps_12, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
close: () => any;
dblclick: (e: MouseEvent) => any;
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_12> & Readonly<{
onClose?: (() => any) | undefined;
onDblclick?: ((e: MouseEvent) => any) | undefined;
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
slotReference: HTMLDivElement;
triggerSlot: any;
floating: HTMLDivElement;
floatingArrow: HTMLDivElement;
}, any>;

declare const __VLS_component_16: DefineComponent<__VLS_PublicProps_14, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_14> & Readonly<{
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_17: DefineComponent<__VLS_Props_27, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
cancel: () => any;
delete: () => any;
save: () => any;
}, string, PublicProps, Readonly<__VLS_Props_27> & Readonly<{
onCancel?: (() => any) | undefined;
onDelete?: (() => any) | undefined;
onSave?: (() => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_18: DefineComponent<__VLS_PublicProps_15, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
cancel: () => any;
close: () => any;
"update:modelValue": (value: boolean) => any;
open: () => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_15> & Readonly<{
onCancel?: (() => any) | undefined;
onClose?: (() => any) | undefined;
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
onOpen?: (() => any) | undefined;
}>, {
close: boolean;
size: "small" | "normal" | "large";
allowCancel: boolean;
forceSheet: boolean;
noSheet: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
root: HTMLDivElement;
}, any>;

declare const __VLS_component_19: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;

declare const __VLS_component_2: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_3: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: any) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
"onUpdate:modelValue"?: ((value: any) => any) | undefined;
}>, {
switch: boolean;
intermediate: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_4: DefineComponent<__VLS_Props_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_6> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_5: DefineComponent<__VLS_Props_7, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
moveStart: (args_0: OuiDraggableEvent) => any;
move: (args_0: OuiDraggableEvent) => any;
moveEnd: (args_0: OuiDraggableEvent) => any;
}, string, PublicProps, Readonly<__VLS_Props_7> & Readonly<{
onMoveStart?: ((args_0: OuiDraggableEvent) => any) | undefined;
onMove?: ((args_0: OuiDraggableEvent) => any) | undefined;
onMoveEnd?: ((args_0: OuiDraggableEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
el: HTMLDivElement;
}, HTMLDivElement>;

declare const __VLS_component_6: DefineComponent<__VLS_PublicProps_4, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: string | undefined) => any;
"update:filename": (value: string | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_4> & Readonly<{
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
"onUpdate:filename"?: ((value: string | undefined) => any) | undefined;
}>, {
disabled: boolean;
accept: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
dropZoneRef: HTMLDivElement;
}, any>;

declare const __VLS_component_7: DefineComponent<__VLS_Props_9, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_9> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_8: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLDivElement>;

declare const __VLS_component_9: DefineComponent<__VLS_PublicProps_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: string | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_6> & Readonly<{
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
}>, {
type: InputTypeHTMLAttribute;
lazyDelay: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_defaults: {
    modelValue: number;
};

declare const __VLS_defaults_2: {
    modelValue: boolean;
};

declare const __VLS_defaults_3: {
    modelValue: boolean;
};

declare const __VLS_defaults_4: {
    modelValue: boolean;
};

declare type __VLS_PrettifyLocal<T> = {
    [K in keyof T]: T[K];
} & {};

declare type __VLS_PrettifyLocal_2<T> = {
    [K in keyof T]: T[K];
} & {};

declare type __VLS_PrettifyLocal_3<T> = {
    [K in keyof T]: T[K];
} & {};

declare type __VLS_PrettifyLocal_4<T> = {
    [K in keyof T]: T[K];
} & {};

declare type __VLS_Props = {
    title?: string;
    mode?: 'primary' | 'danger' | 'neutral' | 'success' | 'ghost';
    size?: 'small' | 'normal' | 'large';
    dropdown?: boolean;
    outline?: boolean;
    href?: string;
    target?: string;
    disabled?: boolean;
};

declare type __VLS_Props_10 = {
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_11 = {
    title?: string;
    description?: string;
    required?: boolean;
    type?: InputTypeHTMLAttribute;
    id?: string;
    lazy?: boolean;
    lazyDelay?: number;
};

declare type __VLS_Props_12 = {
    log: LogOui;
    showTime?: boolean;
    showTag?: boolean;
};

declare type __VLS_Props_13 = {
    title?: string;
    cover?: boolean;
};

declare type __VLS_Props_14 = {
    value?: string;
};

declare type __VLS_Props_15 = {
    showMeter?: boolean;
    showVisibility?: boolean;
    placeholder?: string;
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_16 = {
    content: string;
};

declare type __VLS_Props_17 = {
    name: string;
    side: 'top' | 'left' | 'right' | 'bottom';
    size: number;
    minSize: number;
    maxSize: number;
    color?: string;
    hide?: boolean;
    static?: boolean;
};

declare type __VLS_Props_18 = {
    options?: [string | number, string | number][] | (string | number)[];
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_19 = {
    side: 'top' | 'left' | 'right' | 'bottom';
    modelValue: number;
    minSize: number;
    maxSize: number;
    absolute?: boolean;
    color?: string;
    name?: string;
};

declare type __VLS_Props_2 = {
    title?: string;
};

declare type __VLS_Props_20 = {
    id?: string;
    title?: string;
    description?: string;
    required?: boolean;
};

declare type __VLS_Props_21 = {
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
    autosize?: boolean;
};

declare type __VLS_Props_22 = {
    reference?: Ref<HTMLElement | undefined>;
    transition?: string;
    placement?: Placement;
    arrow?: boolean;
    offset?: OffsetOptions;
    padding?: Padding;
    close?: boolean;
    hover?: boolean;
    delayEnter?: number;
    delayLeave?: number;
};

declare type __VLS_Props_23 = {
    items: OuiMenuItem[];
    args?: any;
    done?: (() => void) | undefined;
};

declare type __VLS_Props_24 = {
    items: OuiMenuItem[];
    reference?: Ref<HTMLElement | undefined>;
    placement?: Placement;
    args?: any;
    done?: (() => void) | undefined;
};

declare type __VLS_Props_25 = {
    titleAsTooltip?: boolean;
};

declare type __VLS_Props_26 = {
    mode?: 'app' | 'body';
};

declare type __VLS_Props_27 = {
    title: string;
    update?: boolean;
    delete?: boolean;
    disabled?: boolean;
};

declare type __VLS_Props_28 = {
    title?: string;
    message: string;
    mode: 'alert' | 'prompt' | 'confirm' | 'dialog';
    cancel?: string;
    confirm?: string;
    done?: any;
    placeholder?: string;
    defaultValue?: string;
};

declare type __VLS_Props_29 = {
    close?: boolean;
    allowCancel?: boolean;
    title?: string;
    transition?: string;
    forceSheet?: boolean;
    noSheet?: boolean;
    size?: 'small' | 'normal' | 'large';
};

declare type __VLS_Props_3 = {
    title?: string;
    switch?: boolean;
    intermediate?: boolean;
    description?: string;
};

declare type __VLS_Props_30 = {
    value: any;
    title?: string;
};

declare type __VLS_Props_4 = {
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_5 = {
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_6 = {
    state: any;
};

declare type __VLS_Props_7 = {
    onlyTouch?: boolean;
    cancelEvents?: boolean;
};

declare type __VLS_Props_8 = {
    title?: string;
    titleChoose?: string;
    description?: string;
    accept?: string;
    disabled?: boolean;
    required?: boolean;
    id?: string;
};

declare type __VLS_Props_9 = {
    title?: string;
    description?: string;
    required?: boolean;
    id?: string;
    disabled?: boolean;
};

declare type __VLS_PublicProps = {
    modelValue: any;
} & __VLS_Props_3;

declare type __VLS_PublicProps_10 = {
    modelValue: typeof __VLS_defaults['modelValue'];
} & __VLS_Props_20;

declare type __VLS_PublicProps_11 = {
    modelValue: string | undefined;
} & __VLS_Props_21;

declare type __VLS_PublicProps_12 = {
    modelValue?: boolean;
} & __VLS_Props_22;

declare type __VLS_PublicProps_13 = {
    modelValue?: typeof __VLS_defaults_2['modelValue'];
} & __VLS_Props_23;

declare type __VLS_PublicProps_14 = {
    modelValue?: typeof __VLS_defaults_3['modelValue'];
} & __VLS_Props_24;

declare type __VLS_PublicProps_15 = {
    modelValue?: typeof __VLS_defaults_4['modelValue'];
} & __VLS_Props_29;

declare type __VLS_PublicProps_2 = {
    modelValue: number | undefined;
} & __VLS_Props_4;

declare type __VLS_PublicProps_3 = {
    modelValue: number;
} & __VLS_Props_5;

declare type __VLS_PublicProps_4 = {
    modelValue: string | undefined;
    'filename'?: string | undefined;
} & __VLS_Props_8;

declare type __VLS_PublicProps_5 = {
    modelValue: number | undefined;
} & __VLS_Props_10;

declare type __VLS_PublicProps_6 = {
    modelValue: string | undefined;
} & __VLS_Props_11;

declare type __VLS_PublicProps_7 = {
    modelValue: string | undefined;
} & __VLS_Props_15;

declare type __VLS_PublicProps_8 = {
    modelValue: any;
} & __VLS_Props_18;

declare type __VLS_PublicProps_9 = {
    'styleValue'?: any;
} & __VLS_Props_19;

declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        default?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_10(): {
    attrs: Partial<{}>;
    slots: {
        icon?(_: {}): any;
        icon?(_: {}): any;
        title?(_: {}): any;
        title?(_: {}): any;
        default?(_: {}): any;
        default?(_: {}): any;
    };
    refs: {
        root: HTMLDivElement;
    };
    rootEl: any;
};

declare function __VLS_template_11(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        default?(_: {}): any;
        default?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_12(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_13(): {
    attrs: Partial<{}>;
    slots: {
        icon?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_14(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_15(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        default: () => any;
        click: (props: {
            active: boolean;
        }) => any;
        hover: (props: {
            active: boolean;
        }) => any;
        trigger: (props: {
            active: boolean;
        }) => any;
    }> & {
        default: () => any;
        click: (props: {
            active: boolean;
        }) => any;
        hover: (props: {
            active: boolean;
        }) => any;
        trigger: (props: {
            active: boolean;
        }) => any;
    };
    refs: {
        slotReference: HTMLDivElement;
        triggerSlot: any;
        floating: HTMLDivElement;
        floatingArrow: HTMLDivElement;
    };
    rootEl: any;
};

declare function __VLS_template_16(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_17(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        left?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_18(): {
    attrs: Partial<{}>;
    slots: {
        close?(_: {}): any;
        title?(_: {}): any;
        header?(_: {}): any;
        default?(_: {}): any;
        footer?(_: {}): any;
    };
    refs: {
        root: HTMLDivElement;
    };
    rootEl: any;
};

declare function __VLS_template_19(): {
    attrs: Partial<{}>;
    slots: {
        close?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_2(): {
    attrs: Partial<{}>;
    slots: {
        header?(_: {}): any;
        title?(_: {}): any;
        default?(_: {}): any;
        footer?(_: {}): any;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_3(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        description?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_4(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_5(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {
        el: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};

declare function __VLS_template_6(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        preview?(_: {
            filename: string | undefined;
        }): any;
    };
    refs: {
        dropZoneRef: HTMLDivElement;
    };
    rootEl: any;
};

declare function __VLS_template_7(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        default?(_: {}): any;
        description?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_8(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_9(): {
    attrs: Partial<{}>;
    slots: {
        start?(_: {}): any;
        end?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};

declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;

declare type __VLS_TemplateResult_10 = ReturnType<typeof __VLS_template_10>;

declare type __VLS_TemplateResult_11 = ReturnType<typeof __VLS_template_11>;

declare type __VLS_TemplateResult_12 = ReturnType<typeof __VLS_template_12>;

declare type __VLS_TemplateResult_13 = ReturnType<typeof __VLS_template_13>;

declare type __VLS_TemplateResult_14 = ReturnType<typeof __VLS_template_14>;

declare type __VLS_TemplateResult_15 = ReturnType<typeof __VLS_template_15>;

declare type __VLS_TemplateResult_16 = ReturnType<typeof __VLS_template_16>;

declare type __VLS_TemplateResult_17 = ReturnType<typeof __VLS_template_17>;

declare type __VLS_TemplateResult_18 = ReturnType<typeof __VLS_template_18>;

declare type __VLS_TemplateResult_19 = ReturnType<typeof __VLS_template_19>;

declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;

declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;

declare type __VLS_TemplateResult_4 = ReturnType<typeof __VLS_template_4>;

declare type __VLS_TemplateResult_5 = ReturnType<typeof __VLS_template_5>;

declare type __VLS_TemplateResult_6 = ReturnType<typeof __VLS_template_6>;

declare type __VLS_TemplateResult_7 = ReturnType<typeof __VLS_template_7>;

declare type __VLS_TemplateResult_8 = ReturnType<typeof __VLS_template_8>;

declare type __VLS_TemplateResult_9 = ReturnType<typeof __VLS_template_9>;

declare type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_10<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_11<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_12<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_13<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_14<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_15<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_16<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_17<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_18<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_19<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_2<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_3<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_4<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_5<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_6<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_7<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_8<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_9<T, S> = T & {
    new (): {
        $slots: S;
    };
};

export declare interface AppNotificationInfo extends AppNotificationSetup {
    id: string;
    mode: 'warn' | 'error' | 'info';
    active: boolean;
    icon: string;
    timeout: number;
    close: () => void;
    action: () => void;
}

/**
 * Options for notifications.
 *
 * - By default they disappear ion `timeout`. `-1` stays forever.
 * - Line feeds in `message` are preserved.
 * - `onAction` is called if not `cancel` or `x` is clicked.
 * - If `onCancel` is available, two buttons are shown.
 * - `actionLabel` defaults to "OK" and `cancelLabel` to "Cancel"
 * - `onClose` is called when notification disappeared.
 * - The body is only clickable, if not buttons are shown.
 */
export declare interface AppNotificationSetup {
    id?: string;
    mode?: 'warn' | 'error' | 'info';
    active?: boolean;
    icon?: string;
    title: string;
    message?: string;
    timeout?: number;
    onAction?: () => void;
    onCancel?: () => void;
    onClose?: () => void;
    actionLabel?: string;
    cancelLabel?: string;
}

/** @deprecated use https://vueuse.org/core/useShare/#useshare */
export declare const canShare: () => boolean;

export declare function closeNotification(id?: string): void;

declare interface Config<T> {
    onFetch: (from: number, length: number) => Promise<T[]>;
    chunkSize?: number;
    margin?: number;
    size?: number;
    data?: Reactive<T[]>;
}

export declare const developerLog: Reactive<any[]>;

export declare function dialogOpen<T = any>(component: Component, props?: T): void;

export declare function emitNotification(n: AppNotificationSetup): AppNotificationInfo;

export declare function _emitNotification(n: AppNotificationSetup): AppNotificationInfo;

export declare function emitNotificationError(title: string, message?: string, timeout?: number): AppNotificationInfo;

export declare function emitNotificationInfo(title: string, message?: string, timeout?: number): AppNotificationInfo | undefined;

export declare function emitNotificationWarn(title: string, message?: string, timeout?: number): AppNotificationInfo;

export declare function formatCurrency(amount: number, currency: string, fallback?: string): string;

export declare function formatPercent(value: number, fallback?: string): string;

export declare type LogOui = LoggerInterface & {
    messages: LogMessage[];
};

export declare const notifications: Ref<AppNotificationInfo[]>;

export declare const OuiButton: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;

export declare const OuiCard: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;

export declare const OuiCheckbox: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;

export declare const OuiClose: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, SVGSVGElement>;

export declare const OuiDark: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLButtonElement>;

export declare const OuiDate: DefineComponent<__VLS_PublicProps_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: number | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_2> & Readonly<{
"onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiDatetime: DefineComponent<__VLS_PublicProps_3, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_3> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiDemo: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;

export declare const OuiDialog: DefineComponent<__VLS_Props_28, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_28> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
ok: ({
$: ComponentInternalInstance;
$data: {};
$props: {
readonly title?: string | undefined;
readonly mode?: "primary" | "danger" | "neutral" | "success" | "ghost" | undefined;
readonly size?: "small" | "normal" | "large" | undefined;
readonly dropdown?: boolean | undefined;
readonly outline?: boolean | undefined;
readonly href?: string | undefined;
readonly target?: string | undefined;
readonly disabled?: boolean | undefined;
} & VNodeProps & AllowedComponentProps & ComponentCustomProps;
$attrs: {
[x: string]: unknown;
};
$refs: {
[x: string]: unknown;
};
$slots: Readonly<{
[name: string]: Slot<any> | undefined;
}>;
$root: ComponentPublicInstance | null;
$parent: ComponentPublicInstance | null;
$host: Element | null;
$emit: (event: string, ...args: any[]) => void;
$el: any;
$options: ComponentOptionsBase<Readonly<{
title?: string;
mode?: "primary" | "danger" | "neutral" | "success" | "ghost";
size?: "small" | "normal" | "large";
dropdown?: boolean;
outline?: boolean;
href?: string;
target?: string;
disabled?: boolean;
}> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
size: "small" | "normal" | "large";
mode: "primary" | "danger" | "neutral" | "success" | "ghost";
dropdown: boolean;
outline: boolean;
target: string;
disabled: boolean;
}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
beforeCreate?: (() => void) | (() => void)[];
created?: (() => void) | (() => void)[];
beforeMount?: (() => void) | (() => void)[];
mounted?: (() => void) | (() => void)[];
beforeUpdate?: (() => void) | (() => void)[];
updated?: (() => void) | (() => void)[];
activated?: (() => void) | (() => void)[];
deactivated?: (() => void) | (() => void)[];
beforeDestroy?: (() => void) | (() => void)[];
beforeUnmount?: (() => void) | (() => void)[];
destroyed?: (() => void) | (() => void)[];
unmounted?: (() => void) | (() => void)[];
renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
};
$forceUpdate: () => void;
$nextTick: nextTick;
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
} & Readonly<{
size: "small" | "normal" | "large";
mode: "primary" | "danger" | "neutral" | "success" | "ghost";
dropdown: boolean;
outline: boolean;
target: string;
disabled: boolean;
}> & Omit<Readonly<{
title?: string;
mode?: "primary" | "danger" | "neutral" | "success" | "ghost";
size?: "small" | "normal" | "large";
dropdown?: boolean;
outline?: boolean;
href?: string;
target?: string;
disabled?: boolean;
}> & Readonly<{}>, "size" | "mode" | "dropdown" | "outline" | "target" | "disabled"> & ShallowUnwrapRef<    {}> & {} & ComponentCustomProperties & {} & {
$slots: {
default?(_: {}): any;
default?(_: {}): any;
};
}) | null;
}, any>;

export declare const OuiDialogEdit: __VLS_WithTemplateSlots_17<typeof __VLS_component_17, __VLS_TemplateResult_17["slots"]>;

export declare const OuiDraggable: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, __VLS_TemplateResult_5["slots"]>;

export declare interface OuiDraggableEvent {
    startX: number;
    startY: number;
    pageX: number;
    pageY: number;
    deltaX: number;
    deltaY: number;
    moveX: number;
    moveY: number;
    timeMS: number;
}

export declare const OuiFile: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;

export declare const OuiFloat: __VLS_WithTemplateSlots_15<typeof __VLS_component_15, __VLS_TemplateResult_15["slots"]>;

export declare const OuiFormItem: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;

export declare const OuiInput: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;

export declare const OuiInputGroup: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;

export declare const OuiInputNumber: DefineComponent<__VLS_PublicProps_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: number | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_5> & Readonly<{
"onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiLog: DefineComponent<__VLS_Props_12, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_12> & Readonly<{}>, {
showTime: boolean;
showTag: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiMenu: __VLS_WithTemplateSlots_16<typeof __VLS_component_16, __VLS_TemplateResult_16["slots"]>;

declare type OuiMenuCreator<T = any> = (value: T, ...args: any) => OuiMenuItem[];

export declare interface OuiMenuItem {
    id?: string | number;
    title?: string;
    value?: string;
    checked?: boolean | ((id: OuiMenuItem) => boolean | undefined);
    disabled?: boolean;
    close?: boolean;
    url?: string;
    action?: (item: OuiMenuItem, ...args: any[]) => void;
}

export declare const OuiMenuItems: DefineComponent<__VLS_PublicProps_13, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
done: (item: OuiMenuItem) => any;
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_13> & Readonly<{
onDone?: ((item: OuiMenuItem) => any) | undefined;
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

declare type OuiMenuItemSource<T = any> = (OuiMenuItem | false | undefined | null)[] | OuiMenuCreator<T>;

export declare const OuiMobileActivator: DefineComponent<__VLS_Props_26, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_26> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiModal: __VLS_WithTemplateSlots_18<typeof __VLS_component_18, __VLS_TemplateResult_18["slots"]>;

export declare const OuiNotice: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;

export declare const OuiNotificationActivator: __VLS_WithTemplateSlots_19<typeof __VLS_component_19, __VLS_TemplateResult_19["slots"]>;

export declare const OuiObject: DefineComponent<__VLS_Props_30, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_30> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const OuiPassword: DefineComponent<__VLS_PublicProps_7, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: string | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_7> & Readonly<{
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
}>, {
showMeter: boolean;
showVisibility: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiPasswordMeter: DefineComponent<__VLS_Props_14, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_14> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiQrcode: DefineComponent<__VLS_Props_16, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_16> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const OuiResizeable: __VLS_WithTemplateSlots_11<typeof __VLS_component_11, __VLS_TemplateResult_11["slots"]>;

export declare const OuiSelect: __VLS_WithTemplateSlots_12<typeof __VLS_component_12, __VLS_TemplateResult_12["slots"]>;

export declare const OuiSeparator: DefineComponent<__VLS_PublicProps_9, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (...args: any[]) => void;
"update:styleValue": (value: any) => void;
}, string, PublicProps, Readonly<__VLS_PublicProps_9> & Readonly<{
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
"onUpdate:styleValue"?: ((value: any) => any) | undefined;
}>, {
absolute: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const OuiStars: __VLS_WithTemplateSlots_13<typeof __VLS_component_13, __VLS_TemplateResult_13["slots"]>;

export declare interface OuiTab<K = string> {
    name: K;
    title?: string;
    icon?: string | Component;
    component?: Component;
}

export declare const OuiTable: <K extends string, T extends Record<K, any>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
        readonly "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
        readonly "onUpdate:sort"?: ((value: string) => any) | undefined;
        readonly onContext?: ((row: T, pos: number, event: Event) => any) | undefined;
    } & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, "onUpdate:modelValue" | "onUpdate:sort" | "onContext"> & ({
        sort?: string;
        modelValue?: number | undefined;
    } & {
        data: T[];
        columns?: OuiTableColumn<K>[];
        header?: boolean | undefined;
        footer?: boolean | undefined;
        selectable?: boolean;
    }) & Partial<{}>> & PublicProps;
    expose(exposed: ShallowUnwrapRef<    {}>): void;
    attrs: any;
    slots: Partial<Record<`header-${K}`, (_: {
        col: OuiTableColumn<K>;
        pos: number;
    }) => any>> & Partial<Record<`col-${K}`, (_: {
        index: number;
        value: T[K];
        col: OuiTableColumn<K>;
        pos: number;
        item: T;
    }) => any>> & Partial<Record<`footer-${K}`, (_: {
        col: OuiTableColumn<K>;
        pos: number;
    }) => any>>;
    emit: ((evt: "context", row: T, pos: number, event: Event) => void) & (((evt: "update:modelValue", value: number | undefined) => void) & ((evt: "update:sort", value: string) => void));
}>) => VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};

export declare interface OuiTableColumn<K = string> {
    name: K;
    title?: string;
    sortable?: boolean;
    align?: 'left' | 'center' | 'right';
    valign?: 'top' | 'middle' | 'bottom';
    footer?: string;
    width?: number;
    minWidth?: number;
    maxWidth?: number;
}

export declare const OuiTableview: <K extends string, T extends Record<K, any>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal_2<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal_2<Pick<Partial<{}> & Omit<{
        readonly onSelect?: ((row: T, pos: number, event: Event) => any) | undefined;
        readonly "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
        readonly onVisible?: ((offset: number, limit: number) => any) | undefined;
        readonly "onUpdate:sort"?: ((value: string) => any) | undefined;
        readonly onContext?: ((row: T, pos: number, event: Event) => any) | undefined;
    } & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, "onSelect" | "onUpdate:modelValue" | "onVisible" | "onUpdate:sort" | "onContext"> & ({
        sort?: string;
        modelValue?: number | undefined;
    } & {
        data: T[];
        columns: OuiTableColumn<K>[];
        rowHeight?: number;
        header?: boolean;
        footer?: boolean;
        selectable?: boolean;
        fillLast?: boolean;
        scrollToEnd?: boolean;
        rowAttrs?: (item: T, index: number) => any;
        name?: string;
        resizeable?: boolean;
    }) & Partial<{}>> & PublicProps;
    expose(exposed: ShallowUnwrapRef<    {}>): void;
    attrs: any;
    slots: Partial<Record<`header-${K}`, (_: {
        col: OuiTableColumn<K>;
        pos: number;
    }) => any>> & Partial<Record<`col-${K}`, (_: {
        index: number;
        value: T[K];
        col: OuiTableColumn<K>;
        pos: number;
        item: T;
    }) => any>> & Partial<Record<`footer-${K}`, (_: {
        col: OuiTableColumn<K>;
        pos: number;
    }) => any>>;
    emit: (((evt: "select", row: T, pos: number, event: Event) => void) & ((evt: "visible", offset: number, limit: number) => void) & ((evt: "context", row: T, pos: number, event: Event) => void)) & (((evt: "update:modelValue", value: number | undefined) => void) & ((evt: "update:sort", value: string) => void));
}>) => VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};

export declare const OuiTabs: <K extends string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal_3<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal_3<Pick<Partial<{}> & Omit<{
        readonly "onUpdate:modelValue"?: ((value: K) => any) | undefined;
    } & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, "onUpdate:modelValue"> & ({
        modelValue?: K;
    } & {
        tabs: OuiTab<K>[];
        className?: string;
    }) & Partial<{}>> & PublicProps;
    expose(exposed: ShallowUnwrapRef<    {}>): void;
    attrs: any;
    slots: Partial<Record<string, (_: {
        key: string;
    }) => any>> & {
        default?(_: {}): any;
    };
    emit: (evt: "update:modelValue", value: K) => void;
}>) => VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};

export declare const OuiText: __VLS_WithTemplateSlots_14<typeof __VLS_component_14, __VLS_TemplateResult_14["slots"]>;

export declare const OuiTextarea: DefineComponent<__VLS_PublicProps_11, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: string | undefined) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps_11> & Readonly<{
"onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
}>, {
autosize: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
textarea: HTMLTextAreaElement;
}, any>;

export declare const OuiTooltipActivator: DefineComponent<__VLS_Props_25, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_25> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const OuiVirtualList: <K extends string, T extends Record<K, any>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal_4<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal_4<Pick<Partial<{}> & Omit<{
        readonly onScrollX?: ((args_0: number) => any) | undefined;
        readonly onVisible?: ((offset: number, limit: number) => any) | undefined;
    } & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, "onScrollX" | "onVisible"> & {
        data: T[];
        rowHeight?: number;
        rowBuffer?: number;
        scrollToEnd?: boolean;
        emitDelay?: number;
    } & Partial<{}>> & PublicProps;
    expose(exposed: ShallowUnwrapRef<    {}>): void;
    attrs: any;
    slots: {
        default?(_: {
            item: T;
            index: number;
        }): any;
    };
    emit: ((evt: "scrollX", args_0: number) => void) & ((evt: "visible", offset: number, limit: number) => void);
}>) => VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};

export declare const OuiWait: DefineComponent<    {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLDivElement>;

/** @deprecated use https://vueuse.org/core/useShare/#useshare */
export declare function shareLink(data: ShareData): Promise<boolean>;

export declare function t(id: string, ...args: any): string;

export declare function tt(defaultString: string, id: string, ...args: any): string;

/** Environment for JS dialog replacements */
export declare function useDialog<T extends Component>(component?: T): {
    dispose: ((strictSync?: boolean) => Promise<any> | void) & {
        disposed: number;
        add: (obj?: Disposer) => DisposerFunction | undefined;
        remove: (disposable: Disposer) => Promise<void> | void;
        track: (obj?: Disposer) => DisposerFunction | undefined;
        untrack: (disposable: Disposer) => Promise<void> | void;
        dispose: (strictSync?: boolean) => Promise<any> | void;
        disposeSync: () => void;
        sync: () => void;
        exec: (strictSync?: boolean) => Promise<any> | void;
        getSize(): number;
        isDisposed(): boolean;
        [Symbol.dispose](): void | Promise<any>;
        [Symbol.asyncDispose](): Promise<any>;
    };
    alert(this: void, message: string): Promise<void>;
    confirm(this: void, message: string): Promise<boolean>;
    prompt(this: void, message: string, dft?: string): Promise<string>;
    dialog(this: void, props: any): Promise<unknown>;
    /** Open custom dialog, will return `null` for "no result". */
    open(this: void, props?: any): Promise<{} | null>;
};

export declare function useDialogOpen(component: Component): (this: void, props?: any) => Promise<{} | null>;

export declare function useLazyData<T>(opt: Config<T>): {
    setSize: (size: number) => void;
    getSize: () => number;
    setVisible: (fromPos: number, length: number) => void;
    reload: () => void;
    data: Reactive<(T | null)[]>;
};

export declare function useLog(name?: string): LogOui;

/**
 * Context menu emulation.
 *
 * If triggered by BUTTON it will show as a drop down, else close to the mouse position.
 */
export declare function useMenu<T = any>(itemsSource: OuiMenuItemSource<T>): (...args: any) => void;

/** Menu function where an argument can be passed, like: `const menu = useMenuWithValue(value => [...])` then in HTML `v-menu="menu(item)"` */
export declare function useMenuWithValue<T = any>(itemsSource: OuiMenuCreator<T>): (value: T) => (...args: any) => void;

export declare function useNotification(n?: AppNotificationSetup): (nn: AppNotificationInfo) => void;

export declare function useQRCode(): {
    (typeNumber: any, errorCorrectionLevel: any): {};
    stringToBytesFuncs: {
        default(s: any): number[];
    };
    stringToBytes: (s: any) => number[];
    createStringToBytes(unicodeData: any, numChars: any): (s: any) => any[];
};

/** Vue3 Directive! Toggle ref value on click or context menu. */
export declare const vActionToggle: {
    mounted: (el: HTMLElement, binding: DirectiveBinding, ...args: any) => void;
};

/** Vue3 Directive! Set ref value to true on click or context menu. */
export declare const vActionTrue: {
    mounted: (el: HTMLElement, binding: DirectiveBinding) => void;
};

/** Vue3 Directive! Set focus onMounted. Use with care, causes issues for transitions.  */
export declare const vAutofocus: {
    mounted: (el: HTMLElement, _binding: DirectiveBinding) => void;
};

export declare const vContext: {
    updated: (element: any, binding: DirectiveBinding) => void;
    mounted: (element: any, binding: DirectiveBinding) => void;
};

export declare const vMenu: {
    updated: (element: any, binding: DirectiveBinding) => void;
    mounted: (element: any, binding: DirectiveBinding) => void;
};

export declare const vMenuContext: {
    updated: (element: any, binding: DirectiveBinding) => void;
    mounted: (element: any, binding: DirectiveBinding) => void;
};

/** Vue3 Directive! Fixes an issue in WKWebView where the cursor pretends text selection even if user-select: none; */
export declare const vNoSelection: {
    mounted: (el: HTMLElement, _binding: DirectiveBinding) => void;
};

export { }
