36 lines
1.0 KiB
TypeScript
36 lines
1.0 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;
|
|
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[] }
|