81 lines
1.9 KiB
TypeScript
81 lines
1.9 KiB
TypeScript
// Code generated by rudder client generate. DO NOT EDIT.
|
|
//
|
|
// Modules:
|
|
// leaderboards@0.1.0
|
|
|
|
export interface RudderModuleCaller {
|
|
modules: {
|
|
call<T>(module: string, fn: string, args: unknown, options?: { moduleVersion?: string }): Promise<T>
|
|
}
|
|
}
|
|
|
|
export type RudderKernelError =
|
|
| "call_depth_exceeded"
|
|
| "catalog_invalid_field"
|
|
| "catalog_not_found"
|
|
| "catalog_ref_invalid"
|
|
| "conflict"
|
|
| "counter_above_max"
|
|
| "counter_below_min"
|
|
| "currency_unknown"
|
|
| "dependency_not_declared"
|
|
| "forbidden"
|
|
| "function_not_callable"
|
|
| "function_not_found"
|
|
| "insufficient_funds"
|
|
| "insufficient_items"
|
|
| "internal"
|
|
| "invalid_parameters"
|
|
| "module_not_installed"
|
|
| "player_not_found"
|
|
| "player_required"
|
|
| "primitive_not_declared"
|
|
| "regen_insufficient"
|
|
| "reserved_event"
|
|
| "sorted_set_order_changed"
|
|
| "storage_key_limit_exceeded"
|
|
| "unknown_operation"
|
|
| "version_conflict"
|
|
|
|
export interface LeaderboardsSubmitArgs {
|
|
mode?: "best" | "last"
|
|
score: number
|
|
slug: string
|
|
}
|
|
|
|
export interface LeaderboardsSubmitResult {
|
|
rank: number
|
|
}
|
|
|
|
export type LeaderboardsSubmitError =
|
|
| RudderKernelError
|
|
| "leaderboard_not_found"
|
|
|
|
export interface LeaderboardsTopArgs {
|
|
limit?: number
|
|
slug: string
|
|
}
|
|
|
|
export interface LeaderboardsTopResultEntriesItem {
|
|
playerId: string
|
|
score: number
|
|
}
|
|
|
|
export interface LeaderboardsTopResult {
|
|
entries: Array<LeaderboardsTopResultEntriesItem>
|
|
}
|
|
|
|
export type LeaderboardsTopError =
|
|
| RudderKernelError
|
|
|
|
export function modules(client: RudderModuleCaller) {
|
|
return {
|
|
leaderboards: {
|
|
submit: (args: LeaderboardsSubmitArgs) =>
|
|
client.modules.call<LeaderboardsSubmitResult>("leaderboards", "submit", args, { moduleVersion: "0.1.0" }),
|
|
top: (args: LeaderboardsTopArgs) =>
|
|
client.modules.call<LeaderboardsTopResult>("leaderboards", "top", args, { moduleVersion: "0.1.0" }),
|
|
},
|
|
}
|
|
}
|