import { z } from 'zod'; import type { EntityManagerService } from '../../services'; import type { CommentEntityType } from '../generated/default'; export type CommentsApiServicesConfig = { entityManager?: EntityManagerService; }; export type CommentMetadata = { body?: string; commentId?: number; userId: number; entityId: number; entityType?: CommentEntityType; parentCommentId?: number; trackTimestampS?: number; mentions?: number[]; }; export declare const CreateCommentSchema: z.ZodObject<{ userId: z.ZodEffects; entityId: z.ZodEffects; entityType: z.ZodOptional; body: z.ZodOptional; commentId: z.ZodOptional; parentCommentId: z.ZodOptional; trackTimestampS: z.ZodOptional; mentions: z.ZodOptional>; }, "strict", z.ZodTypeAny, { userId: number; entityId: number; entityType?: string | undefined; body?: string | undefined; commentId?: number | undefined; parentCommentId?: number | undefined; trackTimestampS?: number | undefined; mentions?: number[] | undefined; }, { userId: string; entityId: string; entityType?: string | undefined; body?: string | undefined; commentId?: number | undefined; parentCommentId?: number | undefined; trackTimestampS?: number | undefined; mentions?: number[] | undefined; }>; export type EntityManagerCreateCommentRequest = z.input; export declare const UpdateCommentSchema: z.ZodObject<{ userId: z.ZodEffects; entityId: z.ZodEffects; trackId: z.ZodEffects; body: z.ZodString; }, "strict", z.ZodTypeAny, { trackId: number; userId: number; entityId: number; body: string; }, { trackId: string; userId: string; entityId: string; body: string; }>; export type EntityManagerUpdateCommentRequest = z.input; export declare const DeleteCommentSchema: z.ZodObject<{ userId: z.ZodEffects; entityId: z.ZodEffects; }, "strict", z.ZodTypeAny, { userId: number; entityId: number; }, { userId: string; entityId: string; }>; export type EntityManagerDeleteCommentRequest = z.input; export declare const PinCommentSchema: z.ZodObject<{ userId: z.ZodEffects; entityId: z.ZodEffects; trackId: z.ZodEffects; isPin: z.ZodBoolean; }, "strict", z.ZodTypeAny, { trackId: number; userId: number; entityId: number; isPin: boolean; }, { trackId: string; userId: string; entityId: string; isPin: boolean; }>; export type EntityManagerPinCommentRequest = z.input; export declare const ReactCommentSchema: z.ZodObject<{ userId: z.ZodEffects; commentId: z.ZodEffects; isLiked: z.ZodBoolean; trackId: z.ZodEffects; }, "strict", z.ZodTypeAny, { trackId: number; userId: number; commentId: number; isLiked: boolean; }, { trackId: string; userId: string; commentId: string; isLiked: boolean; }>; export type EntityManagerReactCommentRequest = z.input; export declare const ReportCommentSchema: z.ZodObject<{ userId: z.ZodEffects; entityId: z.ZodEffects; }, "strict", z.ZodTypeAny, { userId: number; entityId: number; }, { userId: string; entityId: string; }>; export type EntityManagerReportCommentRequest = z.input;