Files
rudder-js-sdk/test/fixtures/rudder.modules.ts
T

78 lines
1.8 KiB
TypeScript
Raw Normal View History

// 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"
| "conflict"
| "counter_only_increment"
| "dependency_not_declared"
| "forbidden"
| "function_not_callable"
| "function_not_found"
| "insufficient_funds"
| "internal"
| "invalid_parameters"
| "module_not_installed"
| "player_not_found"
| "player_required"
| "reserved_event"
| "resource_invalid_field"
| "resource_invalid_ref"
| "resource_not_found"
| "row_not_found"
| "row_referenced"
| "storage_key_limit_exceeded"
| "unique_violation"
| "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" }),
},
}
}