docs: async def get_cred_infos_by_filter(self, filt: dict = None) -> str:
          """
          Return cred-info (json list) from wallet by input filter for
          schema identifier and/or credential definition identifier components;
          return info of all credentials for no filter.
  
          Raise WalletState if the wallet is closed.
  
          :param filt: indy-sdk filter for credentials; i.e.,
  
          ::
  
              {
                  "schema_id": string,  # optional
                  "schema_issuer_did": string,  # optional
                  "schema_name": string,  # optional
                  "schema_version": string,  # optional
                  "issuer_did": string,  # optional
                  "cred_def_id": string  # optional
              }
  
          :return: credential infos as json list; i.e.,
  
          ::
  
              [
                  {
                      "referent": string,  # credential identifier in the wallet
                      "attrs": {
                          "attr1" : {"raw": "value1", "encoded": "value1_as_int" },
                          "attr2" : {"raw": "value2", "encoded": "value2_as_int" },
                          ...
                      }
                      "schema_id": string,
                      "cred_def_id": string,
                      "rev_reg_id": Optional<string>,
                      "cred_rev_id": Optional<string>
                  },
                  ...
              ]
  
          """
  
          LOGGER.debug('HolderProver.get_cred_infos_by_filter >>> filt: %s', filt)
  
          if not self.wallet.handle:
              LOGGER.debug('HolderProver.get_cred_infos_by_filter <!< Wallet %s is closed', self.name)
              raise WalletState('Wallet {} is closed'.format(self.name))
  
          rv_json = await anoncreds.prover_get_credentials(self.wallet.handle, json.dumps(filt or {}))
          LOGGER.debug('HolderProver.get_cred_infos_by_filter <<< %s', rv_json)
          return rv_json