/// import { WebmateAuthInfo } from "./webmate-auth-info"; import { WebmateEnvironment } from "./webmate-environment"; import { URL } from "url"; import { Map } from "immutable"; import { Observable } from "rxjs"; /** * API client for interacting with the webmate API. */ export declare class WebmateAPIClient { private authInfo; private environment; constructor(authInfo: WebmateAuthInfo, environment: WebmateEnvironment); private getRequestConfig; sendGET(schema: UriTemplate, params: Map, urlParams?: Map): Observable; sendPOST(schema: UriTemplate, params: Map, body?: Object, urlParams?: Map): Observable; sendPOSTWithFile(schema: UriTemplate, filePath: string, params: Map, contentType?: string, urlParams?: Map): Observable; sendPOSTStreamResponse(schema: UriTemplate, params: Map, body?: Object, urlParams?: Map): Observable; sendDELETE(schema: UriTemplate, params: Map): Observable; } /** * Template for API URI, e.g. "/browsersessions/${browserSessionId}" */ export declare class UriTemplate { readonly schema: string; readonly name?: string | undefined; constructor(schema: string, name?: string | undefined); replaceParamsInTemplate(template: string, params: Map): string; buildUri(baseUri: URL, params: Map): string; } export interface ApiPaginationInfo { nextLink?: string; prevLink?: string; } export interface PaginatedApiResult { links?: ApiPaginationInfo; data: Array; }