import type { EmitFn } from 'vuesax-alpha/es/utils';
import type { ExtractPropTypes } from 'vue';
import type Dialog from './dialog.vue';
declare type DoneFn = (cancel?: boolean) => void;
export declare type DialogBeforeCloseFn = (done: DoneFn) => void;
export declare const dialogProps: {
    readonly modelValue: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly color: {
        readonly default: "primary";
        readonly type: import("vue").PropType<import("vuesax-alpha/es/utils").VsPropMergeType<StringConstructor, "primary" | "success" | "danger" | "warn" | "dark" | "text" | "light" | "secondary" | "facebook" | "twitter" | "youtube" | "pinterest" | "linkedin" | "snapchat" | "whatsapp" | "tumblr" | "reddit" | "spotify" | "amazon" | "medium" | "vimeo" | "skype" | "dribbble" | "slack" | "yahoo" | "twitch" | "discord" | "telegram" | "google-plus" | "messenger", import("vuesax-alpha/es/constants").Color>>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        readonly __vsPropKey: true;
    };
    readonly overlayBlur: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly beforeClose: {
        readonly type: import("vue").PropType<DialogBeforeCloseFn>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __vsPropKey: true;
    };
    readonly loading: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly fullScreen: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly notClose: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly preventClose: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly notPadding: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly lockScroll: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly shape: import("vuesax-alpha/es/utils").VsPropFinalized<StringConstructor, "square" | "rounded", unknown, "rounded", boolean>;
    readonly autoWidth: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly scroll: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly notCenter: import("vuesax-alpha/es/utils").VsPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
    readonly width: import("vuesax-alpha/es/utils").VsPropFinalized<StringConstructor, unknown, unknown, null, boolean>;
    readonly overflowHidden: BooleanConstructor;
    readonly blur: BooleanConstructor;
};
export declare const dialogEmits: {
    /**
     * @description triggers when the Dialog opens
     */
    open: () => boolean;
    /**
     * @description triggers when the Dialog opening animation ends
     */
    opened: () => boolean;
    /**
     * @description triggers when the Dialog closes
     */
    close: () => boolean;
    /**
     * @description triggers when the Dialog closing animation ends
     */
    closed: () => boolean;
    "update:modelValue": (value: boolean) => boolean;
};
export declare type DialogEmits = typeof dialogEmits;
export declare type DialogEmitFn = EmitFn<DialogEmits>;
export declare type DialogProps = ExtractPropTypes<typeof dialogProps>;
export declare type DialogInstance = InstanceType<typeof Dialog>;
export {};
