react-playmakers
Version:
React wrapper providing utilities for PlayMakers integration
44 lines (43 loc) • 1.24 kB
TypeScript
export interface RewardType {
id: string;
createdAt: string;
category: string;
name: string;
title: string;
description: string;
singleUse: boolean;
thumbnail: string;
data: string;
}
export type UserRewardState = "pending" | "redeemed" | "cancelled";
export interface UserReward {
id: string;
createdAt: string;
userId: string;
rewardId: string;
state: UserRewardState;
creatorData: string | null;
}
export interface ExtendedUserReward extends UserReward {
pushState: (state: UserRewardState) => Promise<UserReward>;
}
export interface Reward {
id: string;
createdAt: string;
name: string;
description: string;
data: string;
thumbnail: string;
expiresAt: string;
projectId: string;
requiredPoints: number;
rewardTypeId: string;
maxClaims: number;
}
export interface ExtendedReward extends Reward {
delete: () => Promise<void>;
push: (data: UpdateReward) => Promise<Reward>;
redeem: () => Promise<UserReward>;
}
export type CreateReward = Omit<Reward, "id" | "createdAt">;
export type UpdateReward = Partial<Omit<Reward, "rewardTypeId" | "createdAt" | "id" | "projectId">>;