"use strict";
// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.NotSupported = exports.cloneMaterial = exports.needs = exports.readOnlyProperty = exports.frozenClass = exports.immutableClass = exports.immutableBaseClass = exports.EncryptedDataKey = exports.VerificationKey = exports.SignatureKey = exports.decorateWebCryptoMaterial = exports.decorateCryptographicMaterial = exports.wrapWithKeyObjectIfSupported = exports.unwrapDataKey = exports.isBranchKeyMaterial = exports.isDecryptionMaterial = exports.isEncryptionMaterial = exports.WebCryptoDecryptionMaterial = exports.WebCryptoEncryptionMaterial = exports.subtleFunctionForMaterial = exports.keyUsageForMaterial = exports.isCryptoKey = exports.isValidCryptoKey = exports.NodeBranchKeyMaterial = exports.NodeDecryptionMaterial = exports.NodeEncryptionMaterial = exports.MultiKeyringWebCrypto = exports.MultiKeyringNode = exports.KeyringTraceFlag = exports.NodeAlgorithmSuite = exports.WebCryptoAlgorithmSuite = exports.CommittingAlgorithmSuiteIdentifier = exports.NonCommittingAlgorithmSuiteIdentifier = exports.MessageFormat = exports.SignaturePolicySuites = exports.SignaturePolicy = exports.CommitmentPolicySuites = exports.CommitmentPolicy = exports.AlgorithmSuite = exports.AlgorithmSuiteIdentifier = void 0;
var algorithm_suites_1 = require("./algorithm_suites");
Object.defineProperty(exports, "AlgorithmSuiteIdentifier", { enumerable: true, get: function () { return algorithm_suites_1.AlgorithmSuiteIdentifier; } });
Object.defineProperty(exports, "AlgorithmSuite", { enumerable: true, get: function () { return algorithm_suites_1.AlgorithmSuite; } });
Object.defineProperty(exports, "CommitmentPolicy", { enumerable: true, get: function () { return algorithm_suites_1.CommitmentPolicy; } });
Object.defineProperty(exports, "CommitmentPolicySuites", { enumerable: true, get: function () { return algorithm_suites_1.CommitmentPolicySuites; } });
Object.defineProperty(exports, "SignaturePolicy", { enumerable: true, get: function () { return algorithm_suites_1.SignaturePolicy; } });
Object.defineProperty(exports, "SignaturePolicySuites", { enumerable: true, get: function () { return algorithm_suites_1.SignaturePolicySuites; } });
Object.defineProperty(exports, "MessageFormat", { enumerable: true, get: function () { return algorithm_suites_1.MessageFormat; } });
Object.defineProperty(exports, "NonCommittingAlgorithmSuiteIdentifier", { enumerable: true, get: function () { return algorithm_suites_1.NonCommittingAlgorithmSuiteIdentifier; } });
Object.defineProperty(exports, "CommittingAlgorithmSuiteIdentifier", { enumerable: true, get: function () { return algorithm_suites_1.CommittingAlgorithmSuiteIdentifier; } });
var web_crypto_algorithms_1 = require("./web_crypto_algorithms");
Object.defineProperty(exports, "WebCryptoAlgorithmSuite", { enumerable: true, get: function () { return web_crypto_algorithms_1.WebCryptoAlgorithmSuite; } });
var node_algorithms_1 = require("./node_algorithms");
Object.defineProperty(exports, "NodeAlgorithmSuite", { enumerable: true, get: function () { return node_algorithms_1.NodeAlgorithmSuite; } });
__exportStar(require("./keyring"), exports);
var keyring_trace_1 = require("./keyring_trace");
Object.defineProperty(exports, "KeyringTraceFlag", { enumerable: true, get: function () { return keyring_trace_1.KeyringTraceFlag; } });
var multi_keyring_1 = require("./multi_keyring");
Object.defineProperty(exports, "MultiKeyringNode", { enumerable: true, get: function () { return multi_keyring_1.MultiKeyringNode; } });
Object.defineProperty(exports, "MultiKeyringWebCrypto", { enumerable: true, get: function () { return multi_keyring_1.MultiKeyringWebCrypto; } });
__exportStar(require("./materials_manager"), exports);
var cryptographic_material_1 = require("./cryptographic_material");
Object.defineProperty(exports, "NodeEncryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_1.NodeEncryptionMaterial; } });
Object.defineProperty(exports, "NodeDecryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_1.NodeDecryptionMaterial; } });
Object.defineProperty(exports, "NodeBranchKeyMaterial", { enumerable: true, get: function () { return cryptographic_material_1.NodeBranchKeyMaterial; } });
var cryptographic_material_2 = require("./cryptographic_material");
Object.defineProperty(exports, "isValidCryptoKey", { enumerable: true, get: function () { return cryptographic_material_2.isValidCryptoKey; } });
Object.defineProperty(exports, "isCryptoKey", { enumerable: true, get: function () { return cryptographic_material_2.isCryptoKey; } });
Object.defineProperty(exports, "keyUsageForMaterial", { enumerable: true, get: function () { return cryptographic_material_2.keyUsageForMaterial; } });
Object.defineProperty(exports, "subtleFunctionForMaterial", { enumerable: true, get: function () { return cryptographic_material_2.subtleFunctionForMaterial; } });
var cryptographic_material_3 = require("./cryptographic_material");
Object.defineProperty(exports, "WebCryptoEncryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_3.WebCryptoEncryptionMaterial; } });
Object.defineProperty(exports, "WebCryptoDecryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_3.WebCryptoDecryptionMaterial; } });
var cryptographic_material_4 = require("./cryptographic_material");
Object.defineProperty(exports, "isEncryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_4.isEncryptionMaterial; } });
Object.defineProperty(exports, "isDecryptionMaterial", { enumerable: true, get: function () { return cryptographic_material_4.isDecryptionMaterial; } });
Object.defineProperty(exports, "isBranchKeyMaterial", { enumerable: true, get: function () { return cryptographic_material_4.isBranchKeyMaterial; } });
var cryptographic_material_5 = require("./cryptographic_material");
Object.defineProperty(exports, "unwrapDataKey", { enumerable: true, get: function () { return cryptographic_material_5.unwrapDataKey; } });
Object.defineProperty(exports, "wrapWithKeyObjectIfSupported", { enumerable: true, get: function () { return cryptographic_material_5.wrapWithKeyObjectIfSupported; } });
var cryptographic_material_6 = require("./cryptographic_material");
Object.defineProperty(exports, "decorateCryptographicMaterial", { enumerable: true, get: function () { return cryptographic_material_6.decorateCryptographicMaterial; } });
Object.defineProperty(exports, "decorateWebCryptoMaterial", { enumerable: true, get: function () { return cryptographic_material_6.decorateWebCryptoMaterial; } });
var signature_key_1 = require("./signature_key");
Object.defineProperty(exports, "SignatureKey", { enumerable: true, get: function () { return signature_key_1.SignatureKey; } });
Object.defineProperty(exports, "VerificationKey", { enumerable: true, get: function () { return signature_key_1.VerificationKey; } });
var encrypted_data_key_1 = require("./encrypted_data_key");
Object.defineProperty(exports, "EncryptedDataKey", { enumerable: true, get: function () { return encrypted_data_key_1.EncryptedDataKey; } });
var immutable_class_1 = require("./immutable_class");
Object.defineProperty(exports, "immutableBaseClass", { enumerable: true, get: function () { return immutable_class_1.immutableBaseClass; } });
Object.defineProperty(exports, "immutableClass", { enumerable: true, get: function () { return immutable_class_1.immutableClass; } });
Object.defineProperty(exports, "frozenClass", { enumerable: true, get: function () { return immutable_class_1.frozenClass; } });
Object.defineProperty(exports, "readOnlyProperty", { enumerable: true, get: function () { return immutable_class_1.readOnlyProperty; } });
var needs_1 = require("./needs");
Object.defineProperty(exports, "needs", { enumerable: true, get: function () { return needs_1.needs; } });
var clone_cryptographic_material_1 = require("./clone_cryptographic_material");
Object.defineProperty(exports, "cloneMaterial", { enumerable: true, get: function () { return clone_cryptographic_material_1.cloneMaterial; } });
__exportStar(require("./types"), exports);
var error_1 = require("./error");
Object.defineProperty(exports, "NotSupported", { enumerable: true, get: function () { return error_1.NotSupported; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9FQUFvRTtBQUNwRSxzQ0FBc0M7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRDLHVEQXVCMkI7QUF0QnpCLDRIQUFBLHdCQUF3QixPQUFBO0FBRXhCLGtIQUFBLGNBQWMsT0FBQTtBQWFkLG9IQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDBIQUFBLHNCQUFzQixPQUFBO0FBQ3RCLG1IQUFBLGVBQWUsT0FBQTtBQUNmLHlIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLGlIQUFBLGFBQWEsT0FBQTtBQUNiLHlJQUFBLHFDQUFxQyxPQUFBO0FBQ3JDLHNJQUFBLGtDQUFrQyxPQUFBO0FBR3BDLGlFQUFpRTtBQUF4RCxnSUFBQSx1QkFBdUIsT0FBQTtBQUNoQyxxREFBc0Q7QUFBN0MscUhBQUEsa0JBQWtCLE9BQUE7QUFFM0IsNENBQXlCO0FBQ3pCLGlEQUFnRTtBQUF6QyxpSEFBQSxnQkFBZ0IsT0FBQTtBQUN2QyxpREFJd0I7QUFIdEIsaUhBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsc0hBQUEscUJBQXFCLE9BQUE7QUFHdkIsc0RBQW1DO0FBRW5DLG1FQUlpQztBQUgvQixnSUFBQSxzQkFBc0IsT0FBQTtBQUN0QixnSUFBQSxzQkFBc0IsT0FBQTtBQUN0QiwrSEFBQSxxQkFBcUIsT0FBQTtBQUV2QixtRUFLaUM7QUFKL0IsMEhBQUEsZ0JBQWdCLE9BQUE7QUFDaEIscUhBQUEsV0FBVyxPQUFBO0FBQ1gsNkhBQUEsbUJBQW1CLE9BQUE7QUFDbkIsbUlBQUEseUJBQXlCLE9BQUE7QUFFM0IsbUVBR2lDO0FBRi9CLHFJQUFBLDJCQUEyQixPQUFBO0FBQzNCLHFJQUFBLDJCQUEyQixPQUFBO0FBRTdCLG1FQUlpQztBQUgvQiw4SEFBQSxvQkFBb0IsT0FBQTtBQUNwQiw4SEFBQSxvQkFBb0IsT0FBQTtBQUNwQiw2SEFBQSxtQkFBbUIsT0FBQTtBQUVyQixtRUFHaUM7QUFGL0IsdUhBQUEsYUFBYSxPQUFBO0FBQ2Isc0lBQUEsNEJBQTRCLE9BQUE7QUFFOUIsbUVBS2lDO0FBSC9CLHVJQUFBLDZCQUE2QixPQUFBO0FBQzdCLG1JQUFBLHlCQUF5QixPQUFBO0FBRzNCLGlEQUErRDtBQUF0RCw2R0FBQSxZQUFZLE9BQUE7QUFBRSxnSEFBQSxlQUFlLE9BQUE7QUFDdEMsMkRBQTBFO0FBQWpFLHNIQUFBLGdCQUFnQixPQUFBO0FBRXpCLHFEQUswQjtBQUp4QixxSEFBQSxrQkFBa0IsT0FBQTtBQUNsQixpSEFBQSxjQUFjLE9BQUE7QUFDZCw4R0FBQSxXQUFXLE9BQUE7QUFDWCxtSEFBQSxnQkFBZ0IsT0FBQTtBQUdsQixpQ0FBK0I7QUFBdEIsOEZBQUEsS0FBSyxPQUFBO0FBQ2QsK0VBQThEO0FBQXJELDZIQUFBLGFBQWEsT0FBQTtBQUV0QiwwQ0FBdUI7QUFDdkIsaUNBQXNDO0FBQTdCLHFHQUFBLFlBQVksT0FBQSJ9