import type { EvoPaths } from "../../paths.ts"; import type { EvoCapabilityComponentIdentity } from "../capabilities/service.ts"; export type EvoMemoryNamespaceKind = "stable" | "trial"; export type EvoMemoryAuditOperation = "initialize" | "trial-start" | "append" | "update" | "forget" | "promote" | "rollback"; export type EvoMemoryFaultPoint = "after-outbox-write" | "after-pointer-action" | "after-audit-append" | "before-outbox-remove"; export interface EvoMemoryFragmentInput { id: string; text: string; metadata?: Record; } export interface EvoMemoryFragment { id: string; text: string; metadata: Record; createdAt: string; updatedAt: string; } export interface EvoMemorySnapshot { schemaVersion: 1; fragments: EvoMemoryFragment[]; } export interface EvoMemoryReadResult { stateDigest: string; fragments: EvoMemoryFragment[]; } export interface EvoMemoryMutationResult { stateDigest: string; fragment: EvoMemoryFragment | null; } export interface EvoMemoryRetrievedFragment extends EvoMemoryFragment { score: number; } export interface EvoMemoryRetrieveResult { stateDigest: string; fragments: EvoMemoryRetrievedFragment[]; } export interface EvoMemoryAuditEntry { schemaVersion: 1; eventId: string; timestamp: string; componentId: string; artifactDigest: string; operation: EvoMemoryAuditOperation; namespace: EvoMemoryNamespaceKind; bundleDigest: string; parentBundleDigest: string | null; fragmentId: string | null; stateBefore: string | null; stateAfter: string | null; } export interface EvoMemoryStoreOptions { paths: EvoPaths; componentId: string; artifactDigest: string; root?: string; now?: () => string; randomId?: () => string; faultInjection?: (point: EvoMemoryFaultPoint) => void | Promise; } export interface EvoMemoryTrialOptions { parentBundleDigest: string; trialBundleDigest: string; } export interface EvoMemoryBundleRollbackOptions { rolledBackBundleDigests: readonly string[]; targetBundleDigest: string; targetAncestorBundleDigests: readonly string[]; targetSelected: boolean; } export interface EvoMemoryStableMaterializationOptions { targetBundleDigest: string; targetAncestorBundleDigests: readonly string[]; } export declare function usesEvoComponentMemory(surface: string, capabilities: readonly string[]): boolean; type EvoMemoryMutation = { operation: "append"; fragment: EvoMemoryFragmentInput; expectedStateDigest?: string; } | { operation: "update"; fragment: EvoMemoryFragmentInput; expectedStateDigest?: string; } | { operation: "forget"; id: string; expectedStateDigest?: string; }; export declare function parseEvoMemoryFragmentInput(value: unknown, label?: string): EvoMemoryFragmentInput; export declare class EvoMemoryStore { readonly componentId: string; readonly artifactDigest: string; readonly root: string; private readonly paths; private readonly namespaceRoot; private readonly objectsRoot; private readonly stableHistoryRoot; private readonly trialsRoot; private readonly stablePath; private readonly auditPath; private readonly transactionPath; private readonly lockName; private readonly layoutAnchor; private readonly now; private readonly randomId; private readonly faultInjection; constructor(options: EvoMemoryStoreOptions); private ensureLayout; private trialPath; private stableHistoryPath; private pointerPath; private readPointer; private writeSnapshot; private readSnapshot; private timestamp; private eventId; private createAuditEntry; private repairAuditTail; private readAuditEntries; private appendAuditEntriesOnce; private pointerLocationPath; private applyPointerAction; private readPendingTransaction; private recoverPendingTransaction; private commitTransaction; private withMemoryLock; private stableHistoryAction; private resolveStableCheckpoint; private createPromoteAuditEntryOnce; private hasUnresolvedTrialAudit; private readBundleRollbackState; initializeStable(bundleDigest: string): Promise; openStable(bundleDigest: string): Promise; beginTrial(options: EvoMemoryTrialOptions): Promise; openTrial(trialBundleDigest: string): Promise; promoteTrial(trialBundleDigest: string): Promise; materializeStableForBundle(options: EvoMemoryStableMaterializationOptions): Promise; preflightBundleRollback(options: EvoMemoryBundleRollbackOptions): Promise; rollbackBundles(options: EvoMemoryBundleRollbackOptions): Promise; rollbackTrial(trialBundleDigest: string): Promise; readAudit(): Promise; readNamespace(kind: EvoMemoryNamespaceKind, bundleDigest: string): Promise; mutateNamespace(kind: EvoMemoryNamespaceKind, bundleDigest: string, mutation: EvoMemoryMutation): Promise; } export declare class EvoMemoryNamespace { readonly kind: EvoMemoryNamespaceKind; readonly bundleDigest: string; private readonly store; constructor(store: EvoMemoryStore, kind: EvoMemoryNamespaceKind, bundleDigest: string); assertComponent(component: EvoCapabilityComponentIdentity): void; read(): Promise; append(fragment: EvoMemoryFragmentInput, expectedStateDigest?: string): Promise; update(fragment: EvoMemoryFragmentInput, expectedStateDigest?: string): Promise; forget(id: string, expectedStateDigest?: string): Promise; retrieve(query: string, limit?: number): Promise; } export {}; //# sourceMappingURL=store.d.ts.map