"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getOmitRetryHeadersPlugin = exports.omitRetryHeadersMiddlewareOptions = exports.omitRetryHeadersMiddleware = void 0; const protocol_http_1 = require("@aws-sdk/protocol-http"); const constants_1 = require("./constants"); const omitRetryHeadersMiddleware = () => (next) => async (args) => { const { request } = args; if (protocol_http_1.HttpRequest.isInstance(request)) { delete request.headers[constants_1.INVOCATION_ID_HEADER]; delete request.headers[constants_1.REQUEST_HEADER]; } return next(args); }; exports.omitRetryHeadersMiddleware = omitRetryHeadersMiddleware; exports.omitRetryHeadersMiddlewareOptions = { name: "omitRetryHeadersMiddleware", tags: ["RETRY", "HEADERS", "OMIT_RETRY_HEADERS"], relation: "before", toMiddleware: "awsAuthMiddleware", override: true, }; const getOmitRetryHeadersPlugin = (options) => ({ applyToStack: (clientStack) => { clientStack.addRelativeTo((0, exports.omitRetryHeadersMiddleware)(), exports.omitRetryHeadersMiddlewareOptions); }, }); exports.getOmitRetryHeadersPlugin = getOmitRetryHeadersPlugin;