import { PropType } from "vue";
import type { VNode } from "vue";
import "./FMessageModal.css";
export interface ModalAction {
    show?: boolean;
    text?: string;
    props?: Record<string, any>;
    classes?: Record<string, any>;
    callback?: (...args: any) => void;
}
export declare const FMessageModal: import("vue").DefineComponent<{
    title: {
        type: PropType<String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
        default: string;
    };
    text: {
        type: PropType<String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
        default: string;
    };
    cancel: {
        type: PropType<ModalAction>;
        default: () => {};
    };
    confirm: {
        type: PropType<ModalAction>;
        default: () => {};
    };
    actions: {
        type: PropType<VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
    };
    hideActions: {
        type: BooleanConstructor;
        default: boolean;
    };
    width: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    destroy: () => true;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    title: {
        type: PropType<String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
        default: string;
    };
    text: {
        type: PropType<String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
        default: string;
    };
    cancel: {
        type: PropType<ModalAction>;
        default: () => {};
    };
    confirm: {
        type: PropType<ModalAction>;
        default: () => {};
    };
    actions: {
        type: PropType<VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }>>;
    };
    hideActions: {
        type: BooleanConstructor;
        default: boolean;
    };
    width: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
}>> & {
    onDestroy?: (() => any) | undefined;
}, {
    title: String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>;
    width: string | number;
    text: String | VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>;
    cancel: ModalAction;
    confirm: ModalAction;
    hideActions: boolean;
}>;
