/// import { IReadyableReadonlyObservableArray } from '../../Core/Observable'; export interface IReadyableArrayObserverProps { /** * The readyable array to observe. This component will use the ready value of this array to * listen for changes and call the appropriate render method. */ data: IReadyableReadonlyObservableArray; /** * This function will be called with the data once it is ready, as long as data exists. */ dataComponent: (data: T[]) => JSX.Element | null; /** * This function will be called if the data is not ready. */ loadingComponent?: () => JSX.Element | null; /** * Callback that is called once the data is ready. This can be during componentDidMount if * the component has data at the first render pass. Or it will be called from an onUpdate call * from the underlying Observer, once the data is ready. */ onReady?: () => void; /** * This function will be called if the data is ready, but there is no data. */ zeroDataComponent?: () => JSX.Element | null; }