"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TestAssertStepToolDefinition = exports.testAssertStepResponseSchema = exports.testAssertStepArgumentsSchema = void 0;
var zod_1 = require("zod");
var toolDefinition_js_1 = require("../toolDefinition.js");
var agentToolNames_js_1 = require("../shared/agentToolNames.js");
var stepIndexDescription_js_1 = require("./shared/stepIndexDescription.js");
exports.testAssertStepArgumentsSchema = zod_1.z.object({
    step_index: zod_1.z.string().meta({
        description: stepIndexDescription_js_1.STEP_INDEX_DESCRIPTION,
    }),
});
exports.testAssertStepResponseSchema = zod_1.z.object({
    success: zod_1.z.boolean(),
    message: zod_1.z.string().optional(),
});
exports.TestAssertStepToolDefinition = (0, toolDefinition_js_1.defineTool)({
    name: agentToolNames_js_1.AgentToolNames.TestAssertStep,
    description: 'Re-evaluates an existing assertion step against the current browser/application state and returns whether it passes or fails. Use this tool to verify that an assertion step is correct before finishing a task, or to debug a failing assertion. The step is NOT modified and no new step is created. The cursor position is NOT changed.',
    argumentsSchema: exports.testAssertStepArgumentsSchema,
    responseSchema: exports.testAssertStepResponseSchema,
});
//# sourceMappingURL=TestAssertStepDefinition.js.map