"use strict";
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
    var ownKeys = function(o) {
        ownKeys = Object.getOwnPropertyNames || function (o) {
            var ar = [];
            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
            return ar;
        };
        return ownKeys(o);
    };
    return function (mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
        __setModuleDefault(result, mod);
        return result;
    };
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.tool$uploadMappingsUpdateUploadMapping = void 0;
const uploadMappingsUpdateUploadMapping_js_1 = require("../../funcs/uploadMappingsUpdateUploadMapping.js");
const operations = __importStar(require("../../models/operations/index.js"));
const tools_js_1 = require("../tools.js");
const args = {
    request: operations.UpdateUploadMappingRequest$inboundSchema,
};
exports.tool$uploadMappingsUpdateUploadMapping = {
    name: "update-upload-mapping",
    description: `Purpose: Updates existing URL mappings to modify custom delivery patterns for folders, allowing you to change domain endpoints, URL structures, or routing configurations without recreating the mapping.
Usage: Use this to update branded domains, modify URL patterns for existing folders, fix routing configurations, or migrate to new delivery endpoints while maintaining folder associations. Essential for maintaining current branded delivery setups.
Example request: {"folder": "products", "template": "https://newcdn.mystore.com/assets/{public_id}"}
Parameters: folder(existing folder path), template(updated URL pattern with {public_id} placeholder)
When Not to Use: Avoid updating production mappings without testing the new URLs. Don't change mappings during high-traffic periods as this affects asset delivery.
Output: Returns update confirmation: message(update status), external_id(unique mapping identifier)
Example output: {"message": "updated", "external_id": "mapping_456"}
`,
    scopes: ["builder"],
    args,
    tool: async (client, args, ctx) => {
        const [result, apiCall] = await (0, uploadMappingsUpdateUploadMapping_js_1.uploadMappingsUpdateUploadMapping)(client, args.request, { fetchOptions: { signal: ctx.signal } }).$inspect();
        if (!result.ok) {
            return {
                content: [{ type: "text", text: result.error.message }],
                isError: true,
            };
        }
        const value = result.value;
        return (0, tools_js_1.formatResult)(value, apiCall);
    },
};
//# sourceMappingURL=uploadMappingsUpdateUploadMapping.js.map