{"version":3,"sources":["../../src/model-context/tool.ts"],"sourcesContent":["import { Schema, z } from \"zod\";\nimport { Tool } from \"./ModelContextTypes\";\n\nexport type inferParameters<PARAMETERS extends Tool<any, any>[\"parameters\"]> =\n  PARAMETERS extends Schema<any>\n    ? PARAMETERS[\"_type\"]\n    : PARAMETERS extends z.ZodTypeAny\n      ? z.infer<PARAMETERS>\n      : never;\n\nexport function tool<\n  TArgs extends Tool<any, any>[\"parameters\"],\n  TResult = any,\n>(tool: {\n  description?: string | undefined;\n  parameters: TArgs;\n  execute?: (\n    args: inferParameters<TArgs>,\n    context: {\n      toolCallId: string;\n      abortSignal: AbortSignal;\n    },\n  ) => TResult | Promise<TResult>;\n}): Tool<inferParameters<TArgs>, TResult> {\n  return tool;\n}\n"],"mappings":";AAUO,SAAS,KAGdA,OAUwC;AACxC,SAAOA;AACT;","names":["tool"]}