import { PropType, RendererElement } from 'vue';
declare const CModal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    /**
     * Align the modal in the center or top of the screen.
     *
     * @values 'top', 'center'
     */
    alignment: {
        default: string;
        validator: (value: string) => boolean;
    };
    /**
     * Apply a backdrop on body while modal is open.
     *
     * @values boolean | 'static'
     */
    backdrop: {
        type: (StringConstructor | BooleanConstructor)[];
        default: boolean;
        validator: (value: boolean | string) => boolean;
    };
    /**
     * Appends the vue popover to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`.
     *
     * @since 5.3.0
     */
    container: {
        type: PropType<HTMLElement | (() => HTMLElement) | string>;
        default: string;
    };
    /**
     * A string of all className you want applied to the modal content component.
     */
    contentClassName: StringConstructor;
    /**
     * Puts the focus on the modal when shown.
     *
     * @since 5.0.0
     */
    focus: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Set modal to covers the entire user viewport
     *
     * @values boolean, 'sm', 'md', 'lg', 'xl', 'xxl'
     */
    fullscreen: {
        type: (StringConstructor | BooleanConstructor)[];
        validator: (value: boolean | string) => boolean;
    };
    /**
     * Closes the modal when escape key is pressed.
     */
    keyboard: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Create a scrollable modal that allows scrolling the modal body.
     */
    scrollable: BooleanConstructor;
    /**
     * Size the component small, large, or extra large.
     *
     * @values 'sm', 'lg', 'xl'
     */
    size: {
        type: StringConstructor;
        validator: (value: string) => boolean;
    };
    /**
     * Generates modal using Teleport.
     *
     * @since 5.3.0
     */
    teleport: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Remove animation to create modal that simply appear rather than fade in to view.
     */
    transition: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * By default the component is unmounted after close animation, if you want to keep the component mounted set this property to false.
     */
    unmountOnClose: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Toggle the visibility of alert component.
     */
    visible: BooleanConstructor;
}>, () => import("vue").VNode<import("vue").RendererNode, RendererElement, {
    [key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "show" | "close-prevented")[], "close" | "show" | "close-prevented", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Align the modal in the center or top of the screen.
     *
     * @values 'top', 'center'
     */
    alignment: {
        default: string;
        validator: (value: string) => boolean;
    };
    /**
     * Apply a backdrop on body while modal is open.
     *
     * @values boolean | 'static'
     */
    backdrop: {
        type: (StringConstructor | BooleanConstructor)[];
        default: boolean;
        validator: (value: boolean | string) => boolean;
    };
    /**
     * Appends the vue popover to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`.
     *
     * @since 5.3.0
     */
    container: {
        type: PropType<HTMLElement | (() => HTMLElement) | string>;
        default: string;
    };
    /**
     * A string of all className you want applied to the modal content component.
     */
    contentClassName: StringConstructor;
    /**
     * Puts the focus on the modal when shown.
     *
     * @since 5.0.0
     */
    focus: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Set modal to covers the entire user viewport
     *
     * @values boolean, 'sm', 'md', 'lg', 'xl', 'xxl'
     */
    fullscreen: {
        type: (StringConstructor | BooleanConstructor)[];
        validator: (value: boolean | string) => boolean;
    };
    /**
     * Closes the modal when escape key is pressed.
     */
    keyboard: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Create a scrollable modal that allows scrolling the modal body.
     */
    scrollable: BooleanConstructor;
    /**
     * Size the component small, large, or extra large.
     *
     * @values 'sm', 'lg', 'xl'
     */
    size: {
        type: StringConstructor;
        validator: (value: string) => boolean;
    };
    /**
     * Generates modal using Teleport.
     *
     * @since 5.3.0
     */
    teleport: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Remove animation to create modal that simply appear rather than fade in to view.
     */
    transition: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * By default the component is unmounted after close animation, if you want to keep the component mounted set this property to false.
     */
    unmountOnClose: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Toggle the visibility of alert component.
     */
    visible: BooleanConstructor;
}>> & Readonly<{
    onClose?: ((...args: any[]) => any) | undefined;
    onShow?: ((...args: any[]) => any) | undefined;
    "onClose-prevented"?: ((...args: any[]) => any) | undefined;
}>, {
    focus: boolean;
    transition: boolean;
    visible: boolean;
    container: string | HTMLElement | (() => HTMLElement);
    teleport: boolean;
    alignment: string;
    scrollable: boolean;
    backdrop: string | boolean;
    keyboard: boolean;
    unmountOnClose: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export { CModal };
