import { IKeys } from '@ew-did-registry/keys';
import { IOperator, ProviderSettings } from '@ew-did-registry/did-resolver-interface';
import { IDID, Methods } from '@ew-did-registry/did';
import { IDIDDocumentFull } from '@ew-did-registry/did-document';
import { IClaimsFactory } from '@ew-did-registry/claims';
import { IJWT } from '@ew-did-registry/jwt';
import { IDidStore } from '@ew-did-registry/did-store-interface';
import { IDIDRegistry } from './interface';
/**
 * @class {DIDRegistry}
 */
declare class DIDRegistry implements IDIDRegistry {
    private operator;
    store: IDidStore;
    did: IDID;
    keyStore: Map<string, IKeys>;
    document: IDIDDocumentFull;
    claims: IClaimsFactory;
    providerSettings: ProviderSettings;
    jwt: IJWT;
    constructor(keys: IKeys, did: string, operator: IOperator, store: IDidStore, _providerSettings: ProviderSettings);
    /**
     * Configures registry for use with another method
     *
     * @example
     * ```typescript
     * import DIDRegistry from '@ew-did-registry/did-regsitry';
     * import { Method } from '@ew-did-registry/did';
     *
     * const providerSettings = {
     *  type: ProviderTypes.HTTP,
     *  uriOrInfo: https://volta-rpc.energyweb.org,
     * }
     * const reg = new DIDRegistry(keys, ethDid, ethResolver, didStore, providerSettings);
     * reg.changeResolver(new Resolver(ewcSettings, providerUrl), Method.EnergyWeb);
     * ```
     * @param { IResolver } resolver
     * @param { Methods } method
     * @returns { Promise<void> }
     */
    changeOperator(operator: IOperator, method: Methods | string): void;
    /**
     *
     * Update keyStore from user's didDocument
     */
    updateKeyStore(): Promise<boolean>;
    /**
     * Returns DID document of the corresponding did
     *
     * @example
     * ```typescript
     * import DIDRegistry from '@ew-did-registry/did-registry';
     *
     * const document = await reg.read(did);
     * ```
     *
     * @param { string } did
     * @returns { Promsise<DIDDocumentLite> }
     */
    read(did: string): Promise<IDIDDocumentFull>;
}
export default DIDRegistry;
