import React, { CSSProperties, FC } from 'react';
import { ButtonProps } from '@parlor/ui/button';
import { ModalProps } from '../../modal';
export type BaseConfirmProps = {
    additionalBtn?: {
        handleOnClick?(): void;
        text?: string;
        variant?: ButtonProps['variant'];
    };
    /**
     * @description cancel button options
     * @default ``` { color: 'navy', text: 'Cancel', variant: 'white' } ```
     */
    cancelBtn?: {
        color?: ButtonProps['color'];
        text?: string;
        type?: 'button' | 'reset';
        variant?: ButtonProps['variant'];
    };
    classes?: {
        description?: string;
        header?: string;
        title?: string;
    };
    /**
     * @description if passed as string
     * ```tsx
     *  <Typography as="div" color={theme.gray1}>{description}</Typography>
     * ```
     *  will be used
     * @type {(string | JSX.Element)}
     */
    description?: string | JSX.Element;
    /**
     * @description calls onSubmit on `Enter` key press
     * @type {boolean}
     * @default ```true```
     */
    enterToSubmit?: boolean;
    footerStyle?: CSSProperties;
    /**
     * @description buttons placement
     * @type {CSSProperties['justifyContent']}
     * @default ```center```
     */
    footerVariant?: CSSProperties['justifyContent'];
    /**
     * @description Decide whether or not to force a confirmation string
     * @type {boolean}
     * @default ```false```
     */
    isSecondaryConfirmation?: boolean;
    /**
     * @description footer will have a transparent background
     * @type {boolean}
     * @default ```false```
     */
    isTransparentFooter?: boolean;
    /**
     * @description ok button options
     * @default ``` { color: 'green' , text: 'Confirm', variant: undefined } ```
     */
    okBtn?: {
        color?: ButtonProps['color'];
        disabled?: boolean;
        text?: string;
        type?: 'submit' | 'button';
        variant?: ButtonProps['variant'];
    };
    /**
     * @description on cancel
     * @type {Function}
     */
    onCancel?: (e?: MouseEvent) => void;
    /**
     * @description on close
     * @type {Function}
     * @default ```onCancel```
     */
    onClose?(): void;
    /**
     * @description on submit will disable everything and set button to loading state
     * @type {Function}
     */
    onSubmit?(): void;
    /**
     * @description show modal close icon
     * @type {boolean}
     * @default ```true```
     */
    showCloseIcon?: boolean;
    title?: string;
} & ModalProps;
export declare const BaseConfirm: FC<React.PropsWithChildren<BaseConfirmProps>>;
