import { QueryBus } from "../../../../core/query/QueryBus";
import { CommandBus } from "../../../../core/command/CommandBus";
import GetInterestRateRequest from "../../../in/request/interestRates/GetInterestRateRequest";
import SetInterestRateRequest from "../../../in/request/interestRates/SetInterestRateRequest";
import InterestRateViewModel from "../../../in/response/interestRates/InterestRateViewModel";
import ImpactDataViewModel from "../../../in/response/interestRates/ImpactDataViewModel";
import GetImpactDataRequest from "../../../in/request/kpiLinkedRate/GetImpactDataRequest";
import SetImpactDataRequest from "../../../in/request/interestRates/SetImpactDataRequest";
interface IKpiLinkedRateInPort {
    getInterestRate(request: GetInterestRateRequest): Promise<InterestRateViewModel>;
    getImpactData(request: GetImpactDataRequest): Promise<ImpactDataViewModel>;
    setInterestRate(request: SetInterestRateRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    setImpactData(request: SetImpactDataRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
}
declare class KpiLinkedRateInPort implements IKpiLinkedRateInPort {
    private readonly queryBus;
    private readonly commandBus;
    constructor(queryBus?: QueryBus, commandBus?: CommandBus);
    getInterestRate(request: GetInterestRateRequest): Promise<InterestRateViewModel>;
    getImpactData(request: GetImpactDataRequest): Promise<ImpactDataViewModel>;
    setInterestRate(request: SetInterestRateRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
    setImpactData(request: SetImpactDataRequest): Promise<{
        payload: boolean;
        transactionId: string;
    }>;
}
declare const KpiLinkedRate: KpiLinkedRateInPort;
export default KpiLinkedRate;
