import type { Activity, ActivityType } from '../../../shared/activity.js'; export interface ActivityRecordInput { createdAt?: string; payload?: Record; type: ActivityType; } export declare class ActivityStore { private readonly agentId; constructor(agentId: string); record(input: ActivityRecordInput): Promise; readAll(): Promise; /** Read the last `n` activity records without loading the full log file. */ readLastN(n: number): Promise; /** * Read the newest `n` records matching a predicate, scanning segments * newest-first and stopping as soon as `n` matches are found. Returns * newest-first. Avoids loading the full log when the match is recent. */ readNewestMatching(n: number, matches: (activity: Activity) => boolean): Promise; readNewestUntil(shouldStop: (activity: Activity) => boolean): Promise; /** * Read the last `n` activity records with `createdAt` strictly before the * given ISO timestamp cursor. Used for cursor-based backward pagination. * Returns oldest-first within the page. */ readBefore(beforeCreatedAt: string, n: number): Promise; private log; } //# sourceMappingURL=activity.store.d.ts.map