strapi-plugin-comments
Version:
1,341 lines (1,340 loc) • 114 kB
TypeScript
import { z } from 'zod';
export declare const configSchema: z.ZodObject<{
entryLabel: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>;
approvalFlow: z.ZodArray<z.ZodString, "many">;
blockedAuthorProps: z.ZodArray<z.ZodString, "many">;
reportReasons: z.ZodRecord<z.ZodString, z.ZodString>;
regex: z.ZodObject<{
uid: z.ZodString;
relatedUid: z.ZodString;
email: z.ZodString;
sorting: z.ZodString;
}, "strip", z.ZodTypeAny, {
uid: string;
relatedUid: string;
email: string;
sorting: string;
}, {
uid: string;
relatedUid: string;
email: string;
sorting: string;
}>;
enabledCollections: z.ZodArray<z.ZodString, "many">;
moderatorRoles: z.ZodArray<z.ZodString, "many">;
isGQLPluginEnabled: z.ZodBoolean;
badWords: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
gql: z.ZodOptional<z.ZodObject<{
auth: z.ZodNullable<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
auth: boolean | null;
}, {
auth: boolean | null;
}>>;
client: z.ZodDefault<z.ZodObject<{
url: z.ZodNullable<z.ZodString>;
contactEmail: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
url: string | null;
contactEmail: string | null;
}, {
url: string | null;
contactEmail: string | null;
}>>;
}, "strip", z.ZodTypeAny, {
entryLabel: Record<string, string[]>;
approvalFlow: string[];
blockedAuthorProps: string[];
reportReasons: Record<string, string>;
regex: {
uid: string;
relatedUid: string;
email: string;
sorting: string;
};
enabledCollections: string[];
moderatorRoles: string[];
isGQLPluginEnabled: boolean;
client: {
url: string | null;
contactEmail: string | null;
};
badWords?: boolean | null | undefined;
gql?: {
auth: boolean | null;
} | undefined;
}, {
entryLabel: Record<string, string[]>;
approvalFlow: string[];
blockedAuthorProps: string[];
reportReasons: Record<string, string>;
regex: {
uid: string;
relatedUid: string;
email: string;
sorting: string;
};
enabledCollections: string[];
moderatorRoles: string[];
isGQLPluginEnabled: boolean;
badWords?: boolean | null | undefined;
gql?: {
auth: boolean | null;
} | undefined;
client?: {
url: string | null;
contactEmail: string | null;
} | undefined;
}>;
export type Config = z.infer<typeof configSchema>;
declare const relatedSchema: z.ZodIntersection<z.ZodObject<{
id: z.ZodNumber;
uid: z.ZodString;
documentId: z.ZodString;
createdAt: z.ZodString;
updatedAt: z.ZodString;
publishedAt: z.ZodNullable<z.ZodString>;
locale: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}>, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
declare const authorSchema: z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;
}, "strip", z.ZodTypeAny, {
thumbnail: {
url: string;
} | null;
}, {
thumbnail: {
url: string;
} | null;
}>;
}, "strip", z.ZodTypeAny, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}>, z.ZodString]>>>;
}, "strip", z.ZodTypeAny, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}>;
export type Author = z.infer<typeof authorSchema>;
declare const commentReportSchema: z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>;
declare const baseCommentSchema: z.ZodObject<{
id: z.ZodNumber;
content: z.ZodString;
blocked: z.ZodNullable<z.ZodBoolean>;
blockedThread: z.ZodNullable<z.ZodBoolean>;
blockReason: z.ZodNullable<z.ZodString>;
isAdminComment: z.ZodNullable<z.ZodBoolean>;
removed: z.ZodNullable<z.ZodBoolean>;
approvalStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"PENDING">, z.ZodLiteral<"APPROVED">, z.ZodLiteral<"REJECTED">, z.ZodLiteral<"BLOCKED">, z.ZodLiteral<"OPEN">, z.ZodLiteral<"REMOVED">, z.ZodLiteral<"TO_REVIEW">, z.ZodLiteral<"UNKNOWN">]>>;
createdAt: z.ZodString;
updatedAt: z.ZodString;
reports: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>, "many">>>;
author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;
}, "strip", z.ZodTypeAny, {
thumbnail: {
url: string;
} | null;
}, {
thumbnail: {
url: string;
} | null;
}>;
}, "strip", z.ZodTypeAny, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}>, z.ZodString]>>>;
}, "strip", z.ZodTypeAny, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}>>>;
gotThread: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
threadFirstItemId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
}, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
}>;
type BaseComment = z.infer<typeof baseCommentSchema>;
export type CommentReport = z.infer<typeof commentReportSchema>;
export type Comment = BaseComment & {
threadOf?: Comment | null;
related?: z.infer<typeof relatedSchema> | string;
documentId?: string;
};
export declare const commentsSchema: z.ZodObject<{
pagination: z.ZodObject<{
page: z.ZodNumber;
pageSize: z.ZodNumber;
pageCount: z.ZodNumber;
total: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
page: number;
pageSize: number;
pageCount: number;
total: number;
}, {
page: number;
pageSize: number;
pageCount: number;
total: number;
}>;
result: z.ZodArray<z.ZodType<Comment, z.ZodTypeDef, Comment>, "many">;
}, "strip", z.ZodTypeAny, {
pagination: {
page: number;
pageSize: number;
pageCount: number;
total: number;
};
result: Comment[];
}, {
pagination: {
page: number;
pageSize: number;
pageCount: number;
total: number;
};
result: Comment[];
}>;
export declare const commentDetailsSchema: z.ZodObject<{
entity: z.ZodIntersection<z.ZodObject<{
id: z.ZodNumber;
uid: z.ZodString;
documentId: z.ZodString;
createdAt: z.ZodString;
updatedAt: z.ZodString;
publishedAt: z.ZodNullable<z.ZodString>;
locale: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}>, z.ZodRecord<z.ZodString, z.ZodUnknown>>;
selected: z.ZodNullable<z.ZodObject<{
id: z.ZodNumber;
content: z.ZodString;
blocked: z.ZodNullable<z.ZodBoolean>;
blockedThread: z.ZodNullable<z.ZodBoolean>;
blockReason: z.ZodNullable<z.ZodString>;
isAdminComment: z.ZodNullable<z.ZodBoolean>;
removed: z.ZodNullable<z.ZodBoolean>;
approvalStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"PENDING">, z.ZodLiteral<"APPROVED">, z.ZodLiteral<"REJECTED">, z.ZodLiteral<"BLOCKED">, z.ZodLiteral<"OPEN">, z.ZodLiteral<"REMOVED">, z.ZodLiteral<"TO_REVIEW">, z.ZodLiteral<"UNKNOWN">]>>;
createdAt: z.ZodString;
updatedAt: z.ZodString;
reports: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>, "many">>>;
author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;
}, "strip", z.ZodTypeAny, {
thumbnail: {
url: string;
} | null;
}, {
thumbnail: {
url: string;
} | null;
}>;
}, "strip", z.ZodTypeAny, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}>, z.ZodString]>>>;
}, "strip", z.ZodTypeAny, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}>>>;
gotThread: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
threadFirstItemId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
} & {
related: z.ZodString;
threadOf: z.ZodOptional<z.ZodNullable<z.ZodObject<Omit<{
id: z.ZodNumber;
content: z.ZodString;
blocked: z.ZodNullable<z.ZodBoolean>;
blockedThread: z.ZodNullable<z.ZodBoolean>;
blockReason: z.ZodNullable<z.ZodString>;
isAdminComment: z.ZodNullable<z.ZodBoolean>;
removed: z.ZodNullable<z.ZodBoolean>;
approvalStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"PENDING">, z.ZodLiteral<"APPROVED">, z.ZodLiteral<"REJECTED">, z.ZodLiteral<"BLOCKED">, z.ZodLiteral<"OPEN">, z.ZodLiteral<"REMOVED">, z.ZodLiteral<"TO_REVIEW">, z.ZodLiteral<"UNKNOWN">]>>;
createdAt: z.ZodString;
updatedAt: z.ZodString;
reports: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>, "many">>>;
author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;
}, "strip", z.ZodTypeAny, {
thumbnail: {
url: string;
} | null;
}, {
thumbnail: {
url: string;
} | null;
}>;
}, "strip", z.ZodTypeAny, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}>, z.ZodString]>>>;
}, "strip", z.ZodTypeAny, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}>>>;
gotThread: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
threadFirstItemId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
} & {
related: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
id: z.ZodNumber;
uid: z.ZodString;
documentId: z.ZodString;
createdAt: z.ZodString;
updatedAt: z.ZodString;
publishedAt: z.ZodNullable<z.ZodString>;
locale: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}, {
uid: string;
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
publishedAt: string | null;
locale?: string | null | undefined;
}>, z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
documentId: z.ZodString;
threadOf: z.ZodOptional<z.ZodNullable<z.ZodLazy<z.ZodObject<{
id: z.ZodNumber;
content: z.ZodString;
blocked: z.ZodNullable<z.ZodBoolean>;
blockedThread: z.ZodNullable<z.ZodBoolean>;
blockReason: z.ZodNullable<z.ZodString>;
isAdminComment: z.ZodNullable<z.ZodBoolean>;
removed: z.ZodNullable<z.ZodBoolean>;
approvalStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"PENDING">, z.ZodLiteral<"APPROVED">, z.ZodLiteral<"REJECTED">, z.ZodLiteral<"BLOCKED">, z.ZodLiteral<"OPEN">, z.ZodLiteral<"REMOVED">, z.ZodLiteral<"TO_REVIEW">, z.ZodLiteral<"UNKNOWN">]>>;
createdAt: z.ZodString;
updatedAt: z.ZodString;
reports: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>, "many">>>;
author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;
}, "strip", z.ZodTypeAny, {
thumbnail: {
url: string;
} | null;
}, {
thumbnail: {
url: string;
} | null;
}>;
}, "strip", z.ZodTypeAny, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}, {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
}>, z.ZodString]>>>;
}, "strip", z.ZodTypeAny, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}, {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
}>>>;
gotThread: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
threadFirstItemId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
} & {
related: z.ZodString;
threadOf: z.ZodOptional<z.ZodNullable<z.ZodType<Comment, z.ZodTypeDef, Comment>>>;
documentId: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
}, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
}>>>>;
}, "related"> & {
related: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
} | null | undefined;
}, {
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
} | null | undefined;
}>>>;
}, "strip", z.ZodTypeAny, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
} | null | undefined;
} | null | undefined;
}, {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
documentId: string;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: {
id: number;
createdAt: string;
updatedAt: string;
content: string;
blocked: boolean | null;
blockedThread: boolean | null;
blockReason: string | null;
isAdminComment: boolean | null;
removed: boolean | null;
approvalStatus: "PENDING" | "APPROVED" | "REJECTED" | "BLOCKED" | "OPEN" | "REMOVED" | "TO_REVIEW" | "UNKNOWN" | null;
related: string;
documentId?: string | undefined;
reports?: {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}[] | null | undefined;
author?: {
email?: string | null | undefined;
id?: string | number | null | undefined;
name?: string | null | undefined;
avatar?: string | {
url: string;
} | {
url: string;
formats: {
thumbnail: {
url: string;
} | null;
};
} | null | undefined;
} | null | undefined;
gotThread?: boolean | null | undefined;
threadFirstItemId?: number | null | undefined;
threadOf?: Comment | null | undefined;
} | null | undefined;
} | null | undefined;
}>>;
level: z.ZodArray<z.ZodObject<Omit<{
id: z.ZodNumber;
content: z.ZodString;
blocked: z.ZodNullable<z.ZodBoolean>;
blockedThread: z.ZodNullable<z.ZodBoolean>;
blockReason: z.ZodNullable<z.ZodString>;
isAdminComment: z.ZodNullable<z.ZodBoolean>;
removed: z.ZodNullable<z.ZodBoolean>;
approvalStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"PENDING">, z.ZodLiteral<"APPROVED">, z.ZodLiteral<"REJECTED">, z.ZodLiteral<"BLOCKED">, z.ZodLiteral<"OPEN">, z.ZodLiteral<"REMOVED">, z.ZodLiteral<"TO_REVIEW">, z.ZodLiteral<"UNKNOWN">]>>;
createdAt: z.ZodString;
updatedAt: z.ZodString;
reports: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
id: z.ZodNumber;
reason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
content: z.ZodString;
resolved: z.ZodBoolean;
createdAt: z.ZodString;
updatedAt: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}, {
resolved: boolean;
id: number;
createdAt: string;
updatedAt: string | null;
content: string;
reason?: string | null | undefined;
}>, "many">>>;
author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodNullable<z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>>;
name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
email: z.ZodNullable<z.ZodOptional<z.ZodString>>;
avatar: z.ZodOptional<z.ZodNullable<z.ZodUnion<[z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>, z.ZodObject<{
url: z.ZodString;
formats: z.ZodObject<{
thumbnail: z.ZodNullable<z.ZodObject<{
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
}, {
url: string;
}>>;