@mikle7/litty-api-client
Version:
TypeScript client for Litty API with clean, semantic type definitions
138 lines (137 loc) • 6.19 kB
JavaScript
/* tslint:disable */
/* eslint-disable */
/**
* Litty API
* Complete API documentation for the Litty platform. ## Authentication Most endpoints require authentication via Supabase JWT tokens. Include the token in the Authorization header: `Bearer <token>` ## API Structure - **Contests**: Create and manage contests, entries, and settlements - **Markets**: Manage prediction markets within contests - **Transactions**: Handle financial transactions for contest entries and rewards - **Wallet**: Manage user wallet balances (cashable, points, tickets) - **Users**: User management and profiles - **Leaderboards**: Competition rankings and scoring - **Uploads**: File upload management - **Shows**: TV show and episode management (admin only) ## Response Formats All endpoints return JSON responses with consistent error handling. Error responses include `statusCode`, `message`, and `error` fields.
*
* 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 { ReferralDtoToJSON, UpdateWaitlistProgressDtoToJSON, WaitlistProgressResponseDtoFromJSON, } from '../models/index';
/**
*
*/
export class WaitlistApi extends runtime.BaseAPI {
/**
* Apply a referral code to the current user
*/
async applyReferralCodeRaw(initOverrides) {
const queryParameters = {};
const headerParameters = {};
const response = await this.request({
path: `/waitlist/apply-referral`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Apply a referral code to the current user
*/
async applyReferralCode(initOverrides) {
await this.applyReferralCodeRaw(initOverrides);
}
/**
* Get waitlist progress for a user
*/
async getWaitlistProgressRaw(requestParameters, initOverrides) {
if (requestParameters['userId'] == null) {
throw new runtime.RequiredError('userId', 'Required parameter "userId" was null or undefined when calling getWaitlistProgress().');
}
const queryParameters = {};
const headerParameters = {};
const response = await this.request({
path: `/waitlist/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters['userId']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => WaitlistProgressResponseDtoFromJSON(jsonValue));
}
/**
* Get waitlist progress for a user
*/
async getWaitlistProgress(requestParameters, initOverrides) {
const response = await this.getWaitlistProgressRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Process a referral
*/
async processReferralRaw(requestParameters, initOverrides) {
if (requestParameters['referralDto'] == null) {
throw new runtime.RequiredError('referralDto', 'Required parameter "referralDto" was null or undefined when calling processReferral().');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
const response = await this.request({
path: `/waitlist/referral`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ReferralDtoToJSON(requestParameters['referralDto']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Process a referral
*/
async processReferral(requestParameters, initOverrides) {
await this.processReferralRaw(requestParameters, initOverrides);
}
/**
* Update waitlist progress for a user
*/
async updateWaitlistProgressRaw(requestParameters, initOverrides) {
if (requestParameters['userId'] == null) {
throw new runtime.RequiredError('userId', 'Required parameter "userId" was null or undefined when calling updateWaitlistProgress().');
}
if (requestParameters['updateWaitlistProgressDto'] == null) {
throw new runtime.RequiredError('updateWaitlistProgressDto', 'Required parameter "updateWaitlistProgressDto" was null or undefined when calling updateWaitlistProgress().');
}
const queryParameters = {};
const headerParameters = {};
headerParameters['Content-Type'] = 'application/json';
const response = await this.request({
path: `/waitlist/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters['userId']))),
method: 'PUT',
headers: headerParameters,
query: queryParameters,
body: UpdateWaitlistProgressDtoToJSON(requestParameters['updateWaitlistProgressDto']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update waitlist progress for a user
*/
async updateWaitlistProgress(requestParameters, initOverrides) {
await this.updateWaitlistProgressRaw(requestParameters, initOverrides);
}
/**
* Validate a referral code
*/
async validateReferralCodeRaw(initOverrides) {
const queryParameters = {};
const headerParameters = {};
const response = await this.request({
path: `/waitlist/validate-referral`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Validate a referral code
*/
async validateReferralCode(initOverrides) {
await this.validateReferralCodeRaw(initOverrides);
}
}