/** * External timestamp anchoring: public surface + factory. * * Opt-in only. `createAnchorFromEnv()` returns null unless AGENTGUARD_ANCHOR is * set (today: "opentimestamps"). Nothing in the default SDK path anchors, so * existing users see zero behavior change. * * Patent notice: Protected by U.S. patent-pending technology * (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626; * 64/071,781; 64/071,789). */ import type { SignedDecisionLogEntry } from '../types'; import type { TimestampAnchor } from './types'; import { type OpenTimestampsAnchorOptions } from './opentimestamps'; export type { AnchorProof, AnchorStatus, AnchorVerification, TimestampAnchor } from './types'; export { OpenTimestampsAnchor, DEFAULT_OTS_CALENDARS, defaultOtsLib, type OtsSubmit, type OtsLib, type OtsBitcoinAttestation, type OpenTimestampsAnchorOptions, } from './opentimestamps'; export { writeAnchorProof, replaceAnchorIndex, readAnchorIndex, readAnchorIndexAt, findAnchorForHead, anchorIndexPath, anchorProofPath, anchorDir, } from './store'; /** Build a named anchor. Extend the switch as adapters are added. */ export declare function createAnchor(type: string, options?: OpenTimestampsAnchorOptions): TimestampAnchor | null; /** Resolve the configured anchor from AGENTGUARD_ANCHOR, or null when unset. */ export declare function createAnchorFromEnv(options?: OpenTimestampsAnchorOptions): TimestampAnchor | null; /** * The digest an anchor should submit for a ledger: the SHA-256 of the current * chain HEAD entry hash. Anchoring the head transitively commits to every prior * entry (each entry binds its predecessor's hash), so a single 32-byte digest * externally timestamps the whole chain. Returns null for an empty chain. */ export declare function chainHeadDigestHex(entries: ReadonlyArray>): string | null; /** * A Merkle root over the ndjson chain's entry hashes — an alternative anchor * digest when you want the anchored value to be independent of chain order * bugs. Uses SHA-256 with duplicate-last-node padding. */ export declare function merkleRootHex(entries: ReadonlyArray>): string | null; //# sourceMappingURL=index.d.ts.map