import TypedEnum from '../../../../generic/typed-enum.js';
import '../../../../generic/typed-bytes.js';
import '../../../../generic/typed-string.js';
import '../../../../generic/typed-array.js';
import '../../../../generic/typed-tuple.js';
import '../../../../generic/typed-null.js';
import '../../../../../utils/types/array.js';
import 'crypto';
import 'bs58';
import 'multiformats/bases/base58';
import 'varint';
import '../../../../../utils/encoding/ss-58.js';
import '../../../../generic/typed-number.js';
import '../../../../generic/typed-set.js';
import '../../../../generic/typed-map.js';
import '../../../../generic/typed-struct.js';
import 'uuid';
import 'js-sha256';
import '../../../../public-keys/public-key.js';
import '../../../../public-keys/public-key-sr25519-value.js';
import '../../../../public-keys/public-key-ed25519-value.js';
import '../../../../public-keys/public-key-secp256k1-value.js';
import '../../../../public-keys/public-key-x25519-value.js';
import '../../../../signatures/signature-value.js';
import SignatureEd25519Value from '../../../../signatures/signature-ed25519-value.js';
import SignatureSecp256k1Value from '../../../../signatures/signature-secp256k1-value.js';
import '../../../../signatures/signature.js';
import '../../../../../utils/types/iterable.js';
import '../../../../../utils/types/object.js';
import '../../../../../utils/interfaces.js';
import '../../../../../utils/assert.js';
import '../../../../../utils/error.js';
import '../../../../../utils/inheritance.js';
import '../../../../../utils/types/set.js';
import '../../../../generic/with-base.js';
import '../../../../../utils/types/bytes.js';
import '../../../../../utils/types/string.js';
import '../../../../generic/with-catch-null.js';
import '../../../../generic/with-eq.js';
import '../../../../generic/any-of.js';
import '../../../../generic/with-from.js';
import 'blake2b';
import '../../../../generic/with-from-json-bytes.js';
import '../../../../generic/create-placeholder.js';
import '../../../../generic/sized.js';
import '../../../../../utils/types/number.js';
import '../../../../../vc/crypto/constants.js';
import '../../../../signatures/signature-sr25519-value.js';

class DidMethodKeySignatureValue extends TypedEnum {}
class DidMethodKeySignatureValueEd25519 extends DidMethodKeySignatureValue {
  static Class = SignatureEd25519Value;
}
class DidMethodKeySignatureValueSecp256k1 extends DidMethodKeySignatureValue {
  static Class = SignatureSecp256k1Value;
}

DidMethodKeySignatureValue.bindVariants(
  DidMethodKeySignatureValueEd25519,
  DidMethodKeySignatureValueSecp256k1,
);

export { DidMethodKeySignatureValue, DidMethodKeySignatureValueEd25519, DidMethodKeySignatureValueSecp256k1 };
//# sourceMappingURL=did-method-key-signature.js.map
