import { providers } from 'ethers'; import { RegistrySettings } from '@ew-did-registry/did-resolver-interface'; import { CredentialResolver, IssuerResolver } from '.'; import { RolePayload, VerificationResult } from './models'; /** * A class to verify chain of trust for an issued RoleEIP191Jwt * The hierachy must only consist of RoleEIP191Jwt issuance */ export declare class ClaimIssuerVerification { private _resolver; private _issuerDefResolver; private _credentialResolver; /** * * @param provider * @param registrySetting * @param credentialResolver * @param issuerDefResolver */ constructor(provider: providers.Provider, registrySetting: RegistrySettings, credentialResolver: CredentialResolver, issuerDefResolver: IssuerResolver); /** * Verifies that `issuer` is authorized to issue `role` claim * * ```typescript * const issuerVerification = new ClaimIssuerVerification( * provider, * RegistrySettings, * credentialResolver, * issuerResolver * ); * await issuerVerification.verifyIssuer('issuerDID', 'role'); * ``` * @param issuer DID of the issuer * @param role name of the role claim * @returns VerificationResult */ verifyIssuer(issuer: string, role: string): Promise; /** * Verifies that `role` claim was issued to `subject` * @param subject DID of the subject * @param role name of the role claim * @returns valid RolePayload */ verifyIssuance(subject: string, role: string): Promise; /** * Verifies issuer's authority to issue credential for a namespace * @param {string} namespace * @param {string} issuerDID * @returns boolean * * @todo remove as duplicate of this.verifyIssuer */ private verifyIssuerAuthority; }