import { IPaymentStreamPaymentDates } from './payment_stream_payment_dates';
import { IPaymentStreamResetDates } from './payment_stream_reset_dates';
import { IPaymentStreamFixedRate } from './payment_stream_fixed_rate';
import { IPaymentStreamFloatingRate } from './payment_stream_floating_rate';
import { IPaymentStreamCompoundingFloatingRate } from './payment_stream_compounding_floating_rate';
import { IPaymentStreamCompoundingDates } from './payment_stream_compounding_dates';
import { IPaymentStreamNonDeliverableSettlTerms } from './payment_stream_non_deliverable_settl_terms';
export interface IPaymentStream {
    PaymentStreamType?: number;
    PaymentStreamMarketRate?: number;
    PaymentStreamDelayIndicator?: boolean;
    PaymentStreamCashSettlIndicator?: boolean;
    PaymentStreamSettlCurrency?: string;
    AdditionalTermBondDayCount?: number;
    PaymentStreamAccrualDays?: number;
    PaymentStreamDiscountType?: number;
    PaymentStreamDiscountRate?: number;
    LegPaymentStreamDiscountRateDayCount?: number;
    PaymentStreamCompoundingMethod?: number;
    PaymentStreamCompoundingXIDRef?: string;
    PaymentStreamCompoundingSpread?: number;
    PaymentStreamInterpolationMethod?: number;
    PaymentStreamInterpolationPeriod?: number;
    PaymentStreamInitialPrincipalExchangeIndicator?: boolean;
    PaymentStreamInterimPrincipalExchangeIndicator?: boolean;
    PaymentStreamFinalPrincipalExchangeIndicator?: boolean;
    PaymentStreamFlatRateIndicator?: boolean;
    PaymentStreamFlatRateAmount?: number;
    PaymentStreamFlatRateCurrency?: string;
    PaymentStreamMaximumPaymentAmount?: number;
    PaymentStreamMaximumPaymentCurrency?: string;
    PaymentStreamMaximumTransactionAmount?: number;
    PaymentStreamMaximumTransactionCurrency?: string;
    PaymentStreamCompoundingFixedRate?: number;
    PaymentStreamPaymentDates?: IPaymentStreamPaymentDates;
    PaymentStreamResetDates?: IPaymentStreamResetDates;
    PaymentStreamFixedRate?: IPaymentStreamFixedRate;
    PaymentStreamFloatingRate?: IPaymentStreamFloatingRate;
    PaymentStreamCompoundingFloatingRate?: IPaymentStreamCompoundingFloatingRate;
    PaymentStreamCompoundingDates?: IPaymentStreamCompoundingDates;
    PaymentStreamNonDeliverableSettlTerms?: IPaymentStreamNonDeliverableSettlTerms;
}
