UNPKG

@microsoft/useragent-sdk

Version:

SDK for building decentralized identity wallets and enterprise agents.

57 lines (56 loc) 2.26 kB
import ICredential from './ICredential'; import Identifier from '../Identifier'; import CredentialManifest from './CredentialManifest'; import IDataHandler from './IDataHandler'; import 'isomorphic-fetch'; /** * Class for obtaining * credentials from an issuer. */ export default class CredentialIssuer { /** * The identifier for the issuer. */ readonly identifier: Identifier; /** * The manifest of the credential being issued */ readonly manifest: CredentialManifest; /** * Constructs an instance of the credential issuer * based on the specified credential manifest. * @param identifier for the issuer. * @param manifest credential manifest for specific credential. */ constructor(identifier: Identifier, manifest: any); /** * Constructs an instance of the credential issuer * based on the specified credential manifest. * @param identifier for the issuer. * @param manifest credential manifest object or endpoint string of manifest. */ static create(identifier: Identifier, manifest: CredentialManifest | string): Promise<CredentialIssuer>; /** * Gets the array of languages supported * by the manifest. */ /** * Requests a new credential from the issuer, * providing a self-issued credential with the inputs * specified in the credential manifest. * @param inputCredential containing the inputs as specified * in the credential manifest. */ requestCredential(inputCredential: ICredential): Promise<ICredential>; /** * Validate inputCredential with manifest and process and exchange inputCredential wuth Data Handler * @param inputCredential The Self-Issued Credential that with required claims. * @param _dataHandler Data handler for process and exchanging credentials. */ handleCredentialRequest(inputCredential: ICredential, dataHandler: IDataHandler): Promise<ICredential>; /** * Validate whether a credential is valid for the manifest. * @param _inputCredential the Credential to validate against the credential manifest */ validateCredential(_inputCredential: ICredential): boolean; }