import * as React from 'react'; import type { HasRootRef } from '../../types'; import type { ActionSheetItemProps } from '../ActionSheetItem/ActionSheetItem'; import type { SharedDropdownProps } from './types'; export type ActionSheetOnCloseReason = 'click-action-item' | 'click-cancel-item' | 'click-overlay' | 'keydown-item' | 'escape-key'; export type ActionSheetOnClosedReason = 'action-item' | 'cancel-item' | 'other'; /** * @deprecated Since 8.0.0 аргумент, переданный в функцию `onClosed`, устарел и будет удален в **VKUI v10**. * Для получения причины закрытия всплывающего окна используйте свойство `onClose`. */ export interface ActionSheetOnCloseOptions { /** * Причина закрытия всплывающего элемента. * * @deprecated Since 8.0.0 аргумент, переданный в функцию `onClosed`, устарел и будет удален в **VKUI v10**. * Для получения причины закрытия всплывающего окна используйте свойство `onClose`. */ closedBy: ActionSheetOnClosedReason; } export interface ActionSheetProps extends Pick, Omit, 'autoFocus' | 'title'> { /** * Заголовок всплывающего окна. */ title?: React.ReactNode | undefined; /** * Описание всплывающего окна, под заголовком. */ description?: React.ReactNode | undefined; /** * Обработчик закрытия всплывающего окна. */ onClose?: ((reason: ActionSheetOnCloseReason) => void) | undefined; /** * Обработчик закрытия всплывающего окна срабатывающий после завершения анимации закрытия. * * > Since 8.0.0 аргумент, переданный в данную функцию, устарел и будет удален в **VKUI v10**. * > Для получения причины закрытия всплывающего окна используйте свойство `onClose`. */ onClosed: (options: ActionSheetOnCloseOptions) => void; /** * Только мобильный iOS. */ iosCloseItem?: React.ReactNode | undefined; /** * Свойства, которые можно прокинуть внутрь компонента: * - `iosCloseItem`: свойства для прокидывания в кнопку отмены на iOS. */ slotProps?: { iosCloseItem?: (Omit & HasRootRef) | undefined; } | undefined; /** * Режим отображения компонента: * * - `sheet` – отображение снизу экрана в виде всплывающего окна, подходит для мобильных устройств * - `menu` – отображение в виде всплывающего элемента, относительно якорного элемента. */ mode?: 'sheet' | 'menu' | undefined; /** * @deprecated Since 7.3.0. Будет удалeно в **VKUI v9**. */ mount?: boolean | undefined; /** * @deprecated Since 7.3.0. Будет удалeно в **VKUI v9**. */ disabled?: boolean | undefined; } /** * @see https://vkui.io/components/action-sheet */ export declare const ActionSheet: ({ children, className, title, description, style, iosCloseItem, slotProps, popupOffsetDistance, placement, mode: modeProp, onClose: onCloseProp, onClosed, ...restProps }: ActionSheetProps) => React.ReactNode; //# sourceMappingURL=ActionSheet.d.ts.map