Files
Genarrative/packages/shared/src/contracts/publicWork.ts

39 lines
923 B
TypeScript

export interface PublicWorkGalleryEntryResponse {
sourceType: string;
workId: string;
profileId: string;
sourceSessionId?: string | null;
publicWorkCode: string;
ownerUserId: string;
authorDisplayName: string;
worldName: string;
subtitle: string;
summaryText: string;
coverImageSrc?: string | null;
coverAssetId?: string | null;
themeTags: string[];
playCount: number;
remixCount: number;
likeCount: number;
recentPlayCount7d?: number;
publishedAt?: string | null;
updatedAt: string;
sortTimeMicros: number;
}
export interface PublicWorkDetailEntryResponse
extends PublicWorkGalleryEntryResponse {
detailPayloadJson: string;
}
export interface PublicWorkGalleryResponse {
items: PublicWorkGalleryEntryResponse[];
hasMore?: boolean;
nextCursor?: string | null;
totalCount?: number;
}
export interface PublicWorkDetailResponse {
item: PublicWorkDetailEntryResponse;
}