import { DynamicStructuredTool } from "@langchain/core/tools"; import { z } from "zod"; import { ToolFactory, ToolCallRecord, UserContext } from "./tool.factory"; import { ToolFieldFormatterService } from "../services/field-formatting"; import { GraphCatalogService } from "../services/graph.catalog.service"; import { EntityServiceRegistry } from "../../../common/registries/entity.service.registry"; import { ScopeGuard } from "../services/scope.guard"; declare const inputSchema: z.ZodObject<{ type: z.ZodString; id: z.ZodString; include: z.ZodOptional>; }, z.core.$strip>; export { inputSchema as readEntityInputSchema }; export declare class ReadEntityTool { private readonly factory; private readonly catalog; private readonly registry; private readonly scopeGuard; private readonly formatter; constructor(factory: ToolFactory, catalog: GraphCatalogService, registry: EntityServiceRegistry, scopeGuard: ScopeGuard, formatter: ToolFieldFormatterService); build(ctx: UserContext, recorder: ToolCallRecord[], readIds?: Set): DynamicStructuredTool; invoke(input: z.infer, ctx: UserContext, recorder: ToolCallRecord[], readIds?: Set): Promise; /** * Drop records outside the run's scope. An unscoped run short-circuits * before the guard is consulted — the same contract ScopeGuard.filter * applies internally, restated here so an unscoped run never depends on it. */ private filterInScope; } //# sourceMappingURL=read-entity.tool.d.ts.map