/** * Lower attention tier: one collapsed row per (work item, participant), bumped * per comment to stale-date read receipts. Participants derive per write — * recent authors + creator, minus the comment's mentions; nothing subscribes. */ import type { FactoryStorageOps } from '@mastra/core/storage'; import type { FactoryMentionRef, WorkItemCommentRow } from './base.js'; /** Ceiling: an author silent for this many comments stops receiving; a real participants table is the upgrade. */ export declare const PARTICIPANT_SCAN_LIMIT = 200; export interface WorkItemActivityRow { id: string; orgId: string; factoryProjectId: string; workItemId: string; participantId: string; occurrence: number; latestCommentId: string; latestAuthorId: string; latestAuthorName: string | null; occurredAt: Date; } export declare function fanOutWorkItemActivity(ops: FactoryStorageOps, { comment, recentAuthors, createdBy, mentions, now, }: { comment: WorkItemCommentRow; recentAuthors: string[]; createdBy: string; mentions: FactoryMentionRef[]; now?: Date; }): Promise; /** One bounded keyset page of a participant's activity rows, newest-first. */ export declare function listActivityForUser(ops: FactoryStorageOps, { orgId, factoryProjectId, userId, before, limit, }: { orgId: string; factoryProjectId: string; userId: string; before?: { occurredAt: Date; id: string; }; limit: number; }): Promise; //# sourceMappingURL=activity.d.ts.map