import React from 'react'; import type { KeyWiseTransferItem, RenderResult, SelectAllLabel, TransferDirection, TransferLocale } from './index'; import type { PaginationType, TransferKey } from './interface'; import type { TransferListBodyProps } from './ListBody'; export interface RenderedItem { renderedText: string; renderedEl: React.ReactNode; item: RecordType; } type RenderListFunction = (props: TransferListBodyProps) => React.ReactNode; export interface TransferListProps extends TransferLocale { prefixCls: string; titleText: React.ReactNode; dataSource: RecordType[]; filterOption?: (filterText: string, item: RecordType, direction: TransferDirection) => boolean; style?: React.CSSProperties; checkedKeys: TransferKey[]; handleFilter: (e: React.ChangeEvent) => void; onItemSelect: (key: TransferKey, check: boolean, e?: React.MouseEvent) => void; onItemSelectAll: (dataSource: TransferKey[], checkAll: boolean | 'replace') => void; onItemRemove?: (keys: TransferKey[]) => void; handleClear: () => void; /** Render item */ render?: (item: RecordType) => RenderResult; showSearch?: boolean; searchPlaceholder: string; itemUnit: string; itemsUnit: string; renderList?: RenderListFunction; footer?: (props: TransferListProps, info?: { direction: TransferDirection; }) => React.ReactNode; onScroll: (e: React.UIEvent) => void; disabled?: boolean; direction: TransferDirection; showSelectAll?: boolean; selectAllLabel?: SelectAllLabel; showRemove?: boolean; pagination?: PaginationType; selectionsIcon?: React.ReactNode; } export interface TransferCustomListBodyProps extends TransferListBodyProps { } declare const TransferList: { (props: TransferListProps): React.JSX.Element; displayName: string; }; export default TransferList;