import { QueryBus } from '../../../core/query/QueryBus';
import { CommandBus } from '../../../core/command/CommandBus';
import IsIssuerRequest from '../request/security/operations/issue/IsIssuerRequest';
import SetRevocationRegistryAddressRequest from '../request/security/ssi/SetRevocationRegistryAddressRequest';
import AddIssuerRequest from '../request/security/ssi/AddIssuerRequest';
import RemoveIssuerRequest from '../request/security/operations/issue/RemoveIssuerRequest';
import GetRevocationRegistryAddressRequest from '../request/security/ssi/GetRevocationRegistryAddressRequest';
import GetIssuerListCountRequest from '../request/security/ssi/GetIssuerListCountRequest';
import GetIssuerListMembersRequest from '../request/security/ssi/GetIssuerListMembersRequest';
interface ISsiManagementInPort {
    setRevocationRegistryAddress(request: SetRevocationRegistryAddressRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    addIssuer(request: AddIssuerRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    removeIssuer(request: RemoveIssuerRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getRevocationRegistryAddress(request: GetRevocationRegistryAddressRequest): Promise<string>;
    getIssuerListCount(request: GetIssuerListCountRequest): Promise<number>;
    getIssuerListMembers(request: GetIssuerListMembersRequest): Promise<string[]>;
    isIssuer(request: IsIssuerRequest): Promise<boolean>;
}
declare class SsiManagementInPort implements ISsiManagementInPort {
    private readonly commandBus;
    private readonly queryBus;
    constructor(commandBus?: CommandBus, queryBus?: QueryBus);
    addIssuer(request: AddIssuerRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    setRevocationRegistryAddress(request: SetRevocationRegistryAddressRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    removeIssuer(request: RemoveIssuerRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getRevocationRegistryAddress(request: GetRevocationRegistryAddressRequest): Promise<string>;
    getIssuerListCount(request: GetIssuerListCountRequest): Promise<number>;
    getIssuerListMembers(request: GetIssuerListMembersRequest): Promise<string[]>;
    isIssuer(request: IsIssuerRequest): Promise<boolean>;
}
declare const SsiManagement: SsiManagementInPort;
export default SsiManagement;
