Files
buzz-sheet/lib/comments/types.ts
T

37 lines
1.1 KiB
TypeScript

export interface CommentViewer { id: string; admin: boolean; name?: string; image?: string | null }
export interface CommentImage { id: string; url: string }
export interface CommentItem {
id: string;
rootId: string | null;
replyToId: string | null;
replyToName: string | null;
authorName: string;
authorImage: string | null;
authorAdmin: boolean;
authorBanned?: boolean;
canBanAuthor?: boolean;
text: string;
images: CommentImage[];
version: number;
createdAt: string;
editedAt: string;
hidden: boolean;
ownHidden: boolean;
deleted: boolean;
hearted: boolean;
heartedBy?: { id: string; name: string; image: string | null } | null;
likes: number;
reaction: number;
replyCount: number;
hasReplies: boolean;
canEdit: boolean;
canInteract: boolean;
canModerate: boolean;
target: string;
targetName: string;
targetImage: string | null;
href: string;
}
export interface CommentPage { items: CommentItem[]; nextCursor: string | null; viewer: CommentViewer | null }
export interface CommentHistoryItem { id: string; version: number; text: string; createdAt: string; images: CommentImage[] }