import * as React from 'react'; import type { HTMLAttributesWithRootRef } from '../../types'; export interface RemovableProps { /** * Текст кнопки удаления ячейки. Визуально скрыт везде, кроме iOS. На iOS появляется в выезжающей кнопке для удаления ячейки. */ removePlaceholder?: React.ReactNode; /** * Обработчик, срабатывающий при нажатии на контрол удаления. */ onRemove?: (e: React.MouseEvent, rootEl?: HTMLElement | null) => void; /** * Передает атрибут `data-testid` для кнопки, которая активирует кнопку удаления (iOS only). */ toggleButtonTestId?: string; /** * Передает атрибут `data-testid` для кнопки удаления. */ removeButtonTestId?: string; /** * Блокировка взаимодействия с компонентом. */ disabled?: boolean; } export interface RemovableIosRenderProps { /** * Показывает состояние Removable на платформе iOS при нажатии на иконку удаления. * Для имитации поведения на iOS при нажатии на иконку удаления самого удаление не происходит, * контент сдвигается влево и справа выезжает настоящая кнопка "Удалить". * Когда контент сдвинут `isRemoving = true`. */ isRemoving: boolean; } interface RemovableOwnProps extends Omit, 'children'>, RemovableProps { /** * Расположение кнопки удаления. */ align?: 'start' | 'center'; /** * Скрывает кнопку, но оставляет отступ. * @since 5.4.0 */ indent?: boolean; /** * Убирает базовые отступы для базовой платформы. */ noPadding?: boolean; /** * Содержимое. Можно передать функцию для отрисовки. */ children?: React.ReactNode | ((renderProps: RemovableIosRenderProps) => React.ReactNode); } export declare const Removable: ({ children, onRemove, removePlaceholder, align, indent, toggleButtonTestId, removeButtonTestId, disabled, noPadding, ...restProps }: RemovableOwnProps) => React.ReactNode; export {}; //# sourceMappingURL=Removable.d.ts.map