import { DomainReader } from '@energyweb/credential-governance'; import type { IRevokerDefinition } from '@energyweb/credential-governance'; /** * An interface for Resolution of revokers for a namespace */ export interface RevokerResolver { /** * Fetches authorised revokers for the provided namespace * @param namespace * @returns IRevokerDefinition for the namespace */ getRevokerDefinition(namespace: string): Promise; } /** * Resolves revokers definition by reading smart contract state via an Ethers provider */ export declare class EthersProviderRevokerResolver implements RevokerResolver { private _domainReader; constructor(domainReader: DomainReader); /** * Fetches revokers for the name space * * ```typescript * const revokerResolver = new EthersProviderRevokerResolver(domainReader); * const role = 'sampleRole'; * const revokers = revokerResolver.getRevokerDefinition(role); * ``` * @param namespace for which revokers need to be fetched * @returns IRevokerDefinition for the namespace from blockchain contract */ getRevokerDefinition(namespace: string): Promise; }