UNPKG

ps2census

Version:

Client to connect to the PS2 Event Stream websocket.

41 lines (40 loc) 1.43 kB
import { AxiosRequestConfig } from 'axios'; import { PS2Environment } from '../types/ps2.options'; import { GetQuery } from './get.query'; import { CensusGetResponse } from './types/census'; import { CollectionNames, Conditions, Params } from './types/collection'; import { RestContract } from './concern/rest.contract'; export interface RestClientOptions { serviceId?: string; baseURL?: string; axios?: Pick<AxiosRequestConfig, 'timeout' | 'timeoutErrorMessage' | 'httpAgent' | 'httpsAgent' | 'proxy'>; } /** * A direct interface to interact with the Census api */ export declare class RestClient implements RestContract { readonly environment: PS2Environment; static readonly CENSUS_HTTPS = "https://census.daybreakgames.com"; private api; constructor(environment: PS2Environment, { serviceId, baseURL, axios, }?: RestClientOptions); /** * Create a new get query builder * * @param collection */ getQueryBuilder<C extends CollectionNames>(collection: C): GetQuery<C>; /** * Run a count query * * @param collection * @param query */ count<C extends CollectionNames>(collection: C, query: Conditions<C>): Promise<number>; /** * Execute a get query directly * * @param collection * @param params */ get<C extends CollectionNames, R>(collection: C, params: Params<C>): Promise<CensusGetResponse<C, R>>; }