/* tslint:disable */ /* eslint-disable */ /** * EAS API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * 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 { Coin, CoinResult, DrawTossPayload, } from '../models/index'; import { CoinFromJSON, CoinToJSON, CoinResultFromJSON, CoinResultToJSON, DrawTossPayloadFromJSON, DrawTossPayloadToJSON, } from '../models/index'; export interface CoinCreateRequest { coin: Coin; } export interface CoinReadRequest { id: string; } export interface CoinTossRequest { id: string; drawTossPayload: DrawTossPayload; } /** * CoinApi - interface * * @export * @interface CoinApiInterface */ export interface CoinApiInterface { /** * * @param {Coin} coin * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CoinApiInterface */ coinCreateRaw(requestParameters: CoinCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** */ coinCreate(requestParameters: CoinCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * * @param {string} id * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CoinApiInterface */ coinReadRaw(requestParameters: CoinReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** */ coinRead(requestParameters: CoinReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * * @param {string} id * @param {DrawTossPayload} drawTossPayload * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CoinApiInterface */ coinTossRaw(requestParameters: CoinTossRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** */ coinToss(requestParameters: CoinTossRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } /** * */ export class CoinApi extends runtime.BaseAPI implements CoinApiInterface { /** */ async coinCreateRaw(requestParameters: CoinCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['coin'] == null) { throw new runtime.RequiredError( 'coin', 'Required parameter "coin" was null or undefined when calling coinCreate().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/coin/`, method: 'POST', headers: headerParameters, query: queryParameters, body: CoinToJSON(requestParameters['coin']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CoinFromJSON(jsonValue)); } /** */ async coinCreate(requestParameters: CoinCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.coinCreateRaw(requestParameters, initOverrides); return await response.value(); } /** */ async coinReadRaw(requestParameters: CoinReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling coinRead().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/coin/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CoinFromJSON(jsonValue)); } /** */ async coinRead(requestParameters: CoinReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.coinReadRaw(requestParameters, initOverrides); return await response.value(); } /** */ async coinTossRaw(requestParameters: CoinTossRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling coinToss().' ); } if (requestParameters['drawTossPayload'] == null) { throw new runtime.RequiredError( 'drawTossPayload', 'Required parameter "drawTossPayload" was null or undefined when calling coinToss().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/coin/{id}/toss/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'POST', headers: headerParameters, query: queryParameters, body: DrawTossPayloadToJSON(requestParameters['drawTossPayload']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CoinResultFromJSON(jsonValue)); } /** */ async coinToss(requestParameters: CoinTossRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.coinTossRaw(requestParameters, initOverrides); return await response.value(); } }