import { TextReplacements } from '../../Text/Text';
import { default as React, Dispatch, SetStateAction } from 'react';
import { ButtonProps, ButtonShape, ButtonTypes } from '../../Button/Button';
import { IconNames } from '../../Icon/IconNames';
export type ModalFooterAction = {
    cta: (change?: Dispatch<SetStateAction<number>>) => void;
    text: string;
    autogen?: boolean;
    hidden?: boolean;
    icon?: IconNames;
    iconPlacement?: 'left' | 'right';
    type?: ButtonTypes;
    replacements?: TextReplacements;
};
export type SubButtonProps = Pick<ButtonProps, 'isLoading' | 'disabled'>;
export interface ModalFooterProps {
    children?: React.ReactNode;
    buttonsPosition?: 'start' | 'end' | 'between' | 'center';
    className?: string;
    positive?: (ModalFooterAction & SubButtonProps & {
        popoverMessage?: string;
    }) | null;
    neutral?: (ModalFooterAction & SubButtonProps & {
        popoverMessage?: string;
    }) | null;
    negative?: (ModalFooterAction & SubButtonProps) | null;
    padding?: number | string;
    buttonsShape?: ButtonShape;
    showTopBorder?: boolean;
}
export declare const ModalFooter: (props: ModalFooterProps) => import("react/jsx-runtime").JSX.Element;
