export declare class MemoryResumeAnchorStore { private readonly bySession; /** Record/overwrite the anchor for one settled message boundary (idempotent upsert; parity with the SQL ON DUPLICATE/CONFLICT). */ put(sessionId: string, eventId: string, entryId: string, owner: string | null): Promise; /** Resolve a shell-supplied eventId → the persisted SessionTreeEntry.id for TaskSpec.resumeAt; undefined = unknown * anchor (the route 4xx's before handing core a bad id). owner null-safe guard = the SQL `owner <=> ?` defense-in-depth. */ resolve(sessionId: string, eventId: string, owner: string | null): Promise; /** 2c session-sync: ALL anchors for a session (every eventId→entryId + its owner), UNFILTERED — a cross-backend * session EXPORT bundles the whole anchor map so the importer can re-key owner to the target principal (§9). Twin of * the SQL/file stores; kept on all three backends so the ResumeAnchorStore union shares a single contract. */ listBySession(sessionId: string): Promise>; /** E21 (§0.5 delete) — purge ALL anchors for a session, scoped by session_id ALONE (the route already proved session * ownership; a per-row owner guard would orphan rows stored under a divergent per-run principal). Idempotent (count). */ deleteBySession(sessionId: string): Promise; } //# sourceMappingURL=memory-resume-anchor-store.d.ts.map