"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getExtendedConstructorArguments = getExtendedConstructorArguments;
function getExtendedConstructorArguments(options, baseTypeClassMetadata, typeMetadata) {
    const extendConstructorArguments = options.extendConstructorArguments ?? true;
    let extendedConstructorArguments;
    if (extendConstructorArguments) {
        extendedConstructorArguments = [
            ...baseTypeClassMetadata.constructorArguments,
        ];
        typeMetadata.constructorArguments.map((classElementMetadata, index) => {
            extendedConstructorArguments[index] = classElementMetadata;
        });
    }
    else {
        extendedConstructorArguments = typeMetadata.constructorArguments;
    }
    return extendedConstructorArguments;
}
//# sourceMappingURL=getExtendedConstructorArguments.js.map