import type { ArkmeBotSummary } from '../types.js'; import { callArkme } from './api.js'; import { type ExistingDayTarget } from './existing-day-activity-reader.js'; import { type DayActivityReader, type DayActivityEntry, type DayActivityQuery, type DayActivityKind } from './calendar-activity-model.js'; type Target = ExistingDayTarget | { kind: 'arko'; } | { kind: 'bot'; bot: ArkmeBotSummary; }; /** Join only an explicit same-source identity within 15 minutes. The span is not work duration. */ export declare function groupDayActivities(entries: readonly DayActivityEntry[], mode: DayActivityQuery['mode']): { groups: Map; items: { location?: import("../types.js").ArkmeRecordLocationObservation; locationSummary?: { label?: string; capturedAtMillis?: number; }; canLoadLocation?: boolean; excerpts?: import("./calendar-activity-model.js").DayActivityExcerpt[]; id: string; startAtMillis: number; endAtMillis: number; recordCount: number; detailRevision?: string; sharedRecording?: { detailRef?: string; sourceDigest: string; sourceLabel: string; }; avatar?: { [Key in "avatarRef" | "avatarRefs" | "groupAvatar"]?: import("../types.js").ArkmeSourceItem[Key] | undefined; }; previewAuthor?: { name: string; remark?: string; }; sourceIdentity?: string; statusLabel?: string; relatedCallId?: string; kind: DayActivityKind; access: "available" | "restricted"; title: string; preview: string; sourceName: string; participant?: { name: string; remark?: string; }; participation: "self" | "participated" | "mentioned" | "received" | "background"; }[]; }; /** Bounded, explicitly paged composition. No auto-open/ensure, no read receipt, no history fan-out. */ export declare function createMultisourceDayActivityReader(accountScope: string, read?: typeof callArkme): DayActivityReader & { resolveTarget(ref: string): Target | undefined; }; export {}; //# sourceMappingURL=multisource-day-activity-reader.d.ts.map