import { Entity } from "../../../common/abstracts/entity"; /** * UserActivity Entity Type * * `category` and `action` are open strings at the library level: consuming * apps keep their own enums (e.g. UserActivityCategory / UserActivityAction) * and pass their members straight through — a string union member is always * assignable to `string`. */ export type UserActivity = Entity & { category: string; action: string; entityType?: string; entityId?: string; metadata?: Record; }; /** * UserActivity Entity Descriptor * * Single source of truth for the UserActivity entity configuration. * Generates mapper, childrenTokens, and DataModelInterface automatically. * * Records are written by `UserActivityRepository.createActivity()` (a fully custom * Cypher write, run from the `UserActivityProcessor` BullMQ worker outside * HTTP/CLS context — see the repository) rather than through the inherited * descriptor-driven `create()`. The descriptor still owns field typing, * JSON:API serialisation, and the semantic layer for the chatbot catalog. * * NOTE: this descriptor is deliberately NOT registered with the * GraphDescriptorRegistry here — graph-catalog registration is an * application-level policy decision (see the consuming app's * GraphCatalogModule), not a library one. */ export declare const UserActivityDescriptor: import("../../..").EntityDescriptor; export type UserActivityDescriptorType = typeof UserActivityDescriptor; //# sourceMappingURL=user-activity.d.ts.map