import type { Activity, AgentActivityFeedPage } from '../../shared/activity.js'; import { ActivityStore, type ActivityRecordInput } from '../storage/schema/activity.store.js'; export interface ActivityListInput { before?: string; limit?: number; } export interface ActivityRecorder { record(agentId: string, input: ActivityRecordInput): Promise; } export declare class ActivityService { private readonly store; constructor(agentId: string, store?: ActivityStore); record(input: ActivityRecordInput): Promise; readAll(): Promise; readLastN(n: number): Promise; /** Newest `n` activities matching a predicate, newest-first. */ readNewestMatching(n: number, matches: (activity: Activity) => boolean): Promise; readNewestUntil(shouldStop: (activity: Activity) => boolean): Promise; listActivityFeed(input?: ActivityListInput): Promise; } export declare function activityServiceForAgent(agentId: string): ActivityService; export declare const defaultActivityRecorder: ActivityRecorder; //# sourceMappingURL=activity.service.d.ts.map