import ChainHelper from '../../helpers/chain';
import { ISignPlugin, ValidateDelegate } from '../interface';
/**
 * Mykey plugins help to sign and validate signature
 */
export declare class MykeyPlugin implements ISignPlugin {
    private readonly config;
    /**
     * initiate with the chain helper
     * @param {Object.<string,string>} config - default: {mgrcontract: 'mykeymanager'}
     */
    constructor(config?: {
        mgrcontract: string;
    });
    getSignKey(account: string, chain: ChainHelper): Promise<string>;
    readonly perm: string;
    readonly signKeyProvider: {
        [x: string]: (account: string, chain: ChainHelper) => Promise<string>;
    };
    readonly validatorProvider: {
        [perm: string]: ValidateDelegate;
    };
}
