/* tslint:disable */ /* eslint-disable */ /** * Hathora Cloud API * Welcome to the Hathora Cloud API documentation! Learn how to use the Hathora Cloud APIs to build and scale your game servers globally. * * The version of the OpenAPI document: 0.0.1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { ApiError, GoogleIdTokenObject, NicknameObject, PlayerTokenObject, } from '../models'; import { ApiErrorFromJSON, ApiErrorToJSON, GoogleIdTokenObjectFromJSON, GoogleIdTokenObjectToJSON, NicknameObjectFromJSON, NicknameObjectToJSON, PlayerTokenObjectFromJSON, PlayerTokenObjectToJSON, } from '../models'; export interface LoginAnonymousRequest { appId: string; } export interface LoginGoogleRequest { appId: string; googleIdTokenObject: GoogleIdTokenObject; } export interface LoginNicknameRequest { appId: string; nicknameObject: NicknameObject; } /** * AuthV1Api - interface * * @export * @interface AuthV1ApiInterface */ export interface AuthV1ApiInterface { /** * Returns a unique player token for an anonymous user. * @param {string} appId * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthV1ApiInterface */ loginAnonymousRaw(requestParameters: LoginAnonymousRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns a unique player token for an anonymous user. */ loginAnonymous(appId: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns a unique player token using a Google-signed OIDC `idToken`. * @param {string} appId * @param {GoogleIdTokenObject} googleIdTokenObject * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthV1ApiInterface */ loginGoogleRaw(requestParameters: LoginGoogleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns a unique player token using a Google-signed OIDC `idToken`. */ loginGoogle(appId: string, googleIdTokenObject: GoogleIdTokenObject, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns a unique player token with a specified nickname for a user. * @param {string} appId * @param {NicknameObject} nicknameObject * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof AuthV1ApiInterface */ loginNicknameRaw(requestParameters: LoginNicknameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns a unique player token with a specified nickname for a user. */ loginNickname(appId: string, nicknameObject: NicknameObject, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } /** * */ export class AuthV1Api extends runtime.BaseAPI implements AuthV1ApiInterface { /** * Returns a unique player token for an anonymous user. */ async loginAnonymousRaw(requestParameters: LoginAnonymousRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.appId === null || requestParameters.appId === undefined) { throw new runtime.RequiredError('appId','Required parameter requestParameters.appId was null or undefined when calling loginAnonymous.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/auth/v1/{appId}/login/anonymous`.replace(`{${"appId"}}`, encodeURIComponent(String(requestParameters.appId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PlayerTokenObjectFromJSON(jsonValue)); } /** * Returns a unique player token for an anonymous user. */ async loginAnonymous(appId: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.loginAnonymousRaw({ appId: appId }, initOverrides); return await response.value(); } /** * Returns a unique player token using a Google-signed OIDC `idToken`. */ async loginGoogleRaw(requestParameters: LoginGoogleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.appId === null || requestParameters.appId === undefined) { throw new runtime.RequiredError('appId','Required parameter requestParameters.appId was null or undefined when calling loginGoogle.'); } if (requestParameters.googleIdTokenObject === null || requestParameters.googleIdTokenObject === undefined) { throw new runtime.RequiredError('googleIdTokenObject','Required parameter requestParameters.googleIdTokenObject was null or undefined when calling loginGoogle.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/auth/v1/{appId}/login/google`.replace(`{${"appId"}}`, encodeURIComponent(String(requestParameters.appId))), method: 'POST', headers: headerParameters, query: queryParameters, body: GoogleIdTokenObjectToJSON(requestParameters.googleIdTokenObject), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PlayerTokenObjectFromJSON(jsonValue)); } /** * Returns a unique player token using a Google-signed OIDC `idToken`. */ async loginGoogle(appId: string, googleIdTokenObject: GoogleIdTokenObject, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.loginGoogleRaw({ appId: appId, googleIdTokenObject: googleIdTokenObject }, initOverrides); return await response.value(); } /** * Returns a unique player token with a specified nickname for a user. */ async loginNicknameRaw(requestParameters: LoginNicknameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.appId === null || requestParameters.appId === undefined) { throw new runtime.RequiredError('appId','Required parameter requestParameters.appId was null or undefined when calling loginNickname.'); } if (requestParameters.nicknameObject === null || requestParameters.nicknameObject === undefined) { throw new runtime.RequiredError('nicknameObject','Required parameter requestParameters.nicknameObject was null or undefined when calling loginNickname.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/auth/v1/{appId}/login/nickname`.replace(`{${"appId"}}`, encodeURIComponent(String(requestParameters.appId))), method: 'POST', headers: headerParameters, query: queryParameters, body: NicknameObjectToJSON(requestParameters.nicknameObject), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PlayerTokenObjectFromJSON(jsonValue)); } /** * Returns a unique player token with a specified nickname for a user. */ async loginNickname(appId: string, nicknameObject: NicknameObject, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.loginNicknameRaw({ appId: appId, nicknameObject: nicknameObject }, initOverrides); return await response.value(); } }