import { Injector } from '@angular/core'; import { List } from 'immutable'; import { Observable } from 'rxjs'; import { IFactoryModel } from '../interfaces/factory-model'; import { IHttpClient } from '../interfaces/http-client'; import { IModel } from '../interfaces/model'; import { IProviderOptions } from '../interfaces/provider-options'; import { IRestOptions } from '../interfaces/rest-options'; import { IRestProviderActionHandlers } from '../interfaces/rest-provider-action-handlers'; import { IRestProviderActionOptions } from '../interfaces/rest-provider-action-options'; import { IRestProviderOptions } from '../interfaces/rest-provider-options'; import { FakeHttpClient } from '../utils/fake-http-client'; import { Provider } from './provider'; export declare class RestProvider extends Provider { protected injector: Injector; protected factoryModel: IFactoryModel; protected options: IProviderOptions; apiUrl: string; httpClient: IHttpClient; fakeHttpClient: FakeHttpClient; restOptions: IRestOptions; providerActionHandlers: IRestProviderActionHandlers; private _pluralName; private _name; constructor(injector: Injector, factoryModel: IFactoryModel, options: IProviderOptions); initFakeHttpClient(): void; init(): void; getOptions(): IRestProviderOptions; setOptions(options?: IRestProviderOptions): void; action(key: string, data?: any, options?: TProviderActionOptions): Observable; create(model: TModel, options?: TProviderActionOptions): Observable; private _update; update(key: number | string, model: TModel, options?: TProviderActionOptions): Observable; patch(key: number | string, model: TModel, options?: TProviderActionOptions): Observable; load(key: number | string, options?: TProviderActionOptions): Observable; delete(key: number | string, options?: TProviderActionOptions): Observable; reloadAll(): void; loadAll(filter?: any, options?: TProviderActionOptions): Observable; private _loadAll; reconfigItems(items?: List): void; }