func SingleKey(pubKey []byte, pubKeyType string) PublicKeyFetcher {
	return func(_, _ string) (*verifier.PublicKey, error) {
		return &verifier.PublicKey{
			Type:  pubKeyType,
			Value: pubKey,
		}, nil
	}
}
SingleKey defines the case when only one verification key is used and we don't need to pick the one.
package verifiable
import (
	"encoding/json"
	"errors"
	"fmt"
	"strings"
	"github.com/piprate/json-gold/ld"
	"github.com/xeipuuv/gojsonschema"
	"github.com/hyperledger/aries-framework-go/pkg/doc/signature/verifier"
	vdrapi "github.com/hyperledger/aries-framework-go/pkg/framework/aries/api/vdr"
)
type JWSAlgorithm int
const (
	RS256 JWSAlgorithm = iota
	EdDSA
)
func (ja JWSAlgorithm) name() (string, error) {
	switch ja {
	case RS256:
		return "RS256", nil
	case EdDSA:
		return "EdDSA", nil
	default:
		return "", fmt.Errorf("unsupported algorithm: %v", ja)
	}
}
type jsonldCredentialOpts struct {
	jsonldDocumentLoader ld.DocumentLoader
	externalContext      []string
	jsonldOnlyValidRDF   bool
}
type PublicKeyFetcher func(issuerID, keyID string) (*verifier.PublicKey, error)