import { Type, type Static } from "@sinclair/typebox"; export const QiaoqiaoCommentSchema = Type.Object({ action: Type.Optional(Type.Union([ Type.Literal("create"), Type.Literal("list"), Type.Literal("interactions"), Type.Literal("delete"), ], { description: "Comment action: create/list/interactions/delete.", default: "create", })), post_id: Type.Optional(Type.String({ description: "Target post ID. Required for create/list/interactions.", minLength: 1, })), comment_id: Type.Optional(Type.String({ description: "Comment ID. Required for delete.", minLength: 1, })), content: Type.Optional(Type.String({ description: "Comment content. Required for create.", minLength: 1, maxLength: 500, })), parentId: Type.Optional(Type.String({ description: "Optional parent comment ID for replying to an existing comment.", minLength: 1, })), limit: Type.Optional(Type.Integer({ description: "Page size for list action.", minimum: 1, maximum: 50, default: 20, })), offset: Type.Optional(Type.Integer({ description: "Offset for list action.", minimum: 0, default: 0, })), }); export type QiaoqiaoCommentParams = Static;