import { Schema as S } from 'effect'; declare const PathResolution: S.Union, import("../schema/index.js").CallableTaggedStruct<"NotFound", { failedAt: S.String; reason: S.String; availableKeys: S.$Array; }>]>; /** * Result of resolving a dot-string path against a Model snapshot. * * The path representation matches `SerializedEntry.changedPaths` exactly: * dot-separated, anchored at the literal segment `root`. `Found.atPath` * echoes the canonicalized path; `NotFound.availableKeys` lists the keys * present at the deepest segment that resolved, so an agent can recover with * one follow-up call. */ export type PathResolution = typeof PathResolution.Type; /** * Walk a dot-string path against a Model snapshot. Returns the resolved value * on success, or a structured `NotFound` describing the deepest segment that * resolved plus its available keys so an agent can refine. */ export declare const resolvePath: (root: unknown, path: string) => PathResolution; /** * Apply structural summarization rules to a value: * - Arrays collapse to `{ _summary, length, sample: [head, last] }` at every depth. * - Records walk to a depth of 3, then collapse to `{ _summary, keys }`. * - Long strings collapse to `{ _summary, length, head }`. * - Tagged values (`{ _tag, ... }`) keep their `_tag` since it's a record key. * * The result is JSON-serializable and intended for transmission to MCP clients * with `expand: false`. Use raw values directly when `expand: true`. */ export declare const summarizeValue: (value: unknown) => unknown; /** * Format a `NotFound` resolution as a single human-readable line for the * `ResponseError.reason` channel. Includes the available keys at the failure * point so an agent can refine the path on the next call. */ export declare const formatPathNotFound: (notFound: Extract) => string; export {}; //# sourceMappingURL=summarize.d.ts.map