import { CommandBus } from "../../../core/command/CommandBus";
import { QueryBus } from "../../../core/query/QueryBus";
import SetVotingRightsRequest from "../request/equity/SetVotingRightsRequest";
import GetVotingRightsForRequest from "../request/equity/GetVotingRightsForRequest";
import GetVotingRightsRequest from "../request/equity/GetVotingRightsRequest";
import GetAllVotingRightsRequest from "../request/equity/GetAllVotingRightsRequest";
import VotingRightsForViewModel from "../response/VotingRightsForViewModel";
import VotingRightsViewModel from "../response/VotingRightsViewModel";
import CreateEquityRequest from "../request/equity/CreateEquityRequest";
import { SecurityViewModel } from "../security/Security";
import NetworkService from "../../../app/service/network/NetworkService";
import GetEquityDetailsRequest from "../request/equity/GetEquityDetailsRequest";
import EquityDetailsViewModel from "../response/EquityDetailsViewModel";
import CancelScheduledBalanceAdjustmentRequest from "../request/equity/CancelScheduledBalanceAdjustmentRequest";
import SetScheduledBalanceAdjustmentRequest from "../request/equity/SetScheduledBalanceAdjustmentRequest";
import GetScheduledBalanceAdjustmentRequest from "../request/equity/GetScheduledBalanceAdjustmentRequest";
import ScheduledBalanceAdjustmentViewModel from "../response/ScheduledBalanceAdjustmentViewModel";
import GetScheduledBalanceAdjustmentCountRequest from "../request/equity/GetScheduledBalanceAdjustmentsCountRequest";
import GetAllScheduledBalanceAdjustmentsRequest from "../request/equity/GetAllScheduledBalanceAdjustmentst";
import GetVotingHoldersRequest from "../request/equity/GetVotingHoldersRequest";
import GetTotalVotingHoldersRequest from "../request/equity/GetTotalVotingHoldersRequest";
import CreateTrexSuiteEquityRequest from "../request/equity/CreateTrexSuiteEquityRequest";
import CancelVotingRequest from "../request/equity/CancelVotingRequest";
interface IEquityInPort {
    create(request: CreateEquityRequest): Promise<{
        security: SecurityViewModel;
        transactionId: string;
    }>;
    getEquityDetails(request: GetEquityDetailsRequest): Promise<EquityDetailsViewModel>;
    setVotingRights(request: SetVotingRightsRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    cancelVoting(request: CancelVotingRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getVotingRightsFor(request: GetVotingRightsForRequest): Promise<VotingRightsForViewModel>;
    getVotingRights(request: GetVotingRightsRequest): Promise<VotingRightsViewModel>;
    getAllVotingRights(request: GetAllVotingRightsRequest): Promise<VotingRightsViewModel[]>;
    setScheduledBalanceAdjustment(request: SetScheduledBalanceAdjustmentRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    getScheduledBalanceAdjustmentsCount(request: GetScheduledBalanceAdjustmentCountRequest): Promise<number>;
    getScheduledBalanceAdjustment(request: GetScheduledBalanceAdjustmentRequest): Promise<ScheduledBalanceAdjustmentViewModel>;
    getAllScheduledBalanceAdjustments(request: GetAllScheduledBalanceAdjustmentsRequest): Promise<ScheduledBalanceAdjustmentViewModel[]>;
    getVotingHolders(request: GetVotingHoldersRequest): Promise<string[]>;
    getTotalVotingHolders(request: GetTotalVotingHoldersRequest): Promise<number>;
    createTrexSuite(request: CreateTrexSuiteEquityRequest): Promise<{
        security: SecurityViewModel;
        transactionId: string;
    }>;
    cancelScheduledBalanceAdjustment(request: CancelScheduledBalanceAdjustmentRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
}
declare class EquityInPort implements IEquityInPort {
    private readonly queryBus;
    private readonly commandBus;
    private readonly networkService;
    constructor(queryBus?: QueryBus, commandBus?: CommandBus, networkService?: NetworkService);
    createTrexSuite(req: CreateTrexSuiteEquityRequest): Promise<{
        security: SecurityViewModel;
        transactionId: string;
    }>;
    create(req: CreateEquityRequest): Promise<{
        security: SecurityViewModel;
        transactionId: string;
    }>;
    getEquityDetails(request: GetEquityDetailsRequest): Promise<EquityDetailsViewModel>;
    setVotingRights(request: SetVotingRightsRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    cancelVoting(request: CancelVotingRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    getVotingRightsFor(request: GetVotingRightsForRequest): Promise<VotingRightsForViewModel>;
    getVotingRights(request: GetVotingRightsRequest): Promise<VotingRightsViewModel>;
    getAllVotingRights(request: GetAllVotingRightsRequest): Promise<VotingRightsViewModel[]>;
    setScheduledBalanceAdjustment(request: SetScheduledBalanceAdjustmentRequest): Promise<{
        payload: number;
        transactionId: string;
    }>;
    getScheduledBalanceAdjustment(request: GetScheduledBalanceAdjustmentRequest): Promise<ScheduledBalanceAdjustmentViewModel>;
    getScheduledBalanceAdjustmentsCount(request: GetScheduledBalanceAdjustmentCountRequest): Promise<number>;
    getAllScheduledBalanceAdjustments(request: GetAllScheduledBalanceAdjustmentsRequest): Promise<ScheduledBalanceAdjustmentViewModel[]>;
    getVotingHolders(request: GetVotingHoldersRequest): Promise<string[]>;
    getTotalVotingHolders(request: GetTotalVotingHoldersRequest): Promise<number>;
    cancelScheduledBalanceAdjustment(request: CancelScheduledBalanceAdjustmentRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
}
declare const EquityToken: EquityInPort;
export default EquityToken;
