import { Component } from 'vue';
/** Environment for JS dialog replacements */
export declare function useDialog<T extends Component>(component?: T): {
    dispose: ((strictSync?: boolean) => Promise<any> | void) & {
        readonly disposed: number;
        add: (obj?: import('zeed').DisposerFunction | {
            dispose: import('zeed').DisposerFunction;
        }) => import('zeed').DisposerFunction | undefined;
        remove: (disposable: import('zeed').DisposerFunction | {
            dispose: import('zeed').DisposerFunction;
        }) => Promise<void> | void;
        track: (obj?: import('zeed').DisposerFunction | {
            dispose: import('zeed').DisposerFunction;
        }) => import('zeed').DisposerFunction | undefined;
        untrack: (disposable: import('zeed').DisposerFunction | {
            dispose: import('zeed').DisposerFunction;
        }) => 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 dialogOpen<T = any>(component: Component, props?: T): void;
export declare function useDialogOpen(component: Component): (this: void, props?: any) => Promise<{} | null>;
export declare function ouiAlert(message: string): Promise<void>;
export declare function ouiConfirm(message: string): Promise<boolean>;
export declare function ouiPrompt(message: string, dft?: string): Promise<string>;
export declare function ouiDialog(props: any): Promise<unknown>;
