openblox
Version:
Roblox API Wrapper For Both Classic And OpenCloud APIs.
47 lines (46 loc) • 1.74 kB
TypeScript
import type { Identifier, ISODateTime, ObjectPrettify } from "typeforge";
type BadgeInfo<TemporalType, BadgeId extends Identifier = Identifier, UniverseId extends Identifier = Identifier> = ObjectPrettify<{
id: BadgeId;
name: string;
description: string;
displayName: string;
displayDescription: string;
enabled: boolean;
iconImageId: Identifier;
displayIconImageId: Identifier;
created: TemporalType;
updated: TemporalType;
statistics: {
pastDayAwardedCount: number;
awardedCount: number;
winRatePercentage: number;
};
awardingUniverse: {
id: UniverseId;
name: string;
rootPlaceId: Identifier;
};
}>;
export type RawBadgeInfoData<BadgeId extends Identifier> = BadgeInfo<ISODateTime, BadgeId>;
export type PrettifiedBadgeInfoData<BadgeId extends Identifier> = BadgeInfo<Date, BadgeId>;
export type RawPaginatedBadgesData<UniverseId extends Identifier = Identifier> = {
previousPageCursor: string | null;
nextPageCursor: string | null;
data: BadgeInfo<ISODateTime, Identifier, UniverseId>[];
};
export type PrettifiedPaginatedBadgesData<UniverseId extends Identifier = Identifier> = BadgeInfo<Date, Identifier, UniverseId>[];
export type RawBadgeAwardedDateForUserData<BadgeId extends Identifier> = {
badgeId: BadgeId;
awardedDate: ISODateTime;
} | "";
export type PrettifiedBadgeAwardedDateForUserData = Date | null;
export type RawBadgesAwardedDatesForUserData<BadgeId extends Identifier> = {
data: {
badgeId: BadgeId;
awardedDate: ISODateTime;
}[];
};
export type PrettifiedBadgesAwardedDatesForUserData<BadgeId extends Identifier> = {
[Key in BadgeId]: Date | undefined;
};
export {};