Last active
April 19, 2020 12:53
-
-
Save bertrandk/482f82247ecea16be520eec7b7b89d60 to your computer and use it in GitHub Desktop.
Typescript React Virtualized
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// <reference path="../react/react.d.ts" /> | |
declare namespace ReactVirtualized { | |
import React = __React | |
interface CellGroupRendererConfig { | |
cellSizeAndPositionGetter: Function; | |
indices: Array<number>; | |
cellRenderer: Function; | |
} | |
interface CellRendererConfig { | |
index: number; | |
isScrolling: boolean; | |
} | |
interface CellConfig { | |
height: number; | |
width: number; | |
x: number; | |
y: number; | |
} | |
interface CellSizeAndPositionGetterConfig { | |
index: number; | |
} | |
interface SectionRenderedConfig { | |
indices: Array<number>; | |
} | |
interface ScrollConfig { | |
clientHeight: number; | |
clientWidth: number; | |
scrollHeight: number; | |
scrollLeft: number; | |
scrollTop: number; | |
scrollWidth: number; | |
} | |
type CollectionAlignment = 'auto' | 'start' | 'end'; | |
interface CollectionProps extends React.Props<Collection> { | |
className?: string; | |
cellCount: number; | |
cellGroupRenderer: (config: CellGroupRendererConfig) => Array<React.ReactNode>; | |
cellRenderer: (config: CellRendererConfig) => React.ReactElement<any>; | |
cellSizeAndPositionGetter: (config: CellSizeAndPositionGetterConfig) => CellConfig; | |
height: number; | |
noContentRenderer?: () => React.ReactNode; | |
onSectionRendered?: (config: SectionRenderedConfig) => void; | |
onScroll?: (config: ScrollConfig) => void; | |
scrollLeft?: number; | |
scrollToAlignment?: CollectionAlignment; | |
scrollToCell?: number; | |
scrollTop?: number; | |
sectionSize?: number; | |
style?: Object; | |
width: number; | |
} | |
interface Collection extends React.ComponentClass<CollectionProps> {} | |
interface CollectionElement extends React.ReactElement<CollectionProps> {} | |
} | |
declare module 'react-virtualized' { | |
export type Collection = ReactVirtualized.Collection | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment