import { StructuredTool } from '@langchain/core/tools'; import type { z } from 'zod'; import { memoryUpdateSnapshotTool } from '../../prompts/memory_tools'; export declare class LivingMemoryUpdateSnapshotTool extends StructuredTool { private readonly lines; private readonly maxLines; private readonly saveSnapshot; name: string; description: string; schema: z.ZodObject<{ operations: z.ZodArray; text: z.ZodString; }, "strip", z.ZodTypeAny, { type: "append"; text: string; }, { type: "append"; text: string; }>, z.ZodObject<{ type: z.ZodLiteral<"replace">; line: z.ZodNumber; text: z.ZodString; }, "strip", z.ZodTypeAny, { type: "replace"; line: number; text: string; }, { type: "replace"; line: number; text: string; }>, z.ZodObject<{ type: z.ZodLiteral<"delete">; line: z.ZodNumber; }, "strip", z.ZodTypeAny, { type: "delete"; line: number; }, { type: "delete"; line: number; }>]>, "many">; }, "strip", z.ZodTypeAny, { operations: ({ type: "append"; text: string; } | { type: "replace"; line: number; text: string; } | { type: "delete"; line: number; })[]; }, { operations: ({ type: "append"; text: string; } | { type: "replace"; line: number; text: string; } | { type: "delete"; line: number; })[]; }>; constructor(lines: readonly string[], maxLines: number, saveSnapshot: (text: string) => Promise); _call(input: z.infer): Promise<{ lc_direct_tool_output: true; updated: boolean; }>; }