UNPKG

@space-cow-media/spellbook-client

Version:

An Open Api generated client for the Commander Spellbook backend REST API.

157 lines (128 loc) 4.98 kB
/* tslint:disable */ /* eslint-disable */ /** * Commander Spellbook API * API for Commander Spellbook, the combo database engine for Magic: The Gathering * * The version of the OpenAPI document: 4.8.19 * * * 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 { Feature, PaginatedFeatureList, } from '../models/index'; import { FeatureFromJSON, FeatureToJSON, PaginatedFeatureListFromJSON, PaginatedFeatureListToJSON, } from '../models/index'; export interface FeaturesListRequest { limit?: number; offset?: number; q?: string; status?: Array<FeaturesListStatusEnum>; } export interface FeaturesRetrieveRequest { id: number; } /** * */ export class FeaturesApi extends runtime.BaseAPI { /** */ async featuresListRaw(requestParameters: FeaturesListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PaginatedFeatureList>> { const queryParameters: any = {}; if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['offset'] != null) { queryParameters['offset'] = requestParameters['offset']; } if (requestParameters['q'] != null) { queryParameters['q'] = requestParameters['q']; } if (requestParameters['status'] != null) { queryParameters['status'] = requestParameters['status']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("jwtAuth", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/features/`; const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PaginatedFeatureListFromJSON(jsonValue)); } /** */ async featuresList(requestParameters: FeaturesListRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PaginatedFeatureList> { const response = await this.featuresListRaw(requestParameters, initOverrides); return await response.value(); } /** */ async featuresRetrieveRaw(requestParameters: FeaturesRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Feature>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling featuresRetrieve().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = await token("jwtAuth", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } let urlPath = `/features/{id}/`; urlPath = urlPath.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))); const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => FeatureFromJSON(jsonValue)); } /** */ async featuresRetrieve(requestParameters: FeaturesRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Feature> { const response = await this.featuresRetrieveRaw(requestParameters, initOverrides); return await response.value(); } } /** * @export * @enum {string} */ export enum FeaturesListStatusEnum { C = 'C', H = 'H', Hu = 'HU', Pu = 'PU', S = 'S' }