{
  "IIdentifierResolution": {
    "components": {
      "schemas": {
        "ExternalIdentifierOpts": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "jwk"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                },
                "x5c": {
                  "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "x5c"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                },
                "verify": {
                  "type": "boolean"
                },
                "verificationTime": {
                  "type": "string",
                  "format": "date-time"
                },
                "trustAnchors": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "allowNoTrustAnchorsFound": {
                  "type": "boolean"
                },
                "trustRootWhenNoAnchors": {
                  "type": "boolean"
                },
                "allowSingleNoCAChainElement": {
                  "type": "boolean"
                },
                "blindlyTrustedAnchors": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "disallowReversedChain": {
                  "type": "boolean"
                },
                "client": {
                  "type": "object",
                  "properties": {
                    "clientId": {
                      "type": "string"
                    },
                    "clientIdScheme": {
                      "type": "string",
                      "enum": [
                        "x509_san_dns",
                        "x509_san_uri"
                      ]
                    }
                  },
                  "required": [
                    "clientId",
                    "clientIdScheme"
                  ]
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "did"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                },
                "noVerificationMethodFallback": {
                  "type": "boolean"
                },
                "vmRelationship": {
                  "$ref": "#/components/schemas/DIDDocumentSection"
                },
                "localResolution": {
                  "type": "boolean"
                },
                "uniresolverResolution": {
                  "type": "boolean"
                },
                "resolverResolution": {
                  "type": "boolean"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "kid"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "cose_key"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "entity_id"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ExternalIdentifierType"
                },
                "trustAnchors": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "identifier"
              ]
            }
          ]
        },
        "ExternalIdentifierType": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            }
          ],
          "description": "Use whenever we need to resolve an external identifier. We can pass in kids, DIDs, and x5chains\n\nThe functions below can be used to check the type, and they also provide the proper runtime types"
        },
        "ExternalIdentifierX5cOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "x5c"
            },
            "identifier": {
              "$ref": "#/components/schemas/ExternalIdentifierType"
            },
            "verify": {
              "type": "boolean"
            },
            "verificationTime": {
              "type": "string",
              "format": "date-time"
            },
            "trustAnchors": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "allowNoTrustAnchorsFound": {
              "type": "boolean"
            },
            "trustRootWhenNoAnchors": {
              "type": "boolean"
            },
            "allowSingleNoCAChainElement": {
              "type": "boolean"
            },
            "blindlyTrustedAnchors": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "disallowReversedChain": {
              "type": "boolean"
            },
            "client": {
              "type": "object",
              "properties": {
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string",
                  "enum": [
                    "x509_san_dns",
                    "x509_san_uri"
                  ]
                }
              },
              "required": [
                "clientId",
                "clientIdScheme"
              ]
            }
          },
          "required": [
            "identifier"
          ]
        },
        "DIDDocumentSection": {
          "type": "string",
          "enum": [
            "verificationMethod",
            "publicKey",
            "service",
            "authentication",
            "assertionMethod",
            "keyAgreement",
            "capabilityInvocation",
            "capabilityDelegation"
          ],
          "description": "Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\n\nSee  {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }"
        },
        "ExternalIdentifierResult": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "method": {
                  "$ref": "#/components/schemas/ExternalIdentifierMethod"
                },
                "jwks": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalJwkInfo"
                  }
                },
                "did": {
                  "type": "string"
                },
                "didDocument": {
                  "$ref": "#/components/schemas/DIDDocument"
                },
                "didJwks": {
                  "type": "object",
                  "properties": {
                    "verificationMethod": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    },
                    "authentication": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    },
                    "assertionMethod": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    },
                    "keyAgreement": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    },
                    "capabilityInvocation": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    },
                    "capabilityDelegation": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "kty": {
                            "type": "string",
                            "enum": [
                              "EC",
                              "RSA",
                              "oct",
                              "OKP"
                            ]
                          },
                          "crv": {
                            "type": "string",
                            "enum": [
                              "P-256",
                              "P-384",
                              "P-521",
                              "X25519",
                              "X448",
                              "EdDSA",
                              "Ed25519",
                              "Ed448",
                              "secp256k1"
                            ]
                          },
                          "alg": {
                            "type": "string",
                            "enum": [
                              "RS256",
                              "RS384",
                              "RS512",
                              "ES256",
                              "ES256K",
                              "ES384",
                              "ES512",
                              "EdDSA",
                              "HS256",
                              "HS384",
                              "HS512",
                              "PS256",
                              "PS384",
                              "PS512",
                              "none"
                            ]
                          },
                          "x": {
                            "type": "string"
                          },
                          "y": {
                            "type": "string"
                          },
                          "e": {
                            "type": "string"
                          },
                          "n": {
                            "type": "string"
                          },
                          "d": {
                            "type": "string"
                          },
                          "dp": {
                            "type": "string"
                          },
                          "dq": {
                            "type": "string"
                          },
                          "ext": {
                            "type": "boolean"
                          },
                          "k": {
                            "type": "string"
                          },
                          "key_ops": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "sign",
                                "verify",
                                "encrypt",
                                "decrypt",
                                "wrapKey",
                                "unwrapKey",
                                "deriveKey",
                                "deriveBits"
                              ]
                            }
                          },
                          "kid": {
                            "type": "string"
                          },
                          "oth": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "d": {
                                  "type": "string"
                                },
                                "r": {
                                  "type": "string"
                                },
                                "t": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "p": {
                            "type": "string"
                          },
                          "q": {
                            "type": "string"
                          },
                          "qi": {
                            "type": "string"
                          },
                          "use": {
                            "type": "string"
                          },
                          "x5c": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                          },
                          "x5t": {
                            "type": "string",
                            "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                          },
                          "x5t#S256": {
                            "type": "string",
                            "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                          },
                          "x5u": {
                            "type": "string",
                            "description": "JWK \"x5u\" (X.509 URL) Parameter."
                          },
                          "iv": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": {},
                        "required": [
                          "kty"
                        ]
                      }
                    }
                  },
                  "required": [
                    "verificationMethod",
                    "authentication",
                    "assertionMethod",
                    "keyAgreement",
                    "capabilityInvocation",
                    "capabilityDelegation"
                  ]
                },
                "didResolutionResult": {
                  "type": "object",
                  "properties": {
                    "@context": {
                      "anyOf": [
                        {
                          "type": "string",
                          "const": "https://w3id.org/did-resolution/v1"
                        },
                        {
                          "type": "string"
                        },
                        {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      ]
                    },
                    "didResolutionMetadata": {
                      "$ref": "#/components/schemas/DIDResolutionMetadata"
                    },
                    "didDocumentMetadata": {
                      "$ref": "#/components/schemas/DIDDocumentMetadata"
                    }
                  },
                  "required": [
                    "didResolutionMetadata",
                    "didDocumentMetadata"
                  ]
                },
                "didParsed": {
                  "type": "object",
                  "properties": {
                    "did": {
                      "type": "string"
                    },
                    "didUrl": {
                      "type": "string"
                    },
                    "method": {
                      "type": "string"
                    },
                    "id": {
                      "type": "string"
                    },
                    "path": {
                      "type": "string"
                    },
                    "fragment": {
                      "type": "string"
                    },
                    "query": {
                      "type": "string"
                    },
                    "params": {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "did",
                    "didUrl",
                    "method",
                    "id"
                  ]
                }
              },
              "required": [
                "did",
                "didParsed",
                "didResolutionResult",
                "jwks",
                "method"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "$ref": "#/components/schemas/ExternalIdentifierMethod"
                },
                "jwks": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalJwkInfo"
                  }
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "issuerJWK": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "verificationResult": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "boolean"
                    },
                    "critical": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "detailMessage": {
                      "type": "string"
                    },
                    "verificationTime": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "certificateChain": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "certificate": {},
                          "notBefore": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "notAfter": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "publicKeyJWK": {},
                          "issuer": {
                            "type": "object",
                            "properties": {
                              "dn": {
                                "type": "object",
                                "properties": {
                                  "DN": {
                                    "type": "string"
                                  },
                                  "attributes": {
                                    "type": "object",
                                    "additionalProperties": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "required": [
                                  "DN",
                                  "attributes"
                                ]
                              }
                            },
                            "required": [
                              "dn"
                            ]
                          },
                          "subject": {
                            "type": "object",
                            "properties": {
                              "dn": {
                                "type": "object",
                                "properties": {
                                  "DN": {
                                    "type": "string"
                                  },
                                  "attributes": {
                                    "type": "object",
                                    "additionalProperties": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "required": [
                                  "DN",
                                  "attributes"
                                ]
                              },
                              "subjectAlternativeNames": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "number",
                                      "enum": [
                                        1,
                                        2,
                                        6,
                                        7
                                      ],
                                      "description": "otherName                       [0]     OtherName,        rfc822Name                      [1]     IA5String,        dNSName                         [2]     IA5String,        x400Address                     [3]     ORAddress,        directoryName                   [4]     Name,        ediPartyName                    [5]     EDIPartyName,        uniformResourceIdentifier       [6]     IA5String,        iPAddress                       [7]     OCTET STRING,        registeredID                    [8]     OBJECT IDENTIFIER }"
                                    }
                                  },
                                  "required": [
                                    "value",
                                    "type"
                                  ]
                                }
                              }
                            },
                            "required": [
                              "dn",
                              "subjectAlternativeNames"
                            ]
                          }
                        },
                        "required": [
                          "notBefore",
                          "notAfter",
                          "issuer",
                          "subject"
                        ]
                      }
                    },
                    "trustAnchor": {
                      "type": "object",
                      "properties": {
                        "certificate": {},
                        "notBefore": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "notAfter": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "publicKeyJWK": {},
                        "issuer": {
                          "type": "object",
                          "properties": {
                            "dn": {
                              "type": "object",
                              "properties": {
                                "DN": {
                                  "type": "string"
                                },
                                "attributes": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "string"
                                  }
                                }
                              },
                              "required": [
                                "DN",
                                "attributes"
                              ]
                            }
                          },
                          "required": [
                            "dn"
                          ]
                        },
                        "subject": {
                          "type": "object",
                          "properties": {
                            "dn": {
                              "type": "object",
                              "properties": {
                                "DN": {
                                  "type": "string"
                                },
                                "attributes": {
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "string"
                                  }
                                }
                              },
                              "required": [
                                "DN",
                                "attributes"
                              ]
                            },
                            "subjectAlternativeNames": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "type": "string"
                                  },
                                  "type": {
                                    "type": "number",
                                    "enum": [
                                      1,
                                      2,
                                      6,
                                      7
                                    ],
                                    "description": "otherName                       [0]     OtherName,        rfc822Name                      [1]     IA5String,        dNSName                         [2]     IA5String,        x400Address                     [3]     ORAddress,        directoryName                   [4]     Name,        ediPartyName                    [5]     EDIPartyName,        uniformResourceIdentifier       [6]     IA5String,        iPAddress                       [7]     OCTET STRING,        registeredID                    [8]     OBJECT IDENTIFIER }"
                                  }
                                },
                                "required": [
                                  "value",
                                  "type"
                                ]
                              }
                            }
                          },
                          "required": [
                            "dn",
                            "subjectAlternativeNames"
                          ]
                        }
                      },
                      "required": [
                        "notBefore",
                        "notAfter",
                        "issuer",
                        "subject"
                      ]
                    },
                    "client": {
                      "type": "object",
                      "properties": {
                        "clientId": {
                          "type": "string"
                        },
                        "clientIdScheme": {
                          "type": "string",
                          "enum": [
                            "x509_san_dns",
                            "x509_san_uri"
                          ]
                        }
                      },
                      "required": [
                        "clientId",
                        "clientIdScheme"
                      ]
                    }
                  },
                  "required": [
                    "error",
                    "critical",
                    "message",
                    "verificationTime"
                  ]
                },
                "certificates": {
                  "type": "array",
                  "items": {}
                }
              },
              "required": [
                "certificates",
                "issuerJWK",
                "jwks",
                "method",
                "x5c"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "$ref": "#/components/schemas/ExternalIdentifierMethod"
                },
                "jwks": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalJwkInfo"
                  }
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "x5c": {
                  "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
                }
              },
              "required": [
                "jwk",
                "jwks",
                "method"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "$ref": "#/components/schemas/ExternalIdentifierMethod"
                },
                "jwks": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalJwkInfo"
                  }
                },
                "trustedAnchors": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TrustedAnchor"
                  }
                },
                "errorList": {
                  "type": "object",
                  "additionalProperties": {
                    "$ref": "#/components/schemas/ErrorMessage"
                  }
                },
                "jwtPayload": {
                  "$ref": "#/components/schemas/JwsPayload"
                },
                "trustEstablished": {
                  "type": "boolean"
                }
              },
              "required": [
                "jwks",
                "method",
                "trustEstablished",
                "trustedAnchors"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "$ref": "#/components/schemas/ExternalIdentifierMethod"
                },
                "jwks": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalJwkInfo"
                  }
                },
                "coseKey": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        0
                      ]
                    },
                    "kid": {
                      "type": "string"
                    },
                    "alg": {
                      "type": "number",
                      "enum": [
                        -7,
                        -47,
                        -35,
                        -36,
                        -8,
                        4,
                        5,
                        6,
                        7,
                        -37,
                        -38,
                        -39
                      ]
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "number",
                        "enum": [
                          1,
                          2,
                          3,
                          4,
                          5,
                          6,
                          7,
                          8,
                          9,
                          10
                        ]
                      }
                    },
                    "baseIV": {
                      "type": "string"
                    },
                    "crv": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        -1
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "x5chain": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "kty"
                  ],
                  "additionalProperties": {},
                  "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
                },
                "x5c": {
                  "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
                }
              },
              "required": [
                "coseKey",
                "jwks",
                "method"
              ]
            }
          ]
        },
        "ExternalIdentifierMethod": {
          "type": "string",
          "enum": [
            "did",
            "jwk",
            "x5c",
            "kid",
            "cose_key",
            "oidc-discovery",
            "jwks-url",
            "oid4vci-issuer",
            "entity_id"
          ]
        },
        "ExternalJwkInfo": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "publicKeyHex": {
              "type": "string"
            }
          },
          "required": [
            "jwk",
            "jwkThumbprint",
            "publicKeyHex"
          ]
        },
        "DIDDocument": {
          "type": "object",
          "properties": {
            "authentication": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/components/schemas/VerificationMethod"
                  }
                ]
              }
            },
            "assertionMethod": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/components/schemas/VerificationMethod"
                  }
                ]
              }
            },
            "keyAgreement": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/components/schemas/VerificationMethod"
                  }
                ]
              }
            },
            "capabilityInvocation": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/components/schemas/VerificationMethod"
                  }
                ]
              }
            },
            "capabilityDelegation": {
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/components/schemas/VerificationMethod"
                  }
                ]
              }
            },
            "@context": {
              "anyOf": [
                {
                  "type": "string",
                  "const": "https://www.w3.org/ns/did/v1"
                },
                {
                  "type": "string"
                },
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              ]
            },
            "id": {
              "type": "string"
            },
            "alsoKnownAs": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "controller": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              ]
            },
            "verificationMethod": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/VerificationMethod"
              }
            },
            "service": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Service"
              }
            },
            "publicKey": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/VerificationMethod"
              },
              "deprecated": true
            }
          },
          "required": [
            "id"
          ],
          "description": "Represents a DID document."
        },
        "VerificationMethod": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string"
            },
            "type": {
              "type": "string"
            },
            "controller": {
              "type": "string"
            },
            "publicKeyBase58": {
              "type": "string"
            },
            "publicKeyBase64": {
              "type": "string"
            },
            "publicKeyJwk": {
              "$ref": "#/components/schemas/JsonWebKey"
            },
            "publicKeyHex": {
              "type": "string"
            },
            "publicKeyMultibase": {
              "type": "string"
            },
            "blockchainAccountId": {
              "type": "string"
            },
            "ethereumAddress": {
              "type": "string"
            },
            "conditionOr": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/VerificationMethod"
              }
            },
            "conditionAnd": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/VerificationMethod"
              }
            },
            "threshold": {
              "type": "number"
            },
            "conditionThreshold": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/VerificationMethod"
              }
            },
            "conditionWeightedThreshold": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ConditionWeightedThreshold"
              }
            },
            "conditionDelegated": {
              "type": "string"
            },
            "relationshipParent": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "relationshipChild": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "relationshipSibling": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "required": [
            "id",
            "type",
            "controller"
          ],
          "description": "Represents the properties of a Verification Method listed in a DID document.\n\nThis data type includes public key representations that are no longer present in the spec but are still used by several DID methods / resolvers and kept for backward compatibility."
        },
        "JsonWebKey": {
          "type": "object",
          "properties": {
            "alg": {
              "type": "string"
            },
            "crv": {
              "type": "string"
            },
            "e": {
              "type": "string"
            },
            "ext": {
              "type": "boolean"
            },
            "key_ops": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "kid": {
              "type": "string"
            },
            "kty": {
              "type": "string"
            },
            "n": {
              "type": "string"
            },
            "use": {
              "type": "string"
            },
            "x": {
              "type": "string"
            },
            "y": {
              "type": "string"
            }
          },
          "required": [
            "kty"
          ],
          "description": "Encapsulates a JSON web key type that includes only the public properties that can be used in DID documents.\n\nThe private properties are intentionally omitted to discourage the use (and accidental disclosure) of private keys in DID documents."
        },
        "ConditionWeightedThreshold": {
          "type": "object",
          "properties": {
            "condition": {
              "$ref": "#/components/schemas/VerificationMethod"
            },
            "weight": {
              "type": "number"
            }
          },
          "required": [
            "condition",
            "weight"
          ]
        },
        "Service": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string"
            },
            "type": {
              "type": "string"
            },
            "serviceEndpoint": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ServiceEndpoint"
                },
                {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ServiceEndpoint"
                  }
                }
              ]
            }
          },
          "required": [
            "id",
            "type",
            "serviceEndpoint"
          ],
          "description": "Represents a Service entry in a  {@link https://www.w3.org/TR/did-core/#did-document-properties | DID document } ."
        },
        "ServiceEndpoint": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "object"
            }
          ],
          "description": "Represents an endpoint of a Service entry in a DID document."
        },
        "DIDResolutionMetadata": {
          "type": "object",
          "properties": {
            "contentType": {
              "type": "string"
            },
            "error": {
              "type": "string"
            }
          },
          "description": "Encapsulates the resolution metadata resulting from a  {@link  Resolvable.resolve }  operation."
        },
        "DIDDocumentMetadata": {
          "type": "object",
          "properties": {
            "created": {
              "type": "string"
            },
            "updated": {
              "type": "string"
            },
            "deactivated": {
              "type": "boolean"
            },
            "versionId": {
              "type": "string"
            },
            "nextUpdate": {
              "type": "string"
            },
            "nextVersionId": {
              "type": "string"
            },
            "equivalentId": {
              "type": "string"
            },
            "canonicalId": {
              "type": "string"
            }
          },
          "description": "Represents metadata about the DID document resulting from a  {@link  Resolvable.resolve }  operation."
        },
        "ExternalIdentifierX5cResult": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "x5c"
            },
            "jwks": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ExternalJwkInfo"
              }
            },
            "x5c": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "issuerJWK": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "verificationResult": {
              "type": "object",
              "properties": {
                "error": {
                  "type": "boolean"
                },
                "critical": {
                  "type": "boolean"
                },
                "message": {
                  "type": "string"
                },
                "detailMessage": {
                  "type": "string"
                },
                "verificationTime": {
                  "type": "string",
                  "format": "date-time"
                },
                "certificateChain": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "certificate": {},
                      "notBefore": {
                        "type": "string",
                        "format": "date-time"
                      },
                      "notAfter": {
                        "type": "string",
                        "format": "date-time"
                      },
                      "publicKeyJWK": {},
                      "issuer": {
                        "type": "object",
                        "properties": {
                          "dn": {
                            "type": "object",
                            "properties": {
                              "DN": {
                                "type": "string"
                              },
                              "attributes": {
                                "type": "object",
                                "additionalProperties": {
                                  "type": "string"
                                }
                              }
                            },
                            "required": [
                              "DN",
                              "attributes"
                            ]
                          }
                        },
                        "required": [
                          "dn"
                        ]
                      },
                      "subject": {
                        "type": "object",
                        "properties": {
                          "dn": {
                            "type": "object",
                            "properties": {
                              "DN": {
                                "type": "string"
                              },
                              "attributes": {
                                "type": "object",
                                "additionalProperties": {
                                  "type": "string"
                                }
                              }
                            },
                            "required": [
                              "DN",
                              "attributes"
                            ]
                          },
                          "subjectAlternativeNames": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "value": {
                                  "type": "string"
                                },
                                "type": {
                                  "type": "number",
                                  "enum": [
                                    1,
                                    2,
                                    6,
                                    7
                                  ],
                                  "description": "otherName                       [0]     OtherName,        rfc822Name                      [1]     IA5String,        dNSName                         [2]     IA5String,        x400Address                     [3]     ORAddress,        directoryName                   [4]     Name,        ediPartyName                    [5]     EDIPartyName,        uniformResourceIdentifier       [6]     IA5String,        iPAddress                       [7]     OCTET STRING,        registeredID                    [8]     OBJECT IDENTIFIER }"
                                }
                              },
                              "required": [
                                "value",
                                "type"
                              ]
                            }
                          }
                        },
                        "required": [
                          "dn",
                          "subjectAlternativeNames"
                        ]
                      }
                    },
                    "required": [
                      "notBefore",
                      "notAfter",
                      "issuer",
                      "subject"
                    ]
                  }
                },
                "trustAnchor": {
                  "type": "object",
                  "properties": {
                    "certificate": {},
                    "notBefore": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "notAfter": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "publicKeyJWK": {},
                    "issuer": {
                      "type": "object",
                      "properties": {
                        "dn": {
                          "type": "object",
                          "properties": {
                            "DN": {
                              "type": "string"
                            },
                            "attributes": {
                              "type": "object",
                              "additionalProperties": {
                                "type": "string"
                              }
                            }
                          },
                          "required": [
                            "DN",
                            "attributes"
                          ]
                        }
                      },
                      "required": [
                        "dn"
                      ]
                    },
                    "subject": {
                      "type": "object",
                      "properties": {
                        "dn": {
                          "type": "object",
                          "properties": {
                            "DN": {
                              "type": "string"
                            },
                            "attributes": {
                              "type": "object",
                              "additionalProperties": {
                                "type": "string"
                              }
                            }
                          },
                          "required": [
                            "DN",
                            "attributes"
                          ]
                        },
                        "subjectAlternativeNames": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "value": {
                                "type": "string"
                              },
                              "type": {
                                "type": "number",
                                "enum": [
                                  1,
                                  2,
                                  6,
                                  7
                                ],
                                "description": "otherName                       [0]     OtherName,        rfc822Name                      [1]     IA5String,        dNSName                         [2]     IA5String,        x400Address                     [3]     ORAddress,        directoryName                   [4]     Name,        ediPartyName                    [5]     EDIPartyName,        uniformResourceIdentifier       [6]     IA5String,        iPAddress                       [7]     OCTET STRING,        registeredID                    [8]     OBJECT IDENTIFIER }"
                              }
                            },
                            "required": [
                              "value",
                              "type"
                            ]
                          }
                        }
                      },
                      "required": [
                        "dn",
                        "subjectAlternativeNames"
                      ]
                    }
                  },
                  "required": [
                    "notBefore",
                    "notAfter",
                    "issuer",
                    "subject"
                  ]
                },
                "client": {
                  "type": "object",
                  "properties": {
                    "clientId": {
                      "type": "string"
                    },
                    "clientIdScheme": {
                      "type": "string",
                      "enum": [
                        "x509_san_dns",
                        "x509_san_uri"
                      ]
                    }
                  },
                  "required": [
                    "clientId",
                    "clientIdScheme"
                  ]
                }
              },
              "required": [
                "error",
                "critical",
                "message",
                "verificationTime"
              ]
            },
            "certificates": {
              "type": "array",
              "items": {}
            }
          },
          "required": [
            "certificates",
            "issuerJWK",
            "jwks",
            "method",
            "x5c"
          ]
        },
        "TrustedAnchor": {
          "type": "string"
        },
        "ErrorMessage": {
          "type": "string"
        },
        "JwsPayload": {
          "type": "object",
          "additionalProperties": {},
          "properties": {
            "iss": {
              "type": "string"
            },
            "sub": {
              "type": "string"
            },
            "aud": {
              "anyOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                {
                  "type": "string"
                }
              ]
            },
            "exp": {
              "type": "number"
            },
            "nbf": {
              "type": "number"
            },
            "iat": {
              "type": "number"
            },
            "jti": {
              "type": "string"
            }
          }
        },
        "ExternalIdentifierCoseKeyOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "cose_key"
            },
            "identifier": {
              "$ref": "#/components/schemas/ExternalIdentifierType"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ExternalIdentifierCoseKeyResult": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "cose_key"
            },
            "jwks": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ExternalJwkInfo"
              }
            },
            "coseKey": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    0
                  ]
                },
                "kid": {
                  "type": "string"
                },
                "alg": {
                  "type": "number",
                  "enum": [
                    -7,
                    -47,
                    -35,
                    -36,
                    -8,
                    4,
                    5,
                    6,
                    7,
                    -37,
                    -38,
                    -39
                  ]
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "number",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10
                    ]
                  }
                },
                "baseIV": {
                  "type": "string"
                },
                "crv": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    -1
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "x5chain": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "kty"
              ],
              "additionalProperties": {},
              "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
            },
            "x5c": {
              "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
            }
          },
          "required": [
            "coseKey",
            "jwks",
            "method"
          ]
        },
        "ExternalIdentifierDidOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "did"
            },
            "identifier": {
              "$ref": "#/components/schemas/ExternalIdentifierType"
            },
            "noVerificationMethodFallback": {
              "type": "boolean"
            },
            "vmRelationship": {
              "$ref": "#/components/schemas/DIDDocumentSection"
            },
            "localResolution": {
              "type": "boolean"
            },
            "uniresolverResolution": {
              "type": "boolean"
            },
            "resolverResolution": {
              "type": "boolean"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ExternalIdentifierDidResult": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "did"
            },
            "jwks": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ExternalJwkInfo"
              }
            },
            "did": {
              "type": "string"
            },
            "didDocument": {
              "$ref": "#/components/schemas/DIDDocument"
            },
            "didJwks": {
              "type": "object",
              "properties": {
                "verificationMethod": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                },
                "authentication": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                },
                "assertionMethod": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                },
                "keyAgreement": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                },
                "capabilityInvocation": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                },
                "capabilityDelegation": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "kty": {
                        "type": "string",
                        "enum": [
                          "EC",
                          "RSA",
                          "oct",
                          "OKP"
                        ]
                      },
                      "crv": {
                        "type": "string",
                        "enum": [
                          "P-256",
                          "P-384",
                          "P-521",
                          "X25519",
                          "X448",
                          "EdDSA",
                          "Ed25519",
                          "Ed448",
                          "secp256k1"
                        ]
                      },
                      "alg": {
                        "type": "string",
                        "enum": [
                          "RS256",
                          "RS384",
                          "RS512",
                          "ES256",
                          "ES256K",
                          "ES384",
                          "ES512",
                          "EdDSA",
                          "HS256",
                          "HS384",
                          "HS512",
                          "PS256",
                          "PS384",
                          "PS512",
                          "none"
                        ]
                      },
                      "x": {
                        "type": "string"
                      },
                      "y": {
                        "type": "string"
                      },
                      "e": {
                        "type": "string"
                      },
                      "n": {
                        "type": "string"
                      },
                      "d": {
                        "type": "string"
                      },
                      "dp": {
                        "type": "string"
                      },
                      "dq": {
                        "type": "string"
                      },
                      "ext": {
                        "type": "boolean"
                      },
                      "k": {
                        "type": "string"
                      },
                      "key_ops": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "sign",
                            "verify",
                            "encrypt",
                            "decrypt",
                            "wrapKey",
                            "unwrapKey",
                            "deriveKey",
                            "deriveBits"
                          ]
                        }
                      },
                      "kid": {
                        "type": "string"
                      },
                      "oth": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "d": {
                              "type": "string"
                            },
                            "r": {
                              "type": "string"
                            },
                            "t": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "p": {
                        "type": "string"
                      },
                      "q": {
                        "type": "string"
                      },
                      "qi": {
                        "type": "string"
                      },
                      "use": {
                        "type": "string"
                      },
                      "x5c": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                      },
                      "x5t": {
                        "type": "string",
                        "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                      },
                      "x5t#S256": {
                        "type": "string",
                        "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                      },
                      "x5u": {
                        "type": "string",
                        "description": "JWK \"x5u\" (X.509 URL) Parameter."
                      },
                      "iv": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": {},
                    "required": [
                      "kty"
                    ]
                  }
                }
              },
              "required": [
                "verificationMethod",
                "authentication",
                "assertionMethod",
                "keyAgreement",
                "capabilityInvocation",
                "capabilityDelegation"
              ]
            },
            "didResolutionResult": {
              "type": "object",
              "properties": {
                "@context": {
                  "anyOf": [
                    {
                      "type": "string",
                      "const": "https://w3id.org/did-resolution/v1"
                    },
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ]
                },
                "didResolutionMetadata": {
                  "$ref": "#/components/schemas/DIDResolutionMetadata"
                },
                "didDocumentMetadata": {
                  "$ref": "#/components/schemas/DIDDocumentMetadata"
                }
              },
              "required": [
                "didResolutionMetadata",
                "didDocumentMetadata"
              ]
            },
            "didParsed": {
              "type": "object",
              "properties": {
                "did": {
                  "type": "string"
                },
                "didUrl": {
                  "type": "string"
                },
                "method": {
                  "type": "string"
                },
                "id": {
                  "type": "string"
                },
                "path": {
                  "type": "string"
                },
                "fragment": {
                  "type": "string"
                },
                "query": {
                  "type": "string"
                },
                "params": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "did",
                "didUrl",
                "method",
                "id"
              ]
            }
          },
          "required": [
            "did",
            "didParsed",
            "didResolutionResult",
            "jwks",
            "method"
          ]
        },
        "ExternalIdentifierJwkOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "jwk"
            },
            "identifier": {
              "$ref": "#/components/schemas/ExternalIdentifierType"
            },
            "x5c": {
              "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ExternalIdentifierJwkResult": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "jwk"
            },
            "jwks": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ExternalJwkInfo"
              }
            },
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "x5c": {
              "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
            }
          },
          "required": [
            "jwk",
            "jwks",
            "method"
          ]
        },
        "ExternalIdentifierOIDFEntityIdOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "entity_id"
            },
            "identifier": {
              "$ref": "#/components/schemas/ExternalIdentifierType"
            },
            "trustAnchors": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ExternalIdentifierOIDFEntityIdResult": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "entity_id"
            },
            "jwks": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ExternalJwkInfo"
              }
            },
            "trustedAnchors": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/TrustedAnchor"
              }
            },
            "errorList": {
              "type": "object",
              "additionalProperties": {
                "$ref": "#/components/schemas/ErrorMessage"
              }
            },
            "jwtPayload": {
              "$ref": "#/components/schemas/JwsPayload"
            },
            "trustEstablished": {
              "type": "boolean"
            }
          },
          "required": [
            "jwks",
            "method",
            "trustEstablished",
            "trustedAnchors"
          ]
        },
        "ManagedIdentifierOptsOrResult": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "certificate": {}
              },
              "required": [
                "certificate",
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts",
                "x5c"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                },
                "did": {
                  "type": "string"
                },
                "keys": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IKey"
                  }
                },
                "verificationMethodSection": {
                  "$ref": "#/components/schemas/DIDDocumentSection"
                },
                "controllerKeyId": {
                  "type": "string"
                }
              },
              "required": [
                "did",
                "identifier",
                "issuer",
                "jwk",
                "jwkThumbprint",
                "key",
                "keys",
                "kid",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kid",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "jwk"
                },
                "identifier": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "x5c"
                },
                "identifier": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "did"
                },
                "identifier": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/IIdentifier"
                    },
                    {
                      "type": "string"
                    }
                  ]
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "keyType": {
                  "$ref": "#/components/schemas/TKeyType"
                },
                "offlineWhenNoDIDRegistered": {
                  "type": "boolean"
                },
                "noVerificationMethodFallback": {
                  "type": "boolean"
                },
                "controllerKey": {
                  "type": "boolean"
                },
                "vmRelationship": {
                  "$ref": "#/components/schemas/DIDDocumentSection"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "kid"
                },
                "identifier": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "key"
                },
                "identifier": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "cose_key"
                },
                "identifier": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        0
                      ]
                    },
                    "kid": {
                      "type": "string"
                    },
                    "alg": {
                      "type": "number",
                      "enum": [
                        -7,
                        -47,
                        -35,
                        -36,
                        -8,
                        4,
                        5,
                        6,
                        7,
                        -37,
                        -38,
                        -39
                      ]
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "number",
                        "enum": [
                          1,
                          2,
                          3,
                          4,
                          5,
                          6,
                          7,
                          8,
                          9,
                          10
                        ]
                      }
                    },
                    "baseIV": {
                      "type": "string"
                    },
                    "crv": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        -1
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "x5chain": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "kty"
                  ],
                  "additionalProperties": {},
                  "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "lazyDisabled": {
                  "type": "boolean"
                },
                "method": {
                  "type": "string",
                  "const": "oid4vci-issuer"
                },
                "identifier": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            }
          ]
        },
        "ManagedIdentifierMethod": {
          "type": "string",
          "enum": [
            "did",
            "jwk",
            "x5c",
            "kid",
            "key",
            "cose_key",
            "oid4vci-issuer"
          ]
        },
        "ManagedIdentifierOpts": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "jwk"
                },
                "identifier": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "x5c"
                },
                "identifier": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "did"
                },
                "identifier": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/IIdentifier"
                    },
                    {
                      "type": "string"
                    }
                  ]
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "keyType": {
                  "$ref": "#/components/schemas/TKeyType"
                },
                "offlineWhenNoDIDRegistered": {
                  "type": "boolean"
                },
                "noVerificationMethodFallback": {
                  "type": "boolean"
                },
                "controllerKey": {
                  "type": "boolean"
                },
                "vmRelationship": {
                  "$ref": "#/components/schemas/DIDDocumentSection"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "kid"
                },
                "identifier": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "key"
                },
                "identifier": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "cose_key"
                },
                "identifier": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        0
                      ]
                    },
                    "kid": {
                      "type": "string"
                    },
                    "alg": {
                      "type": "number",
                      "enum": [
                        -7,
                        -47,
                        -35,
                        -36,
                        -8,
                        4,
                        5,
                        6,
                        7,
                        -37,
                        -38,
                        -39
                      ]
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "number",
                        "enum": [
                          1,
                          2,
                          3,
                          4,
                          5,
                          6,
                          7,
                          8,
                          9,
                          10
                        ]
                      }
                    },
                    "baseIV": {
                      "type": "string"
                    },
                    "crv": {
                      "type": "number",
                      "enum": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        -1
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "x5chain": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "kty"
                  ],
                  "additionalProperties": {},
                  "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            },
            {
              "type": "object",
              "properties": {
                "method": {
                  "type": "string",
                  "const": "oid4vci-issuer"
                },
                "identifier": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "kid": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                }
              },
              "required": [
                "identifier"
              ]
            }
          ]
        },
        "IIdentifier": {
          "type": "object",
          "properties": {
            "did": {
              "type": "string",
              "description": "Decentralized identifier"
            },
            "alias": {
              "type": "string",
              "description": "Optional. Identifier alias. Can be used to reference an object in an external system"
            },
            "provider": {
              "type": "string",
              "description": "Identifier provider name"
            },
            "controllerKeyId": {
              "type": "string",
              "description": "Controller key id"
            },
            "keys": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/IKey"
              },
              "description": "Array of managed keys"
            },
            "services": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/IService"
              },
              "description": "Array of services"
            }
          },
          "required": [
            "did",
            "provider",
            "keys",
            "services"
          ],
          "description": "Identifier interface"
        },
        "IKey": {
          "type": "object",
          "properties": {
            "kid": {
              "type": "string",
              "description": "Key ID"
            },
            "kms": {
              "type": "string",
              "description": "Key Management System"
            },
            "type": {
              "$ref": "#/components/schemas/TKeyType",
              "description": "Key type"
            },
            "publicKeyHex": {
              "type": "string",
              "description": "Public key"
            },
            "privateKeyHex": {
              "type": "string",
              "description": "Optional. Private key"
            },
            "meta": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/KeyMetadata"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Optional. Key metadata. This should be used to determine which algorithms are supported."
            }
          },
          "required": [
            "kid",
            "kms",
            "type",
            "publicKeyHex"
          ],
          "description": "Cryptographic key"
        },
        "TKeyType": {
          "type": "string",
          "enum": [
            "Ed25519",
            "Secp256k1",
            "Secp256r1",
            "X25519",
            "Bls12381G1",
            "Bls12381G2",
            "RSA"
          ],
          "description": "Cryptographic key type."
        },
        "KeyMetadata": {
          "type": "object",
          "properties": {
            "algorithms": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "description": "This encapsulates data about a key.\n\nImplementations of  {@link  @veramo/key-manager#AbstractKeyManagementSystem | AbstractKeyManagementSystem }  should populate this object, for each key, with the algorithms that can be performed using it.\n\nThis can also be used to add various tags to the keys under management."
        },
        "IService": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "ID"
            },
            "type": {
              "type": "string",
              "description": "Service type"
            },
            "serviceEndpoint": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IServiceEndpoint"
                },
                {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IServiceEndpoint"
                  }
                }
              ],
              "description": "Endpoint URL"
            },
            "description": {
              "type": "string",
              "description": "Optional. Description"
            }
          },
          "required": [
            "id",
            "type",
            "serviceEndpoint"
          ],
          "description": "Identifier service"
        },
        "IServiceEndpoint": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "object"
            }
          ],
          "description": "Represents a service endpoint URL or a map of URLs"
        },
        "ManagedIdentifierType": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/IIdentifier"
            },
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            {
              "$ref": "#/components/schemas/IKey"
            },
            {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    0
                  ]
                },
                "kid": {
                  "type": "string"
                },
                "alg": {
                  "type": "number",
                  "enum": [
                    -7,
                    -47,
                    -35,
                    -36,
                    -8,
                    4,
                    5,
                    6,
                    7,
                    -37,
                    -38,
                    -39
                  ]
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "number",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10
                    ]
                  }
                },
                "baseIV": {
                  "type": "string"
                },
                "crv": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    -1
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "x5chain": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "kty"
              ],
              "additionalProperties": {},
              "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
            }
          ],
          "description": "Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\n\nThe functions below can be used to check the type, and they also provide the proper 'runtime' types"
        },
        "ManagedIdentifierResult": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "certificate": {}
              },
              "required": [
                "certificate",
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts",
                "x5c"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                },
                "did": {
                  "type": "string"
                },
                "keys": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IKey"
                  }
                },
                "verificationMethodSection": {
                  "$ref": "#/components/schemas/DIDDocumentSection"
                },
                "controllerKeyId": {
                  "type": "string"
                }
              },
              "required": [
                "did",
                "identifier",
                "issuer",
                "jwk",
                "jwkThumbprint",
                "key",
                "keys",
                "kid",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kid",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            },
            {
              "type": "object",
              "properties": {
                "jwk": {
                  "type": "object",
                  "properties": {
                    "kty": {
                      "type": "string",
                      "enum": [
                        "EC",
                        "RSA",
                        "oct",
                        "OKP"
                      ]
                    },
                    "crv": {
                      "type": "string",
                      "enum": [
                        "P-256",
                        "P-384",
                        "P-521",
                        "X25519",
                        "X448",
                        "EdDSA",
                        "Ed25519",
                        "Ed448",
                        "secp256k1"
                      ]
                    },
                    "alg": {
                      "type": "string",
                      "enum": [
                        "RS256",
                        "RS384",
                        "RS512",
                        "ES256",
                        "ES256K",
                        "ES384",
                        "ES512",
                        "EdDSA",
                        "HS256",
                        "HS384",
                        "HS512",
                        "PS256",
                        "PS384",
                        "PS512",
                        "none"
                      ]
                    },
                    "x": {
                      "type": "string"
                    },
                    "y": {
                      "type": "string"
                    },
                    "e": {
                      "type": "string"
                    },
                    "n": {
                      "type": "string"
                    },
                    "d": {
                      "type": "string"
                    },
                    "dp": {
                      "type": "string"
                    },
                    "dq": {
                      "type": "string"
                    },
                    "ext": {
                      "type": "boolean"
                    },
                    "k": {
                      "type": "string"
                    },
                    "key_ops": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "sign",
                          "verify",
                          "encrypt",
                          "decrypt",
                          "wrapKey",
                          "unwrapKey",
                          "deriveKey",
                          "deriveBits"
                        ]
                      }
                    },
                    "kid": {
                      "type": "string"
                    },
                    "oth": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "d": {
                            "type": "string"
                          },
                          "r": {
                            "type": "string"
                          },
                          "t": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "p": {
                      "type": "string"
                    },
                    "q": {
                      "type": "string"
                    },
                    "qi": {
                      "type": "string"
                    },
                    "use": {
                      "type": "string"
                    },
                    "x5c": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                    },
                    "x5t": {
                      "type": "string",
                      "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                    },
                    "x5t#S256": {
                      "type": "string",
                      "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                    },
                    "x5u": {
                      "type": "string",
                      "description": "JWK \"x5u\" (X.509 URL) Parameter."
                    },
                    "iv": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": {},
                  "required": [
                    "kty"
                  ]
                },
                "jwkThumbprint": {
                  "type": "string"
                },
                "kmsKeyRef": {
                  "type": "string"
                },
                "method": {
                  "$ref": "#/components/schemas/ManagedIdentifierMethod"
                },
                "opts": {
                  "$ref": "#/components/schemas/ManagedIdentifierOpts"
                },
                "key": {
                  "$ref": "#/components/schemas/IKey"
                },
                "kid": {
                  "type": "string"
                },
                "issuer": {
                  "type": "string"
                },
                "clientId": {
                  "type": "string"
                },
                "clientIdScheme": {
                  "type": "string"
                },
                "identifier": {
                  "$ref": "#/components/schemas/ManagedIdentifierType"
                }
              },
              "required": [
                "identifier",
                "jwk",
                "jwkThumbprint",
                "key",
                "kmsKeyRef",
                "method",
                "opts"
              ]
            }
          ]
        },
        "ManagedIdentifierCoseKeyOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "cose_key"
            },
            "identifier": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    0
                  ]
                },
                "kid": {
                  "type": "string"
                },
                "alg": {
                  "type": "number",
                  "enum": [
                    -7,
                    -47,
                    -35,
                    -36,
                    -8,
                    4,
                    5,
                    6,
                    7,
                    -37,
                    -38,
                    -39
                  ]
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "number",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10
                    ]
                  }
                },
                "baseIV": {
                  "type": "string"
                },
                "crv": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    -1
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "x5chain": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "kty"
              ],
              "additionalProperties": {},
              "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierCoseKeyResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "cose_key"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    0
                  ]
                },
                "kid": {
                  "type": "string"
                },
                "alg": {
                  "type": "number",
                  "enum": [
                    -7,
                    -47,
                    -35,
                    -36,
                    -8,
                    4,
                    5,
                    6,
                    7,
                    -37,
                    -38,
                    -39
                  ]
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "number",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7,
                      8,
                      9,
                      10
                    ]
                  }
                },
                "baseIV": {
                  "type": "string"
                },
                "crv": {
                  "type": "number",
                  "enum": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    -1
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "x5chain": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "kty"
              ],
              "additionalProperties": {},
              "description": "See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\n\nConversion functions are available in above library. Conversion functions are also available for TS in our"
            }
          },
          "required": [
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierDidOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "did"
            },
            "identifier": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IIdentifier"
                },
                {
                  "type": "string"
                }
              ]
            },
            "keyType": {
              "$ref": "#/components/schemas/TKeyType"
            },
            "offlineWhenNoDIDRegistered": {
              "type": "boolean"
            },
            "noVerificationMethodFallback": {
              "type": "boolean"
            },
            "controllerKey": {
              "type": "boolean"
            },
            "vmRelationship": {
              "$ref": "#/components/schemas/DIDDocumentSection"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierDidResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "did"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "$ref": "#/components/schemas/IIdentifier"
            },
            "did": {
              "type": "string"
            },
            "keys": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/IKey"
              }
            },
            "verificationMethodSection": {
              "$ref": "#/components/schemas/DIDDocumentSection"
            },
            "controllerKeyId": {
              "type": "string"
            }
          },
          "required": [
            "did",
            "identifier",
            "issuer",
            "jwk",
            "jwkThumbprint",
            "key",
            "keys",
            "kid",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierJwkOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "jwk"
            },
            "identifier": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierJwkResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "jwk"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            }
          },
          "required": [
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierKeyOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "key"
            },
            "identifier": {
              "$ref": "#/components/schemas/IKey"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierKeyResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "key"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "$ref": "#/components/schemas/IKey"
            }
          },
          "required": [
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierKidOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "kid"
            },
            "identifier": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierKidResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "kid"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "type": "string"
            }
          },
          "required": [
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kid",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierOID4VCIssuerOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "oid4vci-issuer"
            },
            "identifier": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierOID4VCIssuerResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "oid4vci-issuer"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "type": "string"
            }
          },
          "required": [
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kmsKeyRef",
            "method",
            "opts"
          ]
        },
        "ManagedIdentifierX5cOpts": {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "const": "x5c"
            },
            "identifier": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "kid": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            }
          },
          "required": [
            "identifier"
          ]
        },
        "ManagedIdentifierX5cResult": {
          "type": "object",
          "properties": {
            "jwk": {
              "type": "object",
              "properties": {
                "kty": {
                  "type": "string",
                  "enum": [
                    "EC",
                    "RSA",
                    "oct",
                    "OKP"
                  ]
                },
                "crv": {
                  "type": "string",
                  "enum": [
                    "P-256",
                    "P-384",
                    "P-521",
                    "X25519",
                    "X448",
                    "EdDSA",
                    "Ed25519",
                    "Ed448",
                    "secp256k1"
                  ]
                },
                "alg": {
                  "type": "string",
                  "enum": [
                    "RS256",
                    "RS384",
                    "RS512",
                    "ES256",
                    "ES256K",
                    "ES384",
                    "ES512",
                    "EdDSA",
                    "HS256",
                    "HS384",
                    "HS512",
                    "PS256",
                    "PS384",
                    "PS512",
                    "none"
                  ]
                },
                "x": {
                  "type": "string"
                },
                "y": {
                  "type": "string"
                },
                "e": {
                  "type": "string"
                },
                "n": {
                  "type": "string"
                },
                "d": {
                  "type": "string"
                },
                "dp": {
                  "type": "string"
                },
                "dq": {
                  "type": "string"
                },
                "ext": {
                  "type": "boolean"
                },
                "k": {
                  "type": "string"
                },
                "key_ops": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "sign",
                      "verify",
                      "encrypt",
                      "decrypt",
                      "wrapKey",
                      "unwrapKey",
                      "deriveKey",
                      "deriveBits"
                    ]
                  }
                },
                "kid": {
                  "type": "string"
                },
                "oth": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "d": {
                        "type": "string"
                      },
                      "r": {
                        "type": "string"
                      },
                      "t": {
                        "type": "string"
                      }
                    }
                  }
                },
                "p": {
                  "type": "string"
                },
                "q": {
                  "type": "string"
                },
                "qi": {
                  "type": "string"
                },
                "use": {
                  "type": "string"
                },
                "x5c": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "JWK \"x5c\" (X.509 Certificate Chain) Parameter."
                },
                "x5t": {
                  "type": "string",
                  "description": "JWK \"x5t\" (X.509 Certificate SHA-1 Thumbprint) Parameter."
                },
                "x5t#S256": {
                  "type": "string",
                  "description": "\"x5t#S256\" (X.509 Certificate SHA-256 Thumbprint) Parameter."
                },
                "x5u": {
                  "type": "string",
                  "description": "JWK \"x5u\" (X.509 URL) Parameter."
                },
                "iv": {
                  "type": "string"
                }
              },
              "additionalProperties": {},
              "required": [
                "kty"
              ]
            },
            "jwkThumbprint": {
              "type": "string"
            },
            "kmsKeyRef": {
              "type": "string"
            },
            "method": {
              "type": "string",
              "const": "x5c"
            },
            "opts": {
              "$ref": "#/components/schemas/ManagedIdentifierOpts"
            },
            "key": {
              "$ref": "#/components/schemas/IKey"
            },
            "kid": {
              "type": "string"
            },
            "issuer": {
              "type": "string"
            },
            "clientId": {
              "type": "string"
            },
            "clientIdScheme": {
              "type": "string"
            },
            "identifier": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "x5c": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "certificate": {}
          },
          "required": [
            "certificate",
            "identifier",
            "jwk",
            "jwkThumbprint",
            "key",
            "kmsKeyRef",
            "method",
            "opts",
            "x5c"
          ]
        }
      },
      "methods": {
        "identifierExternalResolve": {
          "description": "Main method for external identifiers. We always go through this method (also the others) as we want to integrate a plugin for anomaly detection. Having a single method helps",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierResult"
          }
        },
        "identifierExternalResolveByCoseKey": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierCoseKeyOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierCoseKeyResult"
          }
        },
        "identifierExternalResolveByDid": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierDidOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierDidResult"
          }
        },
        "identifierExternalResolveByJwk": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierJwkOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierJwkResult"
          }
        },
        "identifierExternalResolveByOIDFEntityId": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierOIDFEntityIdOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierOIDFEntityIdResult"
          }
        },
        "identifierExternalResolveByX5c": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
          }
        },
        "identifierManagedGet": {
          "description": "Main method for managed identifiers. We always go through this method (also the others) as we want to integrate a plugin for anomaly detection. Having a single method helps",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierOptsOrResult"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierResult"
          }
        },
        "identifierManagedGetByCoseKey": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierCoseKeyOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierCoseKeyResult"
          }
        },
        "identifierManagedGetByDid": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierDidOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierDidResult"
          }
        },
        "identifierManagedGetByJwk": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierJwkOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierJwkResult"
          }
        },
        "identifierManagedGetByKey": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierKeyOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierKeyResult"
          }
        },
        "identifierManagedGetByKid": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierKidOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierKidResult"
          }
        },
        "identifierManagedGetByOID4VCIssuer": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierOID4VCIssuerOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierOID4VCIssuerResult"
          }
        },
        "identifierManagedGetByX5c": {
          "description": "",
          "arguments": {
            "$ref": "#/components/schemas/ManagedIdentifierX5cOpts"
          },
          "returnType": {
            "$ref": "#/components/schemas/ManagedIdentifierX5cResult"
          }
        }
      }
    }
  }
}