UNPKG

@space-cow-media/spellbook-client

Version:

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

177 lines (146 loc) 5.82 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: 5.4.10 * * * 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.js'; import { type Feature, FeatureFromJSON, FeatureToJSON, } from '../models/Feature.js'; import { type PaginatedFeatureList, PaginatedFeatureListFromJSON, PaginatedFeatureListToJSON, } from '../models/PaginatedFeatureList.js'; export interface FeaturesListRequest { count?: boolean; limit?: number; offset?: number; q?: string; status?: Array<FeaturesListStatusEnum>; } export interface FeaturesRetrieveRequest { id: number; } /** * */ export class FeaturesApi extends runtime.BaseAPI { /** * Creates request options for featuresList without sending the request */ async featuresListRequestOpts(requestParameters: FeaturesListRequest): Promise<runtime.RequestOpts> { const queryParameters: any = {}; if (requestParameters['count'] != null) { queryParameters['count'] = requestParameters['count']; } 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/`; return { path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }; } /** */ async featuresListRaw(requestParameters: FeaturesListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PaginatedFeatureList>> { const requestOptions = await this.featuresListRequestOpts(requestParameters); const response = await this.request(requestOptions, 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(); } /** * Creates request options for featuresRetrieve without sending the request */ async featuresRetrieveRequestOpts(requestParameters: FeaturesRetrieveRequest): Promise<runtime.RequestOpts> { 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']))); return { path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }; } /** */ async featuresRetrieveRaw(requestParameters: FeaturesRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Feature>> { const requestOptions = await this.featuresRetrieveRequestOpts(requestParameters); const response = await this.request(requestOptions, 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' }