{"version":3,"sources":["../src/tools/tool.ts"],"names":["__publicField","__name"],"mappings":";;;;;AAMO,IAAM,KAAA,GAAN,MAAM,KAKb,CAAA;AAAA,EAQE,YAAY,IAAmD,EAAA;AAP/D,IAAAA,+BAAA,CAAA,IAAA,EAAA,IAAA,CAAA;AACA,IAAAA,+BAAA,CAAA,IAAA,EAAA,aAAA,CAAA;AACA,IAAAA,+BAAA,CAAA,IAAA,EAAA,aAAA,CAAA;AACA,IAAAA,+BAAA,CAAA,IAAA,EAAA,cAAA,CAAA;AACA,IAAAA,+BAAA,CAAA,IAAA,EAAA,SAAA,CAAA;AACA,IAAAA,+BAAA,CAAA,IAAA,EAAA,QAAA,CAAA;AAGE,IAAA,IAAA,CAAK,KAAK,IAAK,CAAA,EAAA;AACf,IAAA,IAAA,CAAK,cAAc,IAAK,CAAA,WAAA;AACxB,IAAA,IAAA,CAAK,cAAc,IAAK,CAAA,WAAA;AACxB,IAAA,IAAA,CAAK,eAAe,IAAK,CAAA,YAAA;AACzB,IAAA,IAAA,CAAK,UAAU,IAAK,CAAA,OAAA;AACpB,IAAA,IAAA,CAAK,SAAS,IAAK,CAAA,MAAA;AAAA;AAEvB,CAAA;AAhBAC,wBAAA,CAAA,KAAA,EAAA,MAAA,CAAA;AALO,IAAM,IAAN,GAAA;AAuBA,SAAS,WAId,IAAmD,EAAA;AACnD,EAAO,OAAA,IAAI,KAAK,IAAI,CAAA;AACtB;AANgBA,wBAAA,CAAA,UAAA,EAAA,YAAA,CAAA","file":"chunk-OJDVHIBJ.cjs","sourcesContent":["import type { ToolExecutionOptions } from 'ai';\nimport type { z } from 'zod';\n\nimport type { Mastra } from '../mastra';\nimport type { ToolAction, ToolExecutionContext } from './types';\n\nexport class Tool<\n  TSchemaIn extends z.ZodSchema | undefined = undefined,\n  TSchemaOut extends z.ZodSchema | undefined = undefined,\n  TContext extends ToolExecutionContext<TSchemaIn> = ToolExecutionContext<TSchemaIn>,\n> implements ToolAction<TSchemaIn, TSchemaOut, TContext>\n{\n  id: string;\n  description: string;\n  inputSchema?: TSchemaIn;\n  outputSchema?: TSchemaOut;\n  execute?: ToolAction<TSchemaIn, TSchemaOut, TContext>['execute'];\n  mastra?: Mastra;\n\n  constructor(opts: ToolAction<TSchemaIn, TSchemaOut, TContext>) {\n    this.id = opts.id;\n    this.description = opts.description;\n    this.inputSchema = opts.inputSchema;\n    this.outputSchema = opts.outputSchema;\n    this.execute = opts.execute;\n    this.mastra = opts.mastra;\n  }\n}\n\nexport function createTool<\n  TSchemaIn extends z.ZodSchema | undefined = undefined,\n  TSchemaOut extends z.ZodSchema | undefined = undefined,\n  TContext extends ToolExecutionContext<TSchemaIn> = ToolExecutionContext<TSchemaIn>,\n>(opts: ToolAction<TSchemaIn, TSchemaOut, TContext>) {\n  return new Tool(opts);\n}\n"]}