import { User } from './User.mjs'; import mongoose, { Types } from 'mongoose'; import '@assetval/conversation'; import '@assetval/name'; import './Task.mjs'; import 'zod'; type UserLogCategories = 'Profile Update' | 'Security Update' | 'Permission Update' | 'Document Update' | 'Employee Comment' | 'System Comment' | 'Analyst Order Flow' | 'Analyst Order Change' | 'Analyst DNA Update' | 'Availability Change' | 'Notification Preferences Update' | 'Snapshot Preferences' | 'Payoffs Update' | 'Vendor Order Event'; type ClientLogCategories = 'Contact Info' | 'Billing Info' | 'Coordinator'; declare class UserLogEntry { dateStamp: Date; changedOn: string; was?: any; changed: any; changedBy?: Types.ObjectId; changedByName?: string; category: UserLogCategories | ClientLogCategories; constructor({ dateStamp, changedOn, was, changed, changedBy, changedByName, category }: UserLogEntry); } declare class UserLogs { log: UserLogEntry[]; user?: Types.ObjectId | User; constructor({ user, log }: Omit & { user: Types.ObjectId; }); set addLog({ category, changed, changedBy, changedByName, dateStamp, was, }: Omit & { changedBy: Types.ObjectId; }); } declare const UserLogsSchema: mongoose.Schema & UserLogs & { _id: Types.ObjectId; }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, UserLogs, mongoose.Document> & mongoose.FlatRecord & { _id: Types.ObjectId; }>; declare const UserLogsModel: mongoose.Model & UserLogs & { _id: Types.ObjectId; }, any>; type UserLogsDocument = ReturnType<(typeof UserLogsModel)['hydrate']>; export { UserLogs, type UserLogsDocument, UserLogsModel, UserLogsSchema };