UNPKG

dc-management-sdk-js

Version:
46 lines (45 loc) 3.61 kB
import { HttpClient } from '../../http/HttpClient'; import { HttpMethod, HttpRequest } from '../../http/HttpRequest'; import { HttpResponse } from '../../http/HttpResponse'; import { AuthHeaderProvider } from '../../auth/AuthHeaderProvider'; import { HalLink } from '../models/HalLink'; import { HalResource, HalResourceConstructor } from '../models/HalResource'; /** * @hidden */ export interface HalClient { fetchLinkedResource<T extends HalResource>(link: HalLink, params: any, resourceConstructor: HalResourceConstructor<T>): Promise<T>; fetchResource<T extends HalResource>(path: string, resourceConstructor: HalResourceConstructor<T>): Promise<T>; createLinkedResource<T extends HalResource>(link: HalLink, params: any, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; performActionThatReturnsResource<T extends HalResource>(link: HalLink, params: any, data: any, resourceConstructor: HalResourceConstructor<T>, method: HttpMethod.POST | HttpMethod.PATCH | HttpMethod.PUT): Promise<T>; createResource<T extends HalResource>(path: string, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; updateResource<T extends HalResource>(path: string, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; updateLinkedResource<T extends HalResource>(link: HalLink, params: any, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; deleteLinkedResource(link: HalLink, params: any): Promise<void>; deleteResource(path: string): Promise<void>; performActionWithoutResourceResponse(link: HalLink, params: any, data: any, method: HttpMethod.POST | HttpMethod.PATCH | HttpMethod.PUT): Promise<void>; parse<T extends HalResource>(data: any, resourceConstructor: HalResourceConstructor<T>): T; serialize<T>(data: T): any; } /** * @hidden */ export declare class DefaultHalClient implements HalClient { private baseUrl; private httpClient; private authHeaderProvider; constructor(baseUrl: string, httpClient: HttpClient, authHeaderProvider: AuthHeaderProvider); fetchLinkedResource<T extends HalResource>(link: HalLink, params: any, resourceConstructor: HalResourceConstructor<T>): Promise<T>; fetchResource<T extends HalResource>(path: string, resourceConstructor: HalResourceConstructor<T>): Promise<T>; createLinkedResource<T extends HalResource>(link: HalLink, params: any, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; createResource<T extends HalResource>(path: string, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; updateResource<T extends HalResource>(path: string, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; updateLinkedResource<T extends HalResource>(link: HalLink, params: any, resource: T, resourceConstructor: HalResourceConstructor<T>): Promise<T>; deleteLinkedResource(link: HalLink, params: any): Promise<void>; deleteResource(path: string): Promise<void>; performActionWithoutResourceResponse(link: HalLink, params: any, data: any, method?: HttpMethod.POST | HttpMethod.PATCH | HttpMethod.PUT): Promise<void>; performActionThatReturnsResource<T extends HalResource>(link: HalLink, params: any, data: any, resourceConstructor: HalResourceConstructor<T>, method?: HttpMethod.POST | HttpMethod.PATCH | HttpMethod.PUT): Promise<T>; parse<T extends HalResource>(data: any, resourceConstructor: HalResourceConstructor<T>): T; serialize<T>(data: T): any; protected invoke(request: HttpRequest): Promise<HttpResponse>; }