import * as React from 'react';
import type { HTMLAttributesWithRootRef } from '../../types';
export interface ModalCardBaseProps extends Omit<HTMLAttributesWithRootRef<HTMLDivElement>, 'title'> {
    /**
     * Иконка.
     *
     * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src="" />`.
     */
    icon?: React.ReactNode;
    /**
     * Заголовок карточки.
     */
    title?: React.ReactNode;
    /**
     * Позволяет поменять тег используемый для заголовка.
     */
    titleComponent?: React.ElementType;
    /**
     * Позволяет задать id для заголовка. Используется, чтобы связать модальное окно и title через aria-labelledby, тем самым задав модальному окну имя через title.
     */
    titleId?: string;
    /**
     * Описание.
     */
    description?: React.ReactNode;
    /**
     * Позволяет поменять тег используемый для описания.
     */
    descriptionComponent?: React.ElementType;
    /**
     * Кнопки-действия. Принимает [`Button`](https://vkui.io/components/button) с параметрами:
     *
     * - `size="l" mode="primary" stretched`
     * - `size="l" mode="secondary" stretched`.
     *
     * Для набора кнопок используйте [`ButtonGroup`](https://vkui.io/components/button-group) с параметрами:
     *
     * - `gap="s" mode="horizontal" stretched`
     * - `gap="m" mode="vertical" stretched`.
     */
    actions?: React.ReactNode;
    /**
     * Обработчик закрытия модального окна.
     */
    onClose?: VoidFunction;
    /**
     * Текст кнопки закрытия. Делает ее доступной для ассистивных технологий.
     */
    dismissLabel?: string;
    /**
     * Задаёт контенту максимальную ширину для десктопной версии.
     */
    size?: number;
    /**
     * Передает атрибут `data-testid` для кнопки закрытия.
     */
    modalDismissButtonTestId?: string;
    /**
     * Расположение кнопки закрытия (внутри и вне `popout'a`).
     *
     * Доступно только в `compact`-режиме.
     *
     * На `iOS` в `regular`-режиме всегда включен `inside`.
     *
     * ⚠️ ВНИМАНИЕ: использование `none` скрывает крестик, это негативно сказывается на пользовательском опыте.
     */
    dismissButtonMode?: 'inside' | 'outside' | 'none';
    /**
     * Позволяет отключить возможность закрытия модальной страницы (смахивание, клавиша `ESC`, нажатие на подложку).
     *
     * ⚠️ ВНИМАНИЕ: использование этой опции негативно сказывается на пользовательском опыте.
     */
    preventClose?: boolean;
    /**
     * Управляющие элементы под кнопкой закрытия.
     *
     * Доступно только в `compact`-режиме. Рекомендуется размещать иконки размера 20, обернутые в ModalOutsideButton.
     *
     */
    outsideButtons?: React.ReactNode;
}
/**
 * @see https://vkui.io/components/modal-card-base
 */
export declare const ModalCardBase: ({ icon, title, titleComponent, description, descriptionComponent, children, actions, onClose, dismissLabel, size: sizeProp, modalDismissButtonTestId, dismissButtonMode, preventClose, outsideButtons, titleId, ...restProps }: ModalCardBaseProps) => React.ReactNode;
//# sourceMappingURL=ModalCardBase.d.ts.map