declare type Item = object; declare type WithId = [number, Item]; export declare type FilterCallback = (item: WithId, idx: number, array: IDataProvider) => boolean; export declare type MapCallback = (item: WithId, idx: number, array: IDataProvider) => any; export interface IDataProvider { length: number; get: (id: string | number) => Item; filter: (cb: FilterCallback) => IDataProvider; map: (cb: MapCallback) => any[]; } export {};