UNPKG

fineract_sdk

Version:

Wrapper around fineract api.

726 lines 65.1 kB
"use strict"; /* tslint:disable */ /* eslint-disable */ /** * Apache Fineract * Apache Fineract is a secure, multi-tenanted microfinance platform The goal of the Apache Fineract API is to empower developers to build apps on top of the Apache Fineract Platform<br>The [reference app](https://cui.fineract.dev) (username: mifos, password: password) works on the same demo tenant as the interactive links in this documentation - The API is organized around [REST](https://en.wikipedia.org/wiki/Representational_state_transfer) - Find out more about Apache Fineract [here](/fineract-provider/api-docs/apiLive.htm#top) - You can [Try The API From Your Browser](/fineract-provider/api-docs/apiLive.htm#interact) - The Generic Options are available [here](/fineract-provider/api-docs/apiLive.htm#genopts) - Find out more about [Updating Dates and Numbers](/fineract-provider/api-docs/apiLive.htm#dates_and_numbers) - For the Authentication and the Basic of HTTP and HTTPS refer [here](/fineract-provider/api-docs/apiLive.htm#authentication_overview) - Check about ERROR codes [here](/fineract-provider/api-docs/apiLive.htm#errors) Please refer to the [old documentation](/fineract-provider/api-docs/apiLive.htm) for any documentation queries * * The version of the OpenAPI document: 1.5.0-66-gffae7d4-dirty * Contact: dev@fineract.apache.org * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); exports.SelfLoansApi = exports.SelfLoansApiFactory = exports.SelfLoansApiFp = exports.SelfLoansApiAxiosParamCreator = void 0; var axios_1 = require("axios"); // Some imports not used depending on template conditions // @ts-ignore var common_1 = require("../common"); // @ts-ignore var base_1 = require("../base"); /** * SelfLoansApi - axios parameter creator * @export */ exports.SelfLoansApiAxiosParamCreator = function (configuration) { var _this = this; return { /** * Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled for product and Rest frequency not same as repayment period: recalculationRestFrequencyDate Additional Mandatory Fields if interest recalculation with interest/fee compounding is enabled for product and compounding frequency not same as repayment period: recalculationCompoundingFrequencyDate Additional Mandatory Field if Entity-Datatable Check is enabled for the entity of type loan: datatables Optional Fields: graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, linkAccountId, allowPartialPeriodInterestCalcualtion, fixedEmiAmount, maxOutstandingLoanBalance, disbursementData, graceOnArrearsAgeing, createStandingInstructionAtDisbursement (requires linkedAccountId if set to true) Showing request/response for \'Submit a new Loan Application\' * @summary Calculate Loan Repayment Schedule | Submit a new Loan Application * @param {PostSelfLoansRequest} postSelfLoansRequest * @param {string} [command] command * @param {*} [options] Override http request option. * @throws {RequiredError} */ calculateLoanScheduleOrSubmitLoanApplication1: function (postSelfLoansRequest, command, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'postSelfLoansRequest' is not null or undefined common_1.assertParamExists('calculateLoanScheduleOrSubmitLoanApplication1', 'postSelfLoansRequest', postSelfLoansRequest); localVarPath = "/self/loans"; localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); if (command !== undefined) { localVarQueryParameter['command'] = command; } localVarHeaderParameter['Content-Type'] = 'application/json'; common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); localVarRequestOptions.data = common_1.serializeDataIfNeeded(postSelfLoansRequest, localVarRequestOptions, configuration); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Loan application can only be modified when in \'Submitted and pending approval\' state. Once the application is approved, the details cannot be changed using this method. * @summary Update a Loan Application * @param {number} loanId loanId * @param {PutSelfLoansLoanIdRequest} putSelfLoansLoanIdRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ modifyLoanApplication1: function (loanId, putSelfLoansLoanIdRequest, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('modifyLoanApplication1', 'loanId', loanId); // verify required parameter 'putSelfLoansLoanIdRequest' is not null or undefined common_1.assertParamExists('modifyLoanApplication1', 'putSelfLoansLoanIdRequest', putSelfLoansLoanIdRequest); localVarPath = "/self/loans/{loanId}" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); localVarHeaderParameter['Content-Type'] = 'application/json'; common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); localVarRequestOptions.data = common_1.serializeDataIfNeeded(putSelfLoansLoanIdRequest, localVarRequestOptions, configuration); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Lists loan Charges Example Requests: self/loans/1/charges self/loans/1/charges?fields=name,amountOrPercentage * @summary List Loan Charges * @param {number} loanId loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveAllLoanCharges1: function (loanId, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('retrieveAllLoanCharges1', 'loanId', loanId); localVarPath = "/self/loans/{loanId}/charges" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * * @param {number} loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveGuarantorDetails2: function (loanId, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('retrieveGuarantorDetails2', 'loanId', loanId); localVarPath = "/self/loans/{loanId}/guarantors" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Retrieves a Loan Example Requests: self/loans/1 self/loans/1?fields=id,principal,annualInterestRate self/loans/1?fields=id,principal,annualInterestRate&associations=repaymentSchedule,transactions * @summary Retrieve a Loan * @param {number} loanId loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveLoan1: function (loanId, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('retrieveLoan1', 'loanId', loanId); localVarPath = "/self/loans/{loanId}" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Retrieves a Loan Charge Example Requests: self/loans/1/charges/1 self/loans/1/charges/1?fields=name,amountOrPercentage * @summary Retrieve a Loan Charge * @param {number} loanId loanId * @param {number} chargeId chargeId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveLoanCharge1: function (loanId, chargeId, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('retrieveLoanCharge1', 'loanId', loanId); // verify required parameter 'chargeId' is not null or undefined common_1.assertParamExists('retrieveLoanCharge1', 'chargeId', chargeId); localVarPath = "/self/loans/{loanId}/charges/{chargeId}" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))) .replace("{" + "chargeId" + "}", encodeURIComponent(String(chargeId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Retrieves a Loan Transaction DetailsExample Request: self/loans/5/transactions/3 * @summary Retrieve a Loan Transaction Details * @param {number} loanId loanId * @param {number} transactionId transactionId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveTransaction1: function (loanId, transactionId, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('retrieveTransaction1', 'loanId', loanId); // verify required parameter 'transactionId' is not null or undefined common_1.assertParamExists('retrieveTransaction1', 'transactionId', transactionId); localVarPath = "/self/loans/{loanId}/transactions/{transactionId}" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))) .replace("{" + "transactionId" + "}", encodeURIComponent(String(transactionId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Applicant Withdraws from Loan Application Mandatory Fields: withdrawnOnDate * @summary Applicant Withdraws from Loan Application * @param {number} loanId loanId * @param {PostSelfLoansLoanIdRequest} postSelfLoansLoanIdRequest * @param {string} [command] command * @param {*} [options] Override http request option. * @throws {RequiredError} */ stateTransitions1: function (loanId, postSelfLoansLoanIdRequest, command, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: // verify required parameter 'loanId' is not null or undefined common_1.assertParamExists('stateTransitions1', 'loanId', loanId); // verify required parameter 'postSelfLoansLoanIdRequest' is not null or undefined common_1.assertParamExists('stateTransitions1', 'postSelfLoansLoanIdRequest', postSelfLoansLoanIdRequest); localVarPath = "/self/loans/{loanId}" .replace("{" + "loanId" + "}", encodeURIComponent(String(loanId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); if (command !== undefined) { localVarQueryParameter['command'] = command; } localVarHeaderParameter['Content-Type'] = 'application/json'; common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); localVarRequestOptions.data = common_1.serializeDataIfNeeded(postSelfLoansLoanIdRequest, localVarRequestOptions, configuration); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, /** * Retrieves Loan Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed description Lists Example Requests: self/loans/template?templateType=individual&clientId=1 self/loans/template?templateType=individual&clientId=1&productId=1 * @summary Retrieve Loan Details Template * @param {number} [clientId] clientId * @param {number} [productId] productId * @param {string} [templateType] templateType * @param {*} [options] Override http request option. * @throws {RequiredError} */ template17: function (clientId, productId, templateType, options) { if (options === void 0) { options = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: localVarPath = "/self/loans/template"; localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; } localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options); localVarHeaderParameter = {}; localVarQueryParameter = {}; // authentication basicAuth required // http basic authentication required common_1.setBasicAuthToObject(localVarRequestOptions, configuration); // authentication tenantid required return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)]; case 1: // authentication tenantid required _a.sent(); if (clientId !== undefined) { localVarQueryParameter['clientId'] = clientId; } if (productId !== undefined) { localVarQueryParameter['productId'] = productId; } if (templateType !== undefined) { localVarQueryParameter['templateType'] = templateType; } common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers); return [2 /*return*/, { url: common_1.toPathString(localVarUrlObj), options: localVarRequestOptions, }]; } }); }); }, }; }; /** * SelfLoansApi - functional programming interface * @export */ exports.SelfLoansApiFp = function (configuration) { var localVarAxiosParamCreator = exports.SelfLoansApiAxiosParamCreator(configuration); return { /** * Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled for product and Rest frequency not same as repayment period: recalculationRestFrequencyDate Additional Mandatory Fields if interest recalculation with interest/fee compounding is enabled for product and compounding frequency not same as repayment period: recalculationCompoundingFrequencyDate Additional Mandatory Field if Entity-Datatable Check is enabled for the entity of type loan: datatables Optional Fields: graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, linkAccountId, allowPartialPeriodInterestCalcualtion, fixedEmiAmount, maxOutstandingLoanBalance, disbursementData, graceOnArrearsAgeing, createStandingInstructionAtDisbursement (requires linkedAccountId if set to true) Showing request/response for \'Submit a new Loan Application\' * @summary Calculate Loan Repayment Schedule | Submit a new Loan Application * @param {PostSelfLoansRequest} postSelfLoansRequest * @param {string} [command] command * @param {*} [options] Override http request option. * @throws {RequiredError} */ calculateLoanScheduleOrSubmitLoanApplication1: function (postSelfLoansRequest, command, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.calculateLoanScheduleOrSubmitLoanApplication1(postSelfLoansRequest, command, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Loan application can only be modified when in \'Submitted and pending approval\' state. Once the application is approved, the details cannot be changed using this method. * @summary Update a Loan Application * @param {number} loanId loanId * @param {PutSelfLoansLoanIdRequest} putSelfLoansLoanIdRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ modifyLoanApplication1: function (loanId, putSelfLoansLoanIdRequest, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.modifyLoanApplication1(loanId, putSelfLoansLoanIdRequest, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Lists loan Charges Example Requests: self/loans/1/charges self/loans/1/charges?fields=name,amountOrPercentage * @summary List Loan Charges * @param {number} loanId loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveAllLoanCharges1: function (loanId, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveAllLoanCharges1(loanId, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * * @param {number} loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveGuarantorDetails2: function (loanId, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveGuarantorDetails2(loanId, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Retrieves a Loan Example Requests: self/loans/1 self/loans/1?fields=id,principal,annualInterestRate self/loans/1?fields=id,principal,annualInterestRate&associations=repaymentSchedule,transactions * @summary Retrieve a Loan * @param {number} loanId loanId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveLoan1: function (loanId, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveLoan1(loanId, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Retrieves a Loan Charge Example Requests: self/loans/1/charges/1 self/loans/1/charges/1?fields=name,amountOrPercentage * @summary Retrieve a Loan Charge * @param {number} loanId loanId * @param {number} chargeId chargeId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveLoanCharge1: function (loanId, chargeId, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveLoanCharge1(loanId, chargeId, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Retrieves a Loan Transaction DetailsExample Request: self/loans/5/transactions/3 * @summary Retrieve a Loan Transaction Details * @param {number} loanId loanId * @param {number} transactionId transactionId * @param {*} [options] Override http request option. * @throws {RequiredError} */ retrieveTransaction1: function (loanId, transactionId, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveTransaction1(loanId, transactionId, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Applicant Withdraws from Loan Application Mandatory Fields: withdrawnOnDate * @summary Applicant Withdraws from Loan Application * @param {number} loanId loanId * @param {PostSelfLoansLoanIdRequest} postSelfLoansLoanIdRequest * @param {string} [command] command * @param {*} [options] Override http request option. * @throws {RequiredError} */ stateTransitions1: function (loanId, postSelfLoansLoanIdRequest, command, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.stateTransitions1(loanId, postSelfLoansLoanIdRequest, command, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, /** * Retrieves Loan Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed description Lists Example Requests: self/loans/template?templateType=individual&clientId=1 self/loans/template?templateType=individual&clientId=1&productId=1 * @summary Retrieve Loan Details Template * @param {number} [clientId] clientId * @param {number} [productId] productId * @param {string} [templateType] templateType * @param {*} [options] Override http request option. * @throws {RequiredError} */ template17: function (clientId, productId, templateType, options) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, localVarAxiosParamCreator.template17(clientId, productId, templateType, options)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; } }); }); }, }; }; /** * SelfLoansApi - factory interface * @export */ exports.SelfLoansApiFactory = function (configuration, basePath, axios) { var localVarFp = exports.SelfLoansApiFp(configuration); return { /** * Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled fo