import { Resource } from './resource'; import { Sort } from './sort'; import { ResourceArray } from './resourceArray'; import { ExternalService } from './external.service'; import { HalOptions, HalParam } from './rest.service'; import { SubtypeBuilder } from './subtypeBuilder'; import { Observable } from 'rxjs/internal/Observable'; export declare class ResourceService { private externalService; constructor(externalService: ExternalService); private static getURL; getAll(type: new () => T, resource: string, _embedded: string, options?: HalOptions, subType?: SubtypeBuilder): Observable>; get(type: new () => T, resource: string, id: any, params?: HalParam[], builder?: SubtypeBuilder): Observable; getBySelfLink(type: new () => T, resourceLink: string): Observable; search(type: new () => T, query: string, resource: string, _embedded: string, options?: HalOptions, subType?: SubtypeBuilder): Observable>; searchSingle(type: new () => T, query: string, resource: string, options?: HalOptions): Observable; customQuery(type: new () => T, query: string, resource: string, _embedded: string, options?: HalOptions, subType?: SubtypeBuilder): Observable>; customQueryPost(type: new () => T, query: string, resource: string, _embedded: string, options?: HalOptions, body?: any, subType?: SubtypeBuilder): Observable>; getByRelation(type: new () => T, resourceLink: string): Observable; getByRelationArray(type: new () => T, resourceLink: string, _embedded: string, builder?: SubtypeBuilder): Observable>; getProjection(type: new () => T, resource: string, id: string, projectionName: string): Observable; getProjectionArray(type: new () => T, resource: string, projectionName: string): Observable; count(resource: string, query?: string, options?: HalOptions): Observable; create(selfResource: string, entity: T): Observable | T>; update(entity: T): Observable | T>; patch(entity: T): Observable | T>; delete(entity: T): Observable; hasNext(resourceArray: ResourceArray): boolean; hasPrev(resourceArray: ResourceArray): boolean; hasFirst(resourceArray: ResourceArray): boolean; hasLast(resourceArray: ResourceArray): boolean; next(resourceArray: ResourceArray, type: new () => T): Observable>; prev(resourceArray: ResourceArray, type: new () => T): Observable>; first(resourceArray: ResourceArray, type: new () => T): Observable>; last(resourceArray: ResourceArray, type: new () => T): Observable>; page(resourceArray: ResourceArray, type: new () => T, id: number): Observable>; sortElements(resourceArray: ResourceArray, type: new () => T, ...sort: Sort[]): Observable>; size(resourceArray: ResourceArray, type: new () => T, size: number): Observable>; private getResourceUrl; private setUrls; private setUrlsResource; }