

const require_CredoError = require('../../../../error/CredoError.js');
require('../../../../error/index.js');
const require_P256PublicJwk = require('../../../kms/jwk/kty/ec/P256PublicJwk.js');
const require_P384PublicJwk = require('../../../kms/jwk/kty/ec/P384PublicJwk.js');
const require_P521PublicJwk = require('../../../kms/jwk/kty/ec/P521PublicJwk.js');
require('../../../kms/index.js');
const require_JsonWebKey2020 = require('../verificationMethod/JsonWebKey2020.js');
require('../verificationMethod/index.js');

//#region src/modules/dids/domain/key-type/keyDidJsonWebKey.ts
const keyDidJsonWebKey = {
	PublicJwkTypes: [
		require_P256PublicJwk.P256PublicJwk,
		require_P384PublicJwk.P384PublicJwk,
		require_P521PublicJwk.P521PublicJwk
	],
	supportedVerificationMethodTypes: [require_JsonWebKey2020.VERIFICATION_METHOD_TYPE_JSON_WEB_KEY_2020],
	getVerificationMethods: (did, publicJwk) => [require_JsonWebKey2020.getJsonWebKey2020({
		did,
		publicJwk
	})],
	getPublicJwkFromVerificationMethod: () => {
		throw new require_CredoError.CredoError("Not supported for key did json web key");
	}
};

//#endregion
exports.keyDidJsonWebKey = keyDidJsonWebKey;