494 lines
28 KiB
TypeScript
494 lines
28 KiB
TypeScript
// This file is auto-generated by @hey-api/openapi-ts
|
|
|
|
import { type Client, formDataBodySerializer, type Options as Options2, type TDataShape } from './client';
|
|
import { client } from './client.gen';
|
|
import type { AnimationsApiPuzzleResultsData, AnimationsApiPuzzleResultsResponses, AnimationsApiResultsData, AnimationsApiResultsResponses, AnimationsApiTopSubmissionsData, AnimationsApiTopSubmissionsResponses, ClockApiCurrentStateData, ClockApiCurrentStateResponses, ClockApiMyStatsData, ClockApiMyStatsResponses, GamesApiListEventGamesData, GamesApiListEventGamesResponses, GamesApiListEventPlanningData, GamesApiListEventPlanningResponses, GamesApiListEventSteamGamesData, GamesApiListEventSteamGamesResponses, GamesApiListGamesData, GamesApiListGamesResponses, MarketApiBetHistoryData, MarketApiBetHistoryResponses, MarketApiCloseMarketData, MarketApiCloseMarketResponses, MarketApiCreateBetData, MarketApiCreateBetResponses, MarketApiGetUserPointsData, MarketApiGetUserPointsResponses, MarketApiListMarketsData, MarketApiListMarketsResponses, MarketApiListUserBetsData, MarketApiListUserBetsResponses, MarketApiResolveMarketData, MarketApiResolveMarketResponses, NoitaApiGetLeaderboardData, NoitaApiGetLeaderboardResponses, NoitaApiGetResultsData, NoitaApiGetResultsResponses, NoitaApiSubmitLogFileData, NoitaApiSubmitLogFileErrors, NoitaApiSubmitLogFileResponses, OpusMagnumApiCreateSubmissionData, OpusMagnumApiCreateSubmissionErrors, OpusMagnumApiCreateSubmissionResponses, OpusMagnumApiDeleteSubmissionData, OpusMagnumApiDeleteSubmissionErrors, OpusMagnumApiDeleteSubmissionResponses, OpusMagnumApiGetCollectionData, OpusMagnumApiGetCollectionResponses, OpusMagnumApiGetStatsData, OpusMagnumApiGetStatsResponses, OpusMagnumApiGetSubmissionData, OpusMagnumApiGetSubmissionResponses, OpusMagnumApiListPuzzlesData, OpusMagnumApiListPuzzlesResponses, OpusMagnumApiListResponseFilesData, OpusMagnumApiListResponseFilesErrors, OpusMagnumApiListResponseFilesResponses, OpusMagnumApiListResponsesNeedingValidationData, OpusMagnumApiListResponsesNeedingValidationErrors, OpusMagnumApiListResponsesNeedingValidationResponses, OpusMagnumApiListSubmissionsData, OpusMagnumApiListSubmissionsResponses, OpusMagnumApiValidateAutoData, OpusMagnumApiValidateAutoErrors, OpusMagnumApiValidateAutoResponses, OpusMagnumApiValidateResponseData, OpusMagnumApiValidateResponseErrors, OpusMagnumApiValidateResponseResponses, OpusMagnumApiValidateSubmissionData, OpusMagnumApiValidateSubmissionErrors, OpusMagnumApiValidateSubmissionResponses, PlaceApiCanvasData, PlaceApiCanvasResponses, PlaceApiEvolutionGifData, PlaceApiEvolutionGifResponses, PlaceApiHeatmapDecayGifData, PlaceApiHeatmapDecayGifResponses, PlaceApiHeatmapEvolutionGifData, PlaceApiHeatmapEvolutionGifResponses, PlaceApiHeatmapPngData, PlaceApiHeatmapPngResponses, PlaceApiPlacementsCsvData, PlaceApiPlacementsCsvResponses, PolylanSubmitterApiClearCacheData, PolylanSubmitterApiClearCacheErrors, PolylanSubmitterApiClearCacheResponses, PolylanSubmitterApiGetUserInfoData, PolylanSubmitterApiGetUserInfoResponses, PolylanSubmitterApiHealthCheckData, PolylanSubmitterApiHealthCheckResponses, SubmissionsApiCreateImageCropData, SubmissionsApiCreateImageCropErrors, SubmissionsApiCreateImageCropResponses, SubmissionsApiCreateSubmissionData, SubmissionsApiCreateSubmissionErrors, SubmissionsApiCreateSubmissionResponses, SubmissionsApiDeleteImageCropData, SubmissionsApiDeleteImageCropErrors, SubmissionsApiDeleteImageCropResponses, SubmissionsApiGetSubmissionData, SubmissionsApiGetSubmissionErrors, SubmissionsApiGetSubmissionResponses, SubmissionsApiListAvailableScopesData, SubmissionsApiListAvailableScopesErrors, SubmissionsApiListAvailableScopesResponses, SubmissionsApiListMyScopesData, SubmissionsApiListMyScopesErrors, SubmissionsApiListMyScopesResponses, SubmissionsApiListSubmissionsByGameData, SubmissionsApiListSubmissionsByGameErrors, SubmissionsApiListSubmissionsByGameResponses, SubmissionsApiListUserSubmissionsData, SubmissionsApiListUserSubmissionsErrors, SubmissionsApiListUserSubmissionsResponses, SubmissionsApiProcessCropOcrData, SubmissionsApiProcessCropOcrErrors, SubmissionsApiProcessCropOcrResponses, SubmissionsApiProcessFileOcrData, SubmissionsApiProcessFileOcrErrors, SubmissionsApiProcessFileOcrResponses, SubmissionsApiStopSyncScopesData, SubmissionsApiStopSyncScopesErrors, SubmissionsApiStopSyncScopesResponses, SubmissionsApiSyncScopesData, SubmissionsApiSyncScopesErrors, SubmissionsApiSyncScopesResponses, SubmissionsApiSyncScopesStatusData, SubmissionsApiSyncScopesStatusErrors, SubmissionsApiSyncScopesStatusResponses } from './types.gen';
|
|
|
|
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
|
|
/**
|
|
* You can provide a client instance returned by `createClient()` instead of
|
|
* individual options. This might be also useful if you want to implement a
|
|
* custom client.
|
|
*/
|
|
client?: Client;
|
|
/**
|
|
* You can pass arbitrary values through the `meta` object. This can be
|
|
* used to access values that aren't defined as part of the SDK function.
|
|
*/
|
|
meta?: Record<string, unknown>;
|
|
};
|
|
|
|
/**
|
|
* Health Check
|
|
*
|
|
* Health check endpoint
|
|
*/
|
|
export const polylanSubmitterApiHealthCheck = <ThrowOnError extends boolean = false>(options?: Options<PolylanSubmitterApiHealthCheckData, ThrowOnError>) => (options?.client ?? client).get<PolylanSubmitterApiHealthCheckResponses, unknown, ThrowOnError>({ url: '/api/health', ...options });
|
|
|
|
/**
|
|
* Clear Cache
|
|
*
|
|
* Clear API caches (admin only). Pass event_path to clear just that event's keys.
|
|
*/
|
|
export const polylanSubmitterApiClearCache = <ThrowOnError extends boolean = false>(options?: Options<PolylanSubmitterApiClearCacheData, ThrowOnError>) => (options?.client ?? client).post<PolylanSubmitterApiClearCacheResponses, PolylanSubmitterApiClearCacheErrors, ThrowOnError>({ url: '/api/cache/clear', ...options });
|
|
|
|
/**
|
|
* Get User Info
|
|
*
|
|
* Get current user information
|
|
*/
|
|
export const polylanSubmitterApiGetUserInfo = <ThrowOnError extends boolean = false>(options?: Options<PolylanSubmitterApiGetUserInfoData, ThrowOnError>) => (options?.client ?? client).get<PolylanSubmitterApiGetUserInfoResponses, unknown, ThrowOnError>({ url: '/api/user', ...options });
|
|
|
|
/**
|
|
* List Games
|
|
*/
|
|
export const gamesApiListGames = <ThrowOnError extends boolean = false>(options?: Options<GamesApiListGamesData, ThrowOnError>) => (options?.client ?? client).get<GamesApiListGamesResponses, unknown, ThrowOnError>({ url: '/api/games/', ...options });
|
|
|
|
/**
|
|
* List Puzzles
|
|
*
|
|
* Get list of available puzzles
|
|
*/
|
|
export const opusMagnumApiListPuzzles = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiListPuzzlesData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiListPuzzlesResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/puzzles', ...options });
|
|
|
|
/**
|
|
* Get Collection
|
|
*
|
|
* Get the active collection details
|
|
*/
|
|
export const opusMagnumApiGetCollection = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiGetCollectionData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiGetCollectionResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/collection', ...options });
|
|
|
|
/**
|
|
* List Submissions
|
|
*
|
|
* Get paginated list of submissions
|
|
*/
|
|
export const opusMagnumApiListSubmissions = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiListSubmissionsData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiListSubmissionsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/submissions', ...options });
|
|
|
|
/**
|
|
* Create Submission
|
|
*
|
|
* Create a new submission with multiple puzzle responses
|
|
*/
|
|
export const opusMagnumApiCreateSubmission = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiCreateSubmissionData, ThrowOnError>) => (options.client ?? client).post<OpusMagnumApiCreateSubmissionResponses, OpusMagnumApiCreateSubmissionErrors, ThrowOnError>({
|
|
...formDataBodySerializer,
|
|
url: '/api/events/{event_path}/opus-magnum/submissions',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': null,
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* Delete Submission
|
|
*
|
|
* Delete a submission (admin only)
|
|
*/
|
|
export const opusMagnumApiDeleteSubmission = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiDeleteSubmissionData, ThrowOnError>) => (options.client ?? client).delete<OpusMagnumApiDeleteSubmissionResponses, OpusMagnumApiDeleteSubmissionErrors, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/submissions/{submission_id}', ...options });
|
|
|
|
/**
|
|
* Get Submission
|
|
*
|
|
* Get detailed submission by ID
|
|
*/
|
|
export const opusMagnumApiGetSubmission = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiGetSubmissionData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiGetSubmissionResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/submissions/{submission_id}', ...options });
|
|
|
|
/**
|
|
* Validate Response
|
|
*
|
|
* Manually validate a puzzle response
|
|
*/
|
|
export const opusMagnumApiValidateResponse = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiValidateResponseData, ThrowOnError>) => (options.client ?? client).put<OpusMagnumApiValidateResponseResponses, OpusMagnumApiValidateResponseErrors, ThrowOnError>({
|
|
url: '/api/events/{event_path}/opus-magnum/responses/{response_id}/validate',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* Validate Auto
|
|
*
|
|
* Try to auto validate a puzzle response
|
|
*/
|
|
export const opusMagnumApiValidateAuto = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiValidateAutoData, ThrowOnError>) => (options.client ?? client).put<OpusMagnumApiValidateAutoResponses, OpusMagnumApiValidateAutoErrors, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/responses/{response_id}/validate/auto', ...options });
|
|
|
|
/**
|
|
* List Responses Needing Validation
|
|
*
|
|
* Get all responses that need manual validation
|
|
*/
|
|
export const opusMagnumApiListResponsesNeedingValidation = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiListResponsesNeedingValidationData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiListResponsesNeedingValidationResponses, OpusMagnumApiListResponsesNeedingValidationErrors, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/responses/needs-validation', ...options });
|
|
|
|
/**
|
|
* List Response Files
|
|
*
|
|
* Get the solution files of any player's response (admin only)
|
|
*/
|
|
export const opusMagnumApiListResponseFiles = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiListResponseFilesData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiListResponseFilesResponses, OpusMagnumApiListResponseFilesErrors, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/responses/{response_id}/files', ...options });
|
|
|
|
/**
|
|
* Validate Submission
|
|
*
|
|
* Mark entire submission as validated
|
|
*/
|
|
export const opusMagnumApiValidateSubmission = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiValidateSubmissionData, ThrowOnError>) => (options.client ?? client).post<OpusMagnumApiValidateSubmissionResponses, OpusMagnumApiValidateSubmissionErrors, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/submissions/{submission_id}/validate', ...options });
|
|
|
|
/**
|
|
* Get Stats
|
|
*
|
|
* Get submission statistics
|
|
*/
|
|
export const opusMagnumApiGetStats = <ThrowOnError extends boolean = false>(options: Options<OpusMagnumApiGetStatsData, ThrowOnError>) => (options.client ?? client).get<OpusMagnumApiGetStatsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/opus-magnum/stats', ...options });
|
|
|
|
/**
|
|
* Results
|
|
*/
|
|
export const animationsApiResults = <ThrowOnError extends boolean = false>(options: Options<AnimationsApiResultsData, ThrowOnError>) => (options.client ?? client).get<AnimationsApiResultsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/results/results', ...options });
|
|
|
|
/**
|
|
* Top Submissions
|
|
*
|
|
* Get tournament top submissions for each puzzle. Only available when tournament is closed.
|
|
*/
|
|
export const animationsApiTopSubmissions = <ThrowOnError extends boolean = false>(options: Options<AnimationsApiTopSubmissionsData, ThrowOnError>) => (options.client ?? client).get<AnimationsApiTopSubmissionsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/results/top-submissions', ...options });
|
|
|
|
/**
|
|
* Puzzle Results
|
|
*
|
|
* Get tournament results organized by puzzle with coefficients. Only available when tournament is closed.
|
|
*/
|
|
export const animationsApiPuzzleResults = <ThrowOnError extends boolean = false>(options: Options<AnimationsApiPuzzleResultsData, ThrowOnError>) => (options.client ?? client).get<AnimationsApiPuzzleResultsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/results/puzzle-results', ...options });
|
|
|
|
/**
|
|
* Get Results
|
|
*/
|
|
export const noitaApiGetResults = <ThrowOnError extends boolean = false>(options: Options<NoitaApiGetResultsData, ThrowOnError>) => (options.client ?? client).get<NoitaApiGetResultsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/noita/results', ...options });
|
|
|
|
/**
|
|
* Get Leaderboard
|
|
*
|
|
* Get the global leaderboard for all users ranked by total score.
|
|
*
|
|
* Uses Window functions to rank users by their total score in descending order.
|
|
*/
|
|
export const noitaApiGetLeaderboard = <ThrowOnError extends boolean = false>(options: Options<NoitaApiGetLeaderboardData, ThrowOnError>) => (options.client ?? client).get<NoitaApiGetLeaderboardResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/noita/leaderboard', ...options });
|
|
|
|
/**
|
|
* Submit Log File
|
|
*
|
|
* Submit a Noita run file (log file, screenshot, or video).
|
|
*
|
|
* Accepts:
|
|
* - Text files (.txt) for polylan_mod_log.txt
|
|
* - Images (.png, .jpg, .gif)
|
|
* - Videos (.mp4, .webm)
|
|
*
|
|
* Max file size: 256 MB
|
|
*/
|
|
export const noitaApiSubmitLogFile = <ThrowOnError extends boolean = false>(options: Options<NoitaApiSubmitLogFileData, ThrowOnError>) => (options.client ?? client).post<NoitaApiSubmitLogFileResponses, NoitaApiSubmitLogFileErrors, ThrowOnError>({
|
|
...formDataBodySerializer,
|
|
url: '/api/events/{event_path}/noita/submit',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': null,
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* List Event Games
|
|
*/
|
|
export const gamesApiListEventGames = <ThrowOnError extends boolean = false>(options: Options<GamesApiListEventGamesData, ThrowOnError>) => (options.client ?? client).get<GamesApiListEventGamesResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/games', ...options });
|
|
|
|
/**
|
|
* List Event Steam Games
|
|
*
|
|
* The event's Steam games with their store info (price, discount, blurb).
|
|
*/
|
|
export const gamesApiListEventSteamGames = <ThrowOnError extends boolean = false>(options: Options<GamesApiListEventSteamGamesData, ThrowOnError>) => (options.client ?? client).get<GamesApiListEventSteamGamesResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/games/steam', ...options });
|
|
|
|
/**
|
|
* List Event Planning
|
|
*
|
|
* The event planning, with the covers of the games we know.
|
|
*/
|
|
export const gamesApiListEventPlanning = <ThrowOnError extends boolean = false>(options: Options<GamesApiListEventPlanningData, ThrowOnError>) => (options.client ?? client).get<GamesApiListEventPlanningResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/planning', ...options });
|
|
|
|
/**
|
|
* List My Scopes
|
|
*/
|
|
export const submissionsApiListMyScopes = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiListMyScopesData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiListMyScopesResponses, SubmissionsApiListMyScopesErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/scopes/mine', ...options });
|
|
|
|
/**
|
|
* List Available Scopes
|
|
*
|
|
* Scopes the current user may submit to for this game - superusers see
|
|
* every active scope, everyone else only the ones assigned to them. Used
|
|
* by the submissions-select and submissions-detail pages, both to list
|
|
* scopes and (for the detail page) to confirm the requested scope_id is
|
|
* one the current user is actually allowed to see.
|
|
*/
|
|
export const submissionsApiListAvailableScopes = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiListAvailableScopesData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiListAvailableScopesResponses, SubmissionsApiListAvailableScopesErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/{game_path}/available-scopes', ...options });
|
|
|
|
/**
|
|
* Stop Sync Scopes
|
|
*
|
|
* Stop the AAndT scope sync loop of a (non custom path) game, superusers
|
|
* only. Cancels its scheduled job, scopes are left as they are.
|
|
*/
|
|
export const submissionsApiStopSyncScopes = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiStopSyncScopesData, ThrowOnError>) => (options.client ?? client).delete<SubmissionsApiStopSyncScopesResponses, SubmissionsApiStopSyncScopesErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/{game_path}/sync-scopes', ...options });
|
|
|
|
/**
|
|
* Sync Scopes Status
|
|
*
|
|
* State of the AAndT scope sync loop of a (non custom path) game,
|
|
* superusers only.
|
|
*/
|
|
export const submissionsApiSyncScopesStatus = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiSyncScopesStatusData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiSyncScopesStatusResponses, SubmissionsApiSyncScopesStatusErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/{game_path}/sync-scopes', ...options });
|
|
|
|
/**
|
|
* Sync Scopes
|
|
*
|
|
* Start the AAndT scope sync loop for a (non custom path) game, superusers
|
|
* only. Stores `apibot_token` first when given; without one and none stored
|
|
* yet, answers 400 with `token_required` so the frontend asks for it.
|
|
*/
|
|
export const submissionsApiSyncScopes = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiSyncScopesData, ThrowOnError>) => (options.client ?? client).post<SubmissionsApiSyncScopesResponses, SubmissionsApiSyncScopesErrors, ThrowOnError>({
|
|
url: '/api/events/{event_path}/submissions/{game_path}/sync-scopes',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* Create Submission
|
|
*/
|
|
export const submissionsApiCreateSubmission = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiCreateSubmissionData, ThrowOnError>) => (options.client ?? client).post<SubmissionsApiCreateSubmissionResponses, SubmissionsApiCreateSubmissionErrors, ThrowOnError>({
|
|
...formDataBodySerializer,
|
|
url: '/api/events/{event_path}/submissions/submission/create',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': null,
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* List User Submissions
|
|
*/
|
|
export const submissionsApiListUserSubmissions = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiListUserSubmissionsData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiListUserSubmissionsResponses, SubmissionsApiListUserSubmissionsErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/submission/by/user', ...options });
|
|
|
|
/**
|
|
* List Submissions By Game
|
|
*/
|
|
export const submissionsApiListSubmissionsByGame = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiListSubmissionsByGameData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiListSubmissionsByGameResponses, SubmissionsApiListSubmissionsByGameErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/submission/by/game', ...options });
|
|
|
|
/**
|
|
* Get Submission
|
|
*/
|
|
export const submissionsApiGetSubmission = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiGetSubmissionData, ThrowOnError>) => (options.client ?? client).get<SubmissionsApiGetSubmissionResponses, SubmissionsApiGetSubmissionErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/submission/{submission_id}', ...options });
|
|
|
|
/**
|
|
* Create Image Crop
|
|
*/
|
|
export const submissionsApiCreateImageCrop = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiCreateImageCropData, ThrowOnError>) => (options.client ?? client).post<SubmissionsApiCreateImageCropResponses, SubmissionsApiCreateImageCropErrors, ThrowOnError>({
|
|
url: '/api/events/{event_path}/submissions/crops/s/{submission_file_id}',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* Delete Image Crop
|
|
*/
|
|
export const submissionsApiDeleteImageCrop = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiDeleteImageCropData, ThrowOnError>) => (options.client ?? client).delete<SubmissionsApiDeleteImageCropResponses, SubmissionsApiDeleteImageCropErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/crops/{crop_id}', ...options });
|
|
|
|
/**
|
|
* Process File Ocr
|
|
*/
|
|
export const submissionsApiProcessFileOcr = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiProcessFileOcrData, ThrowOnError>) => (options.client ?? client).post<SubmissionsApiProcessFileOcrResponses, SubmissionsApiProcessFileOcrErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/files/{file_id}/process-ocr', ...options });
|
|
|
|
/**
|
|
* Process Crop Ocr
|
|
*/
|
|
export const submissionsApiProcessCropOcr = <ThrowOnError extends boolean = false>(options: Options<SubmissionsApiProcessCropOcrData, ThrowOnError>) => (options.client ?? client).post<SubmissionsApiProcessCropOcrResponses, SubmissionsApiProcessCropOcrErrors, ThrowOnError>({ url: '/api/events/{event_path}/submissions/crops/{crop_id}/process-ocr', ...options });
|
|
|
|
/**
|
|
* Current State
|
|
*/
|
|
export const clockApiCurrentState = <ThrowOnError extends boolean = false>(options: Options<ClockApiCurrentStateData, ThrowOnError>) => (options.client ?? client).get<ClockApiCurrentStateResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/clock/current', ...options });
|
|
|
|
/**
|
|
* My Stats
|
|
*/
|
|
export const clockApiMyStats = <ThrowOnError extends boolean = false>(options: Options<ClockApiMyStatsData, ThrowOnError>) => (options.client ?? client).get<ClockApiMyStatsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/clock/me', ...options });
|
|
|
|
/**
|
|
* Canvas
|
|
*
|
|
* The one-time full-grid load. Every placement after that arrives as a
|
|
* single websocket message, never a re-fetch.
|
|
*/
|
|
export const placeApiCanvas = <ThrowOnError extends boolean = false>(options: Options<PlaceApiCanvasData, ThrowOnError>) => (options.client ?? client).get<PlaceApiCanvasResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/place/canvas', ...options });
|
|
|
|
/**
|
|
* Evolution Gif
|
|
*
|
|
* Admin-only: replays the full placement history as an animated GIF.
|
|
*
|
|
* `players` is an optional comma-separated list of usernames to only
|
|
* replay those players' placements (combined).
|
|
*/
|
|
export const placeApiEvolutionGif = <ThrowOnError extends boolean = false>(options: Options<PlaceApiEvolutionGifData, ThrowOnError>) => (options.client ?? client).get<PlaceApiEvolutionGifResponses, unknown, ThrowOnError>({
|
|
security: [{
|
|
in: 'cookie',
|
|
name: 'sessionid',
|
|
type: 'apiKey'
|
|
}],
|
|
url: '/api/events/{event_path}/place/evolution.gif',
|
|
...options
|
|
});
|
|
|
|
/**
|
|
* Heatmap Png
|
|
*
|
|
* Admin-only: how many times each pixel was placed, as a heatmap PNG.
|
|
*
|
|
* `players` is an optional comma-separated list of usernames to only
|
|
* count those players' placements (combined).
|
|
*/
|
|
export const placeApiHeatmapPng = <ThrowOnError extends boolean = false>(options: Options<PlaceApiHeatmapPngData, ThrowOnError>) => (options.client ?? client).get<PlaceApiHeatmapPngResponses, unknown, ThrowOnError>({
|
|
security: [{
|
|
in: 'cookie',
|
|
name: 'sessionid',
|
|
type: 'apiKey'
|
|
}],
|
|
url: '/api/events/{event_path}/place/heatmap.png',
|
|
...options
|
|
});
|
|
|
|
/**
|
|
* Heatmap Evolution Gif
|
|
*
|
|
* Admin-only: the heatmap building up over time, as an animated GIF.
|
|
*
|
|
* `players` is an optional comma-separated list of usernames to only
|
|
* count those players' placements (combined).
|
|
*/
|
|
export const placeApiHeatmapEvolutionGif = <ThrowOnError extends boolean = false>(options: Options<PlaceApiHeatmapEvolutionGifData, ThrowOnError>) => (options.client ?? client).get<PlaceApiHeatmapEvolutionGifResponses, unknown, ThrowOnError>({
|
|
security: [{
|
|
in: 'cookie',
|
|
name: 'sessionid',
|
|
type: 'apiKey'
|
|
}],
|
|
url: '/api/events/{event_path}/place/heatmap-evolution.gif',
|
|
...options
|
|
});
|
|
|
|
/**
|
|
* Heatmap Decay Gif
|
|
*
|
|
* Admin-only: the heatmap over time, but heat decays so pixels nobody
|
|
* touches anymore fade back to white.
|
|
*
|
|
* `players` is an optional comma-separated list of usernames to only
|
|
* count those players' placements (combined). `mode` is "placements"
|
|
* (decay per placement, `half_life` in placements, defaults to 10 frames'
|
|
* worth) or "time" (decay over time, `half_life` in minutes, defaults
|
|
* to 60).
|
|
*/
|
|
export const placeApiHeatmapDecayGif = <ThrowOnError extends boolean = false>(options: Options<PlaceApiHeatmapDecayGifData, ThrowOnError>) => (options.client ?? client).get<PlaceApiHeatmapDecayGifResponses, unknown, ThrowOnError>({
|
|
security: [{
|
|
in: 'cookie',
|
|
name: 'sessionid',
|
|
type: 'apiKey'
|
|
}],
|
|
url: '/api/events/{event_path}/place/heatmap-decay.gif',
|
|
...options
|
|
});
|
|
|
|
/**
|
|
* Placements Csv
|
|
*
|
|
* Admin-only: pixel placement count per player, most active first.
|
|
*/
|
|
export const placeApiPlacementsCsv = <ThrowOnError extends boolean = false>(options: Options<PlaceApiPlacementsCsvData, ThrowOnError>) => (options.client ?? client).get<PlaceApiPlacementsCsvResponses, unknown, ThrowOnError>({
|
|
security: [{
|
|
in: 'cookie',
|
|
name: 'sessionid',
|
|
type: 'apiKey'
|
|
}],
|
|
url: '/api/events/{event_path}/place/placements.csv',
|
|
...options
|
|
});
|
|
|
|
/**
|
|
* List Markets
|
|
*
|
|
* List all markets (excludes draft markets).
|
|
*/
|
|
export const marketApiListMarkets = <ThrowOnError extends boolean = false>(options: Options<MarketApiListMarketsData, ThrowOnError>) => (options.client ?? client).get<MarketApiListMarketsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/market/', ...options });
|
|
|
|
/**
|
|
* List User Bets
|
|
*
|
|
* List all bets placed by the current user.
|
|
*/
|
|
export const marketApiListUserBets = <ThrowOnError extends boolean = false>(options: Options<MarketApiListUserBetsData, ThrowOnError>) => (options.client ?? client).get<MarketApiListUserBetsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/market/user/bets', ...options });
|
|
|
|
/**
|
|
* Get User Points
|
|
*
|
|
* Get the current user's points balance for this event.
|
|
*/
|
|
export const marketApiGetUserPoints = <ThrowOnError extends boolean = false>(options: Options<MarketApiGetUserPointsData, ThrowOnError>) => (options.client ?? client).get<MarketApiGetUserPointsResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/market/user/points', ...options });
|
|
|
|
/**
|
|
* Bet History
|
|
*
|
|
* Points added to each option over time (anonymous, one entry per bet placed/increased).
|
|
*/
|
|
export const marketApiBetHistory = <ThrowOnError extends boolean = false>(options: Options<MarketApiBetHistoryData, ThrowOnError>) => (options.client ?? client).get<MarketApiBetHistoryResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/market/{market_uuid}/history', ...options });
|
|
|
|
/**
|
|
* Close Market
|
|
*
|
|
* Close a market. Admin only.
|
|
*/
|
|
export const marketApiCloseMarket = <ThrowOnError extends boolean = false>(options: Options<MarketApiCloseMarketData, ThrowOnError>) => (options.client ?? client).post<MarketApiCloseMarketResponses, unknown, ThrowOnError>({ url: '/api/events/{event_path}/market/{market_uuid}/actions/close', ...options });
|
|
|
|
/**
|
|
* Resolve Market
|
|
*
|
|
* Resolve a market with a winning option. Admin only.
|
|
*/
|
|
export const marketApiResolveMarket = <ThrowOnError extends boolean = false>(options: Options<MarketApiResolveMarketData, ThrowOnError>) => (options.client ?? client).post<MarketApiResolveMarketResponses, unknown, ThrowOnError>({
|
|
url: '/api/events/{event_path}/market/{market_uuid}/actions/resolve',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers
|
|
}
|
|
});
|
|
|
|
/**
|
|
* Create Bet
|
|
*
|
|
* Place a bet on a market option.
|
|
*/
|
|
export const marketApiCreateBet = <ThrowOnError extends boolean = false>(options: Options<MarketApiCreateBetData, ThrowOnError>) => (options.client ?? client).post<MarketApiCreateBetResponses, unknown, ThrowOnError>({
|
|
url: '/api/events/{event_path}/market/{market_uuid}/bets',
|
|
...options,
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
...options.headers
|
|
}
|
|
});
|