import { CommandBus } from '../../../core/command/CommandBus';
import { AddExternalKycListRequest, RemoveExternalKycListRequest, UpdateExternalKycListsRequest, GetExternalKycListsCountRequest, GetExternalKycListsMembersRequest, IsExternalKycListRequest, IsExternallyGrantedRequest, GrantKycMockRequest, RevokeKycMockRequest, GetKycStatusMockRequest } from '../request/index';
import { QueryBus } from '../../../core/query/QueryBus';
interface IExternalKycListsInPort {
    updateExternalKycLists(request: UpdateExternalKycListsRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    addExternalKycList(request: AddExternalKycListRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    removeExternalKycList(request: RemoveExternalKycListRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    isExternallyGranted(request: IsExternallyGrantedRequest): Promise<boolean>;
    isExternalKycList(request: IsExternalKycListRequest): Promise<boolean>;
    getExternalKycListsCount(request: GetExternalKycListsCountRequest): Promise<number>;
    getExternalKycListsMembers(request: GetExternalKycListsMembersRequest): Promise<string[]>;
}
interface IExternalKycListsMocksInPort {
    grantKycMock(request: GrantKycMockRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    revokeKycMock(request: RevokeKycMockRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getKycStatusMock(request: GetKycStatusMockRequest): Promise<number>;
    createExternalKycMock(): Promise<string>;
}
declare class ExternalKycListsInPort implements IExternalKycListsInPort, IExternalKycListsMocksInPort {
    private readonly queryBus;
    private readonly commandBus;
    constructor(queryBus?: QueryBus, commandBus?: CommandBus);
    updateExternalKycLists(request: UpdateExternalKycListsRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    addExternalKycList(request: AddExternalKycListRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    removeExternalKycList(request: RemoveExternalKycListRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    isExternallyGranted(request: IsExternallyGrantedRequest): Promise<boolean>;
    isExternalKycList(request: IsExternalKycListRequest): Promise<boolean>;
    getExternalKycListsCount(request: GetExternalKycListsCountRequest): Promise<number>;
    getExternalKycListsMembers(request: GetExternalKycListsMembersRequest): Promise<string[]>;
    grantKycMock(request: GrantKycMockRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    revokeKycMock(request: RevokeKycMockRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getKycStatusMock(request: GetKycStatusMockRequest): Promise<number>;
    createExternalKycMock(): Promise<string>;
}
declare const ExternalKycListsManagement: ExternalKycListsInPort;
export default ExternalKycListsManagement;
