import { Ref, SetupContext } from "vue";
import { LookupProps } from "../lookup.props";
import { UserDataService } from "./use-user-data";
import { UseHttpComposition } from "./use-http";
export interface UseDialogOptions {
    dictPicked: (items: any) => Promise<void>;
    modelValue: Ref<any>;
    buttonEditInstance: Ref<any>;
    userDataService: UserDataService;
    useHttp: UseHttpComposition;
}
export declare function useDialog(props: LookupProps, context: SetupContext, selectedItems: Ref<any[]>, { dictPicked, modelValue, buttonEditInstance, userDataService, useHttp }: UseDialogOptions): {
    modalOptions: {
        title: any;
        fitContent: boolean;
        showHeader: boolean;
        dragHandle: string;
        height: any;
        width: any;
        minWidth: any;
        minHeight: any;
        showMaxButton: any;
        showCloseButton: any;
        resizeable: boolean;
        draggable: boolean;
        closedCallback: ($event: Event, closeFrom: string) => void;
        showButtons: boolean;
        resizeHandle: ($event: any) => void;
        enableEnter: boolean;
        onEnter: ($event: any) => void;
    };
    beforeOpenDialog: ($event?: any) => Promise<boolean>;
    dialogSize: Ref<any, any>;
    customData: Ref<any, any>;
    updateModelValue: () => Promise<boolean>;
    cancelDialog: () => boolean;
    submitDialog: () => Promise<boolean>;
};
