type SectionData = { id: string }; type ItemData = { id: string }; type SectionArgs = { section: SectionData; index: number }; type ItemArgs = { Item: ItemData; section: SectionData; index: number }; const BoardView: React.FC<{ ref?: React.Ref; sections: SectionData[]; renderSection: (args: SectionArgs) => React.ReactNode; renderSectionOverlay?: (args: SectionArgs) => React.ReactNode; renderItemOverlay?: (args: ItemArgs) => React.ReactNode; onMoveSection?: (source: SectionArgs, destination: SectionArgs) => void; onMoveItem?: (source: ItemArgs, destination: ItemArgs) => void; className?: string; isDragAndDropDisabled?: boolean; }> & { Section: React.FC<{ ref?: React.Ref; section: SectionData; items: ItemData[]; renderItem: (args: ItemArgs) => React.ReactNode; isDragAndDropDisabled?: boolean; }>; }; export default BoardView;