/* tslint:disable */ // @ts-nocheck /* eslint-disable */ /** * Audius API * * The version of the OpenAPI document: 1.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 { ClaimedPrizesResponse, PrizeClaimRequestBody, PrizeClaimResponse, PrizesResponse, } from '../models'; import { ClaimedPrizesResponseFromJSON, ClaimedPrizesResponseToJSON, PrizeClaimRequestBodyFromJSON, PrizeClaimRequestBodyToJSON, PrizeClaimResponseFromJSON, PrizeClaimResponseToJSON, PrizesResponseFromJSON, PrizesResponseToJSON, } from '../models'; export interface ClaimPrizeRequest { claim: PrizeClaimRequestBody; } export interface GetWalletPrizesRequest { wallet: string; } /** * */ export class PrizesApi extends runtime.BaseAPI { /** * @hidden * Claims a prize by verifying a Solana transaction. User must send exactly 2 YAK to the prize receiver address. Returns the prize won and any redeem codes/URLs. */ async claimPrizeRaw(params: ClaimPrizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (params.claim === null || params.claim === undefined) { throw new runtime.RequiredError('claim','Required parameter params.claim was null or undefined when calling claimPrize.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/prizes/claim`, method: 'POST', headers: headerParameters, query: queryParameters, body: PrizeClaimRequestBodyToJSON(params.claim), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PrizeClaimResponseFromJSON(jsonValue)); } /** * Claims a prize by verifying a Solana transaction. User must send exactly 2 YAK to the prize receiver address. Returns the prize won and any redeem codes/URLs. */ async claimPrize(params: ClaimPrizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.claimPrizeRaw(params, initOverrides); return await response.value(); } /** * @hidden * Gets a list of active prizes available for claiming. Excludes sensitive information like download URLs. */ async getPrizesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/prizes`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PrizesResponseFromJSON(jsonValue)); } /** * Gets a list of active prizes available for claiming. Excludes sensitive information like download URLs. */ async getPrizes(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getPrizesRaw(initOverrides); return await response.value(); } /** * @hidden * Gets all claimed prizes for a wallet. Public endpoint - no authentication required. Excludes sensitive action_data for security. */ async getWalletPrizesRaw(params: GetWalletPrizesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (params.wallet === null || params.wallet === undefined) { throw new runtime.RequiredError('wallet','Required parameter params.wallet was null or undefined when calling getWalletPrizes.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/wallet/{wallet}/prizes`.replace(`{${"wallet"}}`, encodeURIComponent(String(params.wallet))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ClaimedPrizesResponseFromJSON(jsonValue)); } /** * Gets all claimed prizes for a wallet. Public endpoint - no authentication required. Excludes sensitive action_data for security. */ async getWalletPrizes(params: GetWalletPrizesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getWalletPrizesRaw(params, initOverrides); return await response.value(); } }