/* tslint:disable */ /* eslint-disable */ /** * BugBash * BugBash\'s backend service * * The version of the OpenAPI document: 1.2.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 { Account, AccountFromJSON, AccountToJSON, BugBash, BugBashFromJSON, BugBashToJSON, BugBashItem, BugBashItemFromJSON, BugBashItemToJSON, CreateAccountBody, CreateAccountBodyFromJSON, CreateAccountBodyToJSON, CreateBugBashBody, CreateBugBashBodyFromJSON, CreateBugBashBodyToJSON, ModelError, ModelErrorFromJSON, ModelErrorToJSON, } from '../models'; export interface CreateAccountRequest { email: string; password: string; createAccountBody: CreateAccountBody; } export interface CreateBugBashRequest { accountID: string; createBugBashBody: CreateBugBashBody; } export interface GetAllBugBashesForAccountRequest { accountID: string; } export interface GetBugBashItemsRequest { bugbashID: string; } export interface GetLoginByEmailAndPasswordRequest { email: string; password: string; } export interface SaveBugBashItemRequest { accountID: string; bugBashItem: BugBashItem; } /** * */ export class DefaultApi extends runtime.BaseAPI { /** * Create new account */ async createAccountRaw(requestParameters: CreateAccountRequest): Promise> { if (requestParameters.email === null || requestParameters.email === undefined) { throw new runtime.RequiredError('email','Required parameter requestParameters.email was null or undefined when calling createAccount.'); } if (requestParameters.password === null || requestParameters.password === undefined) { throw new runtime.RequiredError('password','Required parameter requestParameters.password was null or undefined when calling createAccount.'); } if (requestParameters.createAccountBody === null || requestParameters.createAccountBody === undefined) { throw new runtime.RequiredError('createAccountBody','Required parameter requestParameters.createAccountBody was null or undefined when calling createAccount.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters.email !== undefined && requestParameters.email !== null) { headerParameters['email'] = String(requestParameters.email); } if (requestParameters.password !== undefined && requestParameters.password !== null) { headerParameters['password'] = String(requestParameters.password); } const response = await this.request({ path: `/account`, method: 'POST', headers: headerParameters, query: queryParameters, body: CreateAccountBodyToJSON(requestParameters.createAccountBody), }); return new runtime.JSONApiResponse(response, (jsonValue) => AccountFromJSON(jsonValue)); } /** * Create new account */ async createAccount(requestParameters: CreateAccountRequest): Promise { const response = await this.createAccountRaw(requestParameters); return await response.value(); } /** * Start a bug bash session */ async createBugBashRaw(requestParameters: CreateBugBashRequest): Promise> { if (requestParameters.accountID === null || requestParameters.accountID === undefined) { throw new runtime.RequiredError('accountID','Required parameter requestParameters.accountID was null or undefined when calling createBugBash.'); } if (requestParameters.createBugBashBody === null || requestParameters.createBugBashBody === undefined) { throw new runtime.RequiredError('createBugBashBody','Required parameter requestParameters.createBugBashBody was null or undefined when calling createBugBash.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/bugbash/{accountID}`.replace(`{${"accountID"}}`, encodeURIComponent(String(requestParameters.accountID))), method: 'POST', headers: headerParameters, query: queryParameters, body: CreateBugBashBodyToJSON(requestParameters.createBugBashBody), }); return new runtime.JSONApiResponse(response, (jsonValue) => BugBashFromJSON(jsonValue)); } /** * Start a bug bash session */ async createBugBash(requestParameters: CreateBugBashRequest): Promise { const response = await this.createBugBashRaw(requestParameters); return await response.value(); } /** * Get all bug bash sessions for an account */ async getAllBugBashesForAccountRaw(requestParameters: GetAllBugBashesForAccountRequest): Promise>> { if (requestParameters.accountID === null || requestParameters.accountID === undefined) { throw new runtime.RequiredError('accountID','Required parameter requestParameters.accountID was null or undefined when calling getAllBugBashesForAccount.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/bugbash/{accountID}`.replace(`{${"accountID"}}`, encodeURIComponent(String(requestParameters.accountID))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BugBashFromJSON)); } /** * Get all bug bash sessions for an account */ async getAllBugBashesForAccount(requestParameters: GetAllBugBashesForAccountRequest): Promise> { const response = await this.getAllBugBashesForAccountRaw(requestParameters); return await response.value(); } /** * Get all bug bash items for a specific bug bash */ async getBugBashItemsRaw(requestParameters: GetBugBashItemsRequest): Promise>> { if (requestParameters.bugbashID === null || requestParameters.bugbashID === undefined) { throw new runtime.RequiredError('bugbashID','Required parameter requestParameters.bugbashID was null or undefined when calling getBugBashItems.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/bugbash/{bugbashID}/items`.replace(`{${"bugbashID"}}`, encodeURIComponent(String(requestParameters.bugbashID))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BugBashItemFromJSON)); } /** * Get all bug bash items for a specific bug bash */ async getBugBashItems(requestParameters: GetBugBashItemsRequest): Promise> { const response = await this.getBugBashItemsRaw(requestParameters); return await response.value(); } /** * Verify if login credentials are valid */ async getLoginByEmailAndPasswordRaw(requestParameters: GetLoginByEmailAndPasswordRequest): Promise> { if (requestParameters.email === null || requestParameters.email === undefined) { throw new runtime.RequiredError('email','Required parameter requestParameters.email was null or undefined when calling getLoginByEmailAndPassword.'); } if (requestParameters.password === null || requestParameters.password === undefined) { throw new runtime.RequiredError('password','Required parameter requestParameters.password was null or undefined when calling getLoginByEmailAndPassword.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (requestParameters.email !== undefined && requestParameters.email !== null) { headerParameters['email'] = String(requestParameters.email); } if (requestParameters.password !== undefined && requestParameters.password !== null) { headerParameters['password'] = String(requestParameters.password); } const response = await this.request({ path: `/login`, method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => AccountFromJSON(jsonValue)); } /** * Verify if login credentials are valid */ async getLoginByEmailAndPassword(requestParameters: GetLoginByEmailAndPasswordRequest): Promise { const response = await this.getLoginByEmailAndPasswordRaw(requestParameters); return await response.value(); } /** * Health check endpoint */ async healthCheckRaw(): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/_health`, method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** * Health check endpoint */ async healthCheck(): Promise { await this.healthCheckRaw(); } /** * Save bug bash item */ async saveBugBashItemRaw(requestParameters: SaveBugBashItemRequest): Promise> { if (requestParameters.accountID === null || requestParameters.accountID === undefined) { throw new runtime.RequiredError('accountID','Required parameter requestParameters.accountID was null or undefined when calling saveBugBashItem.'); } if (requestParameters.bugBashItem === null || requestParameters.bugBashItem === undefined) { throw new runtime.RequiredError('bugBashItem','Required parameter requestParameters.bugBashItem was null or undefined when calling saveBugBashItem.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/bugbash/item/{accountID}`.replace(`{${"accountID"}}`, encodeURIComponent(String(requestParameters.accountID))), method: 'POST', headers: headerParameters, query: queryParameters, body: BugBashItemToJSON(requestParameters.bugBashItem), }); return new runtime.JSONApiResponse(response, (jsonValue) => BugBashItemFromJSON(jsonValue)); } /** * Save bug bash item */ async saveBugBashItem(requestParameters: SaveBugBashItemRequest): Promise { const response = await this.saveBugBashItemRaw(requestParameters); return await response.value(); } }