"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExecuteOpenPdfToolDefinition = exports.executeOpenPdfResponseSchema = exports.executeOpenPdfServerResultSchema = exports.executeOpenPdfArgumentsSchema = void 0;
var zod_1 = require("zod");
var toolDefinition_js_1 = require("../toolDefinition.js");
exports.executeOpenPdfArgumentsSchema = zod_1.z.object({
    description: zod_1.z.string().max(100).meta({
        description: 'A brief description of why you are opening this PDF (e.g., "Open the invoice PDF to verify contents").',
    }),
});
/**
 * Server prepare result schema for execute_open_pdf tool.
 * The server validates parameters before forwarding to the client.
 */
exports.executeOpenPdfServerResultSchema = zod_1.z.object({});
/**
 * Response schema for execute_open_pdf tool.
 */
exports.executeOpenPdfResponseSchema = zod_1.z.object({
    success: zod_1.z.boolean(),
    message: zod_1.z.string().optional(),
});
exports.ExecuteOpenPdfToolDefinition = (0, toolDefinition_js_1.defineTool)({
    name: 'execute_open_pdf',
    description: 'Records a step that waits for a PDF file to be downloaded and opens it in a new browser tab using the PDF viewer. Use after performing an action that triggers a PDF download (e.g., clicking a download link or submitting a form). The file name and metadata are captured automatically from the download. Once the PDF is open, you can use standard assertion tools to verify the rendered PDF content.',
    argumentsSchema: exports.executeOpenPdfArgumentsSchema,
    serverPrepareResultSchema: exports.executeOpenPdfServerResultSchema,
    responseSchema: exports.executeOpenPdfResponseSchema,
});
//# sourceMappingURL=ExecuteOpenPdfDefinition.js.map