UNPKG

@crediblex.io/fineract-api-client

Version:
55 lines 2.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createFineractSDK = exports.FineractSDK = void 0; const http_client_1 = require("./utils/http-client"); const fineract_sme_api_1 = require("./api/fineract-sme-api"); const fineract_datatable_api_1 = require("./api/fineract-datatable-api"); const fineract_loanproducts_api_1 = require("./api/fineract-loanproducts-api"); const fineract_savingsproducts_api_1 = require("./api/fineract-savingsproducts-api"); const fineract_savingsaccounts_api_1 = require("./api/fineract-savingsaccounts-api"); const fineract_loansaccounts_api_1 = require("./api/fineract-loansaccounts-api"); const fineract_reports_api_1 = require("./api/fineract-reports-api"); const fineract_holidays_api_1 = require("./api/fineract-holidays-api"); const fineract_workingdays_api_1 = require("./api/fineract-workingdays-api"); const fineract_creditlines_api_1 = require("./api/fineract-creditlines-api"); /** * Main SDK class for interacting with Fineract APIs. * It provides access to various API modules, starting with FineractClientApi. */ class FineractSDK { /** * Initializes a new instance of the FineractSDK. * @param config Configuration for the SDK, including baseURL, tenantId, and credentials. */ constructor(config) { this.httpClient = new http_client_1.HttpClient(config); this.sme = new fineract_sme_api_1.FineractSmeApi(this.httpClient); this.datatable = new fineract_datatable_api_1.FineractDatatableApi(this.httpClient); this.loanproducts = new fineract_loanproducts_api_1.FineractLoanProductsApi(this.httpClient); this.savingsproducts = new fineract_savingsproducts_api_1.FineractSavingsProductsApi(this.httpClient); this.savingsaccounts = new fineract_savingsaccounts_api_1.FineractSavingsAccountsApi(this.httpClient); this.loansaccounts = new fineract_loansaccounts_api_1.FineractLoansAccountsApi(this.httpClient); this.reports = new fineract_reports_api_1.FineractReportsApi(this.httpClient); this.holidays = new fineract_holidays_api_1.FineractHolidaysApi(this.httpClient); this.workingdays = new fineract_workingdays_api_1.FineractWorkingDaysApi(this.httpClient); this.creditlines = new fineract_creditlines_api_1.FineractCreditLinesApi(this.httpClient); } /** * Allows direct access to the underlying HttpClient for advanced use cases * or for API endpoints not yet covered by specific API client classes. */ getHttpClient() { return this.httpClient; } } exports.FineractSDK = FineractSDK; /** * Factory function to easily create an instance of the FineractSDK. * @param config Configuration for the SDK. * @returns A new instance of FineractSDK. */ function createFineractSDK(config) { return new FineractSDK(config); } exports.createFineractSDK = createFineractSDK; //# sourceMappingURL=fineract-sdk.js.map