UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

32 lines (31 loc) 973 B
/** * @packageDocumentation * @module async-data */ import { Observable } from 'rxjs'; import { StringMap } from '../core/public-api'; import { DataError, DataMapper, DataStateAdapter, LoaderConfig, LoaderConfigWithInterval } from './types'; export interface AsyncLoadState<D> { data?: D; loading?: boolean; error?: DataError; } export declare class AsyncDataLoader<D = unknown, P = StringMap> implements DataStateAdapter<D> { private readonly reloadAction$$; private readonly dataMapper$$; snapshot: { data: D; params: P; loading: boolean; error: DataError; }; loadState$: Observable<AsyncLoadState<D>>; rawData$: Observable<D>; data$: Observable<D>; loading$: Observable<boolean>; error$: Observable<DataError>; constructor(config: LoaderConfig<D, P> | LoaderConfigWithInterval<D, P>); reload(data?: D): void; mapData(mapper: DataMapper<D>): void; private buildFetcher; }