import { Observable } from 'rxjs'; import { EntityMessageBroker } from '../broker'; import { QueryService, SearchService } from '../services'; import { Entity } from './Entity'; import { EntityListOptions } from './EntityListOptions'; import { StatefulSubject } from './StatefulSubject'; export declare type EntityListReference = SearchService | QueryService; export declare type EntityOperation = number | Entity; export interface ListResults { start: number; count: number; data: any[]; total?: number; } export declare class EntityList extends StatefulSubject { static useSearch: boolean; type: string; descriptor: any; private $latest; private readonly $ref; private readonly $list; readonly $loadError: Observable; private readonly loadErrorSubject; protected broker: EntityMessageBroker; private latestTimestamp; constructor(type: string, options?: EntityListOptions, state?: T[], callingIdentifier?: string); protected getSearcher(type: string, callingIdentifier?: string): EntityListReference; get lastAdded(): Entity; get info(): { total: number; messages: import("../types/Responses").BullhornMessage[]; start: string; count: string; }; findById(pk: number): Entity; push(item: T): Promise; update(item: EntityOperation, value: T): Promise; remove(item: EntityOperation): Promise; private _setUpObservable; private _eventHook; private _checkOperationCases; }