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 { OffchainDidDetailsValue } from './offchain/index.js';
import { StoredOnchainDidDetailsValue } from './onchain/index.js';
export { DidMethodKeyDetails, OnchainDidDetailsValue } from './onchain/index.js';
export { CheqdDIDDocument, CheqdMainnetDIDDocument, CheqdMainnetVerificationMethodReferences, CheqdTestnetDIDDocument, CheqdTestnetVerificationMethodReferences, CheqdVerificationMethodReferences, DIDDocument, Services, VerificationMethodReferences, VersionId } from './document/index.js';
export { default as DockDidValue } from './onchain/typed-did/dock-did-value.js';
export { default as IdentRef } from './document/ident-ref.js';
export { ATTESTS_IRI, CONTEXT_URI } from './document/const.js';
export { BBS23PublicKeyPrefix, BBSPlusPublicKeyPrefix, CheqdDIDByteSize, CheqdDIDMainnetQualifier, CheqdDIDMethod, CheqdDIDQualifier, CheqdDIDTestnetQualifier, DidMethodKeyBBS23ByteSize, DidMethodKeyBBS23Prefix, DidMethodKeyBBSPlusByteSize, DidMethodKeyBBSPlusPrefix, DidMethodKeyBytePrefixBBS23, DidMethodKeyBytePrefixBBSPlus, DidMethodKeyBytePrefixEd25519, DidMethodKeyBytePrefixSecp256k1, DidMethodKeyEd25519ByteSize, DidMethodKeyEd25519Prefix, DidMethodKeyQualifier, DidMethodKeySecp256k1ByteSize, DidMethodKeySecp256k1Prefix, DockDIDByteSize, DockDIDMethod, DockDIDQualifier, Ed25519PublicKeyPrefix, Secp256k1PublicKeyPrefix } from './onchain/constants.js';
export { Bls12381BBDT16VerificationKeyDock2024, Bls12381BBSVerificationKeyDock2023, Bls12381G2VerificationKeyDock2022, Bls12381PSVerificationKeyDock2023, EcdsaSecp256k1VerificationKey2019, Ed25519Verification2018Method, Ed25519Verification2020Method, JsonWebKey2020Method, Sr25519Verification2020Method, VerificationMethodType, X25519KeyAgreementKey2019 } from './document/verification-method-type.js';
export { CIDOffchainDocRef, CustomOffchainDocRef, OffChainDidDocRef, URLOffchainDocRef } from './offchain/doc-ref.js';
export { CheqdDLRRef, CheqdDid, CheqdDidValue, CheqdMainnetDid, CheqdMainnetDidValue, CheqdTestnetDid, CheqdTestnetDidValue } from './onchain/typed-did/cheqd-did.js';
export { CheqdDidRef, CheqdNamespaceDid, DidMethodKey, DidNamespaceKey, DidRef, DockDid, DockDidOrDidMethodKey, DockNamespaceDid, NamespaceDid, possibleDids } from './onchain/typed-did/index.js';
export { CheqdMainnetPublicKeyMetadata, CheqdMainnetVerificationMethod, CheqdMainnetVerificationMethodAssertion, CheqdMainnetVerificationMethodAssertionLegacy, CheqdPublicKeyMetadata, CheqdTestnetPublicKeyMetadata, CheqdTestnetVerificationMethod, CheqdTestnetVerificationMethodAssertion, CheqdTestnetVerificationMethodAssertionLegacy, CheqdVerificationMethod, CheqdVerificationMethodAssertion, CheqdVerificationMethodAssertionLegacy, DockPublicKeyMetadata, PublicKeyBase58, PublicKeyBase58OrMultibase, PublicKeyBase64, PublicKeyMetadata, PublicKeyMultibase, TypedJsonWebKey, VerificationMethod } from './document/verification-method.js';
export { CheqdMainnetService, CheqdMainnetServiceEndpointId, CheqdService, CheqdServiceEndpointId, CheqdTestnetService, CheqdTestnetServiceEndpointId, DIDCommMessaging, DIDCommService, DIDCommServiceEndpoint, DIDCommServiceEndpointValue, DIDCommServiceEndpoints, DIDCommServiceEndpointsArray, LinkedDomains, Service, ServiceEndpoint, ServiceEndpointId, ServiceEndpointOrigin, ServiceEndpointOrigins, ServiceEndpointType, ServiceEndpointValue, ServiceEndpoints, ServiceEndpointsType, SuffixServiceEndpointId, UnknownServiceEndpoint, createServiceEndpoint } from './document/service-endpoint.js';
export { CheqdMainnetVerificationMethodSignature, CheqdTestnetVerificationMethodSignature, VerificationMethodSignature } from './onchain/verification-method-signature.js';
export { Controllers } from './onchain/controllers.js';
export { DidKey, DidKeyBBSPlusPublicKey, DidKeyBBSPublicKey, DidKeyEd25519PublicKey, DidKeyPSPublicKey, DidKeySecp256k1PublicKey, DidKeySr25519PublicKey, DidKeyValue, DidKeyX25519PublicKey, DidKeys, DidKeysList } from './onchain/did-key.js';
export { DidMethodKeyPublicKey } from './onchain/typed-did/did-method-key/did-method-key-public-key.js';
export { VerificationMethodRef } from './document/verification-method-ref.js';
export { VerificationRelationship } from './onchain/verification-relationship.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 '../generic/option.js';
import '../generic/typed-uuid.js';
import './document/verification-method-ref-or-cheqd-verification-method.js';
import '../generic/with-qualifier.js';
import './onchain/typed-did/signature.js';
import '../public-keys/public-key.js';
import '../public-keys/public-key-x25519-value.js';
import '../public-keys/public-key-ed25519-value.js';
import '../../vc/crypto/constants.js';
import '../public-keys/public-key-secp256k1-value.js';
import '../public-keys/public-key-sr25519-value.js';
import '../signatures/signature-value.js';
import '../signatures/signature.js';
import '../signatures/signature-ed25519-value.js';
import '../signatures/signature-secp256k1-value.js';
import '../signatures/signature-sr25519-value.js';
import '../../utils/encoding/base-58-btc.js';
import './onchain/typed-did/did-method-key/did-method-key-signature.js';
import '../generic/utils.js';
import '../generic/typed-bytes-array.js';
import '../../vc/crypto/Bls12381BBDT16KeyPairDock2024.js';
import '@docknetwork/crypto-wasm-ts';
import '../../vc/crypto/common/DockCryptoKeyPair.js';
import '../../vc/crypto/Bls12381BBDT16MACDock2024.js';
import '@docknetwork/crypto-wasm-ts/lib/index.js';
import '../../vc/crypto/common/DockCryptoSignature.js';
import 'jsonld-signatures';
import 'json-stringify-deterministic';
import 'semver/preload.js';
import '../../vc/crypto/common/CustomLinkedDataSignature.js';
import 'base64url';
import 'jsonld';
import '../../vc/jws.js';
import '../../vc/crypto/Bls12381BBDT16MACProofDock2024.js';
import '../../vc/crypto/common/DockCryptoSignatureProof.js';
import '../../vc/crypto/Bls12381BBSKeyPairDock2023.js';
import '../../vc/crypto/Bls12381BBSSignatureDock2022.js';
import '../../vc/crypto/Bls12381G2KeyPairDock2022.js';
import '../../vc/crypto/Bls12381BBSSignatureDock2023.js';
import '../../vc/crypto/Bls12381BBSSignatureProofDock2022.js';
import '../../vc/crypto/Bls12381BBSSignatureProofDock2023.js';
import '../../vc/crypto/Bls12381BDDT16KeyPairDock2024.js';
import '../../vc/crypto/Bls12381BDDT16MACDock2024.js';
import '../../vc/crypto/Bls12381BDDT16MACProofDock2024.js';
import '../../vc/crypto/Bls12381PSKeyPairDock2023.js';
import '../../vc/crypto/Bls12381PSSignatureDock2023.js';
import '../../vc/crypto/Bls12381PSSignatureProofDock2023.js';
import '@juanelas/base64';
import '../../keypairs/keypair-secp256k1.js';
import 'elliptic';
import '../../keypairs/dock-keypair.js';
import '@stablelib/ed25519';
import '@transmute/json-web-signature';
import '../../utils/encoding/base-58.js';
import '../generic/with-prop.js';
import '../generic/with-props.js';
import '../generic/with-base58.js';
import '../generic/with-base58btc.js';
import '../generic/with-multibase.js';
import '../../utils/encoding/multibase.js';
import '../offchain-signatures/params/index.js';
import '../offchain-signatures/params/value.js';
import '../offchain-signatures/curve-type.js';
import '../offchain-signatures/params/id.js';
import '../generic/with-from-dock-id.js';
import '../offchain-signatures/public-keys/index.js';
import '../offchain-signatures/public-keys/value.js';
import '../offchain-signatures/public-keys/ref.js';
import '../offchain-signatures/public-keys/id.js';
import '../../keypairs/did-keypair.js';
import './document/verification-method-ref-or-ident-ref.js';

class StoredDidDetails extends TypedEnum {}

class StoredOnchainDidDetails extends StoredDidDetails {
  static Type = 'onChain';

  static Class = StoredOnchainDidDetailsValue;
}
class StoredOffchainDidDetails extends StoredDidDetails {
  static Type = 'offChain';

  static Class = OffchainDidDetailsValue;
}

StoredDidDetails.bindVariants(
  StoredOnchainDidDetails,
  StoredOffchainDidDetails,
);

export { OffchainDidDetailsValue, StoredDidDetails, StoredOffchainDidDetails, StoredOnchainDidDetails, StoredOnchainDidDetailsValue };
//# sourceMappingURL=index.js.map
