ps2census
Version:
Client to connect to the PS2 Event Stream websocket.
41 lines (40 loc) • 1.43 kB
TypeScript
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>>;
}