import type {User} from '../user/base'; import type {PostType} from './enum'; // 基础实体接口 export interface BaseEntity { id: string; // 唯一标识符 createdAt: Date; // 创建时间 updatedAt: Date; // 更新时间 } // 用户基础信息接口 export interface BaseUser { // 其实应该用profile的 user: User; } export interface PostComment extends BaseEntity { // 这里没带postId,如果后台管理需要,就要带 // 重复了,而且评论没有数据(点赞、收藏等等) authorId: string; // 作者ID author: BaseUser; // 作者信息 content: string; // 评论内容 parentId?: string; // 父评论ID,用于嵌套评论 } // 实体内容和统计信息基础接口 export interface BaseEntityContent { title?: string; // 标题 excerpt: string; // 摘要 tags?: string[]; // 标签数组 metadata?: Record; // 元数据 stars: number; // 收藏数 likes: number; // 点赞数 comments: number; // 评论数 } // 帖子接口 export interface Post extends BaseEntity, BaseEntityContent { type: PostType; // 帖子类型:提问或文章 authorId: string; // 作者ID author: BaseUser; // 作者信息 images?: string[]; // 图片数组 publishedAt?: Date; // 发布时间 }