blob: 42122ac381cf654ba879214bd7403351a8651006 [file]
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
/*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { PostLoansDataTable } from './postLoansDataTable';
import { StringEnumOptionData } from './stringEnumOptionData';
import { PostLoansRequestChargeData } from './postLoansRequestChargeData';
import { PostLoansDisbursementData } from './postLoansDisbursementData';
/**
* PostLoansRequest
*/
export interface PostLoansRequest {
amortizationType?: number;
buyDownFeeCalculationType?: PostLoansRequest.BuyDownFeeCalculationTypeEnum;
buyDownFeeIncomeType?: PostLoansRequest.BuyDownFeeIncomeTypeEnum;
buyDownFeeStrategy?: PostLoansRequest.BuyDownFeeStrategyEnum;
capitalizedIncomeCalculationType?: PostLoansRequest.CapitalizedIncomeCalculationTypeEnum;
capitalizedIncomeStrategy?: PostLoansRequest.CapitalizedIncomeStrategyEnum;
capitalizedIncomeType?: StringEnumOptionData;
charges?: Array<PostLoansRequestChargeData>;
clientId?: number;
datatables?: Array<PostLoansDataTable>;
dateFormat?: string;
daysInYearCustomStrategy?: PostLoansRequest.DaysInYearCustomStrategyEnum;
daysInYearType?: PostLoansRequest.DaysInYearTypeEnum | null;
disbursedAmountPercentageForDownPayment?: number;
/**
* List of PostLoansDisbursementData
*/
disbursementData?: Array<PostLoansDisbursementData>;
enableAutoRepaymentForDownPayment?: boolean;
enableBuyDownFee?: boolean;
enableDownPayment?: boolean;
enableIncomeCapitalization?: boolean;
enableInstallmentLevelDelinquency?: boolean;
expectedDisbursementDate?: string;
externalId?: string;
fixedEmiAmount?: number;
fixedLength?: number;
fixedPrincipalPercentagePerInstallment?: number;
graceOnArrearsAgeing?: number;
graceOnInterestCharged?: number;
graceOnInterestPayment?: number;
graceOnPrincipalPayment?: number;
interestCalculationPeriodType?: number;
interestRateFrequencyType?: number;
interestRatePerPeriod?: number;
interestRecognitionOnDisbursementDate?: boolean;
interestType?: number;
loanScheduleProcessingType?: string;
loanTermFrequency?: number;
loanTermFrequencyType?: number;
loanType?: string;
locale?: string;
/**
* Maximum allowed outstanding balance
*/
maxOutstandingLoanBalance?: number;
numberOfRepayments?: number;
principal?: number;
productId?: number;
repaymentEvery?: number;
repaymentFrequencyType?: number;
repaymentsStartingFromDate?: string;
submittedOnDate?: string;
transactionProcessingStrategyCode?: string;
}
export namespace PostLoansRequest {
export const BuyDownFeeCalculationTypeEnum = {
Flat: 'FLAT'
} as const;
export type BuyDownFeeCalculationTypeEnum = typeof BuyDownFeeCalculationTypeEnum[keyof typeof BuyDownFeeCalculationTypeEnum];
export const BuyDownFeeIncomeTypeEnum = {
Fee: 'FEE',
Interest: 'INTEREST'
} as const;
export type BuyDownFeeIncomeTypeEnum = typeof BuyDownFeeIncomeTypeEnum[keyof typeof BuyDownFeeIncomeTypeEnum];
export const BuyDownFeeStrategyEnum = {
EqualAmortization: 'EQUAL_AMORTIZATION'
} as const;
export type BuyDownFeeStrategyEnum = typeof BuyDownFeeStrategyEnum[keyof typeof BuyDownFeeStrategyEnum];
export const CapitalizedIncomeCalculationTypeEnum = {
Flat: 'FLAT'
} as const;
export type CapitalizedIncomeCalculationTypeEnum = typeof CapitalizedIncomeCalculationTypeEnum[keyof typeof CapitalizedIncomeCalculationTypeEnum];
export const CapitalizedIncomeStrategyEnum = {
EqualAmortization: 'EQUAL_AMORTIZATION'
} as const;
export type CapitalizedIncomeStrategyEnum = typeof CapitalizedIncomeStrategyEnum[keyof typeof CapitalizedIncomeStrategyEnum];
export const DaysInYearCustomStrategyEnum = {
FullLeapYearFeb29PeriodOnly: 'FULL_LEAP_YEAR, FEB_29_PERIOD_ONLY'
} as const;
export type DaysInYearCustomStrategyEnum = typeof DaysInYearCustomStrategyEnum[keyof typeof DaysInYearCustomStrategyEnum];
export const DaysInYearTypeEnum = {
} as const;
export type DaysInYearTypeEnum = typeof DaysInYearTypeEnum[keyof typeof DaysInYearTypeEnum];
}