@lilianaa/nordigen-node
Version:
Nordigen official API client for Node.js
1 lines • 33.5 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../src/HttpMethod.ts","../src/utils.ts","../src/api/InstitutionApi.ts","../src/api/AgreementApi.ts","../src/api/RequisitionsApi.ts","../src/api/AccountApi.ts","../src/NordigenClient.ts","../src/types/enums.ts","../src/countries.ts"],"sourcesContent":["export const HttpMethod = {\n GET: \"GET\",\n POST: \"POST\",\n PUT: \"PUT\",\n DELETE: \"DELETE\",\n};\n","import type { IsTruthy, OmitKeysMatching } from \"./types/index.js\";\n\n/**\n * Filter false values from object\n * @param {Object} obj\n * @returns A new object with truthy values\n */\nexport const filterObject = <T extends Record<string | number | symbol, unknown>>(obj: T): OmitKeysMatching<T, IsTruthy<T>> => {\n return Object.keys(obj ?? {}).reduce((acc, key) => {\n if (obj[key]) {\n (acc as any)[key] = obj[key];\n }\n\n return acc;\n }, {}) as OmitKeysMatching<T, IsTruthy<T>>;\n};\n","import type {\n RetrieveAllSupportedInstitutionsInAGivenCountryData,\n RetrieveAllSupportedInstitutionsInAGivenCountryParams,\n RetrieveInstitutionData,\n} from \"../generated.js\";\nimport type { NordigenClient } from \"../NordigenClient.js\";\nimport type { WithClient } from \"../types/client.js\";\n\nexport class InstitutionApi {\n private readonly endpoint: string = \"institutions\";\n\n private readonly client: NordigenClient;\n\n /**\n * Agreements api class\n * @param {WithClient} params\n */\n constructor({ client }: WithClient) {\n this.client = client;\n }\n\n /**\n * Get list of institutions\n * @param {RetrieveAllSupportedInstitutionsInAGivenCountryParams} params\n * @returns {Promise<RetrieveAllSupportedInstitutionsInAGivenCountryData>} institution data array\n */\n getInstitutions({\n country,\n }: RetrieveAllSupportedInstitutionsInAGivenCountryParams): Promise<RetrieveAllSupportedInstitutionsInAGivenCountryData> {\n return this.client.request<RetrieveAllSupportedInstitutionsInAGivenCountryData, RetrieveAllSupportedInstitutionsInAGivenCountryParams>({\n endpoint: this.endpoint,\n parameters: {\n country,\n },\n });\n }\n\n /***\n * Get single institution by id\n * @param {string} id\n * @returns {Promise<RetrieveInstitutionData>} single institution data\n */\n getInstitutionById(id: string): Promise<RetrieveInstitutionData> {\n return this.client.request<RetrieveInstitutionData>({ endpoint: `${this.endpoint}/${id}/` });\n }\n}\n","import type { NordigenClient } from \"../NordigenClient.js\";\nimport type {\n AcceptEuaData,\n CreateEuaData,\n EndUserAgreementRequest,\n EnduserAcceptanceDetailsRequest,\n RetrieveAllEuAsForAnEndUserData,\n RetrieveAllEuAsForAnEndUserParams,\n RetrieveEuaByIdData,\n} from \"../generated.js\";\nimport type { AgreementAcceptPraams as AgreementAcceptParams, AgreementCreateParams } from \"../types/agreement.js\";\nimport type { HasDetail, WithClient } from \"../types/client.js\";\nimport { HttpMethod } from \"../HttpMethod.js\";\n\nexport class AgreementApi {\n private readonly endpoint = \"agreements/enduser\";\n\n private readonly client: NordigenClient;\n\n /**\n * Agreements api class\n * @param {WithClient} params\n */\n constructor({ client }: WithClient) {\n this.client = client;\n }\n\n /**\n * Create enduser agreement\n * @param {AgreementCreateParams} params\n * @returns {Promise<CreateEuaData>} Agreement object\n */\n createAgreement({\n institutionId,\n maxHistoricalDays = 90,\n accessValidForDays = 90,\n accessScope = [\"balances\", \"details\", \"transactions\"],\n }: AgreementCreateParams): Promise<CreateEuaData> {\n const payload: EndUserAgreementRequest = {\n institution_id: institutionId,\n max_historical_days: maxHistoricalDays,\n access_valid_for_days: accessValidForDays,\n access_scope: accessScope,\n };\n\n return this.client.request<CreateEuaData, EndUserAgreementRequest>({\n endpoint: `${this.endpoint}/`,\n parameters: payload,\n method: HttpMethod.POST,\n });\n }\n\n /**\n * Get list of agreements\n * @param {RetrieveAllEuAsForAnEndUserParams} params\n * @returns {Promise<RetrieveAllEuAsForAnEndUserData>} End user agreements\n */\n getAgreements({ limit = 100, offset = 0 }: RetrieveAllEuAsForAnEndUserParams = {}): Promise<RetrieveAllEuAsForAnEndUserData> {\n const params: RetrieveAllEuAsForAnEndUserParams = { limit, offset };\n\n return this.client.request<RetrieveAllEuAsForAnEndUserData, RetrieveAllEuAsForAnEndUserParams>({\n endpoint: `${this.endpoint}/`,\n parameters: params,\n });\n }\n\n /**\n * Get agreement by agreement id\n * @param {string} agreementId\n * @returns {Promise<RetrieveEuaByIdData>} object with specific enduser agreement\n */\n getAgreementById(agreementId: string): Promise<RetrieveEuaByIdData> {\n return this.client.request<RetrieveEuaByIdData>({\n endpoint: `${this.endpoint}/${agreementId}/`,\n });\n }\n\n /**\n * Delete enduser agreement\n * @param {string} agreementId\n * @returns {Promise<HasDetail>} Deleted agreement object\n */\n deleteAgreement(agreementId: string): Promise<HasDetail> {\n return this.client.request<HasDetail>({\n endpoint: `${this.endpoint}/${agreementId}/`,\n method: HttpMethod.DELETE,\n });\n }\n\n /**\n * Accept End user agreement\n * @param {AgreementAcceptParams} params\n * @returns {Promise<AcceptEuaData>} Information on accepted agreement\n */\n acceptAgreement({ agreementId, ip, userAgent }: AgreementAcceptParams): Promise<AcceptEuaData> {\n const payload: EnduserAcceptanceDetailsRequest = {\n user_agent: userAgent,\n ip_address: ip,\n };\n\n return this.client.request<AcceptEuaData, EnduserAcceptanceDetailsRequest>({\n endpoint: `${this.endpoint}/${agreementId}/accept/`,\n parameters: payload,\n method: HttpMethod.PUT,\n });\n }\n}\n","import type { NordigenClient } from \"../NordigenClient.js\";\nimport type {\n PaginatedRequisitionList,\n RequisitionByIdData,\n RequisitionRequest,\n RetrieveAllRequisitionsData,\n RetrieveAllRequisitionsParams,\n SpectacularRequisition,\n} from \"../generated.js\";\nimport type { HasDetail, WithClient } from \"../types/client.js\";\nimport { HttpMethod } from \"../HttpMethod.js\";\nimport { RequisitionCreateOptions } from \"../types/requisition.js\";\n\nexport class RequisitionsApi {\n private readonly endpoint = \"requisitions\";\n\n private readonly client: NordigenClient;\n\n /**\n * Agreements api class\n * @param {WithClient} params\n */\n constructor({ client }: WithClient) {\n this.client = client;\n }\n\n /**\n * Create requisition. For creating links and retrieving accounts.\n * @param {RequisitionCreateOptions} params\n * @returns {Promise<SpectacularRequisition>} Requisition object\n */\n createRequisition({\n redirectUrl,\n institutionId,\n agreement,\n userLanguage,\n redirectImmediate = false,\n accountSelection = false,\n reference = null,\n ssn = null,\n }: RequisitionCreateOptions): Promise<SpectacularRequisition> {\n const payload: RequisitionRequest = {\n redirect: redirectUrl,\n institution_id: institutionId,\n redirect_immediate: redirectImmediate,\n account_selection: accountSelection,\n ...(userLanguage && { user_language: userLanguage }),\n ...(agreement && { agreement: typeof agreement === \"string\" ? agreement : agreement.id }),\n ...(ssn && { ssn: ssn }),\n ...(reference && { reference: reference }),\n };\n\n return this.client.request<SpectacularRequisition, RequisitionRequest>({\n endpoint: `${this.endpoint}/`,\n parameters: payload,\n method: HttpMethod.POST,\n });\n }\n\n /**\n * Get all requisitions\n * @param {RetrieveAllRequisitionsParams} params\n * @returns {Promise<PaginatedRequisitionList>} Requisitions object\n */\n getRequisitions({ limit = 100, offset = 0 }: RetrieveAllRequisitionsParams = {}): Promise<PaginatedRequisitionList> {\n const params: RetrieveAllRequisitionsParams = { limit, offset };\n\n return this.client.request<RetrieveAllRequisitionsData, RetrieveAllRequisitionsParams>({\n endpoint: this.endpoint,\n method: HttpMethod.GET,\n parameters: params,\n });\n }\n\n /**\n * Get requisition by id\n * @param {string} requisitionId\n * @returns {Promise<RequisitionByIdData>} Returns specific requisition\n */\n getRequisitionById(requisitionId: string): Promise<RequisitionByIdData> {\n return this.client.request<RequisitionByIdData>({\n endpoint: `${this.endpoint}/${requisitionId}/`,\n });\n }\n\n /**\n * Delete requisition by id\n * @param {string} requisitionId\n * @returns {HasDetail} Object that consist confirmation message that requisition has been deleted\n */\n deleteRequisition(requisitionId: string): Promise<HasDetail> {\n return this.client.request<HasDetail>({\n endpoint: `${this.endpoint}/${requisitionId}/`,\n method: HttpMethod.DELETE,\n });\n }\n}\n","import type { NordigenClient } from \"../NordigenClient.js\";\nimport type {\n AccountApiParams,\n AccountGetPath,\n AccountGetPathToParams,\n AccountGetPathToResponse,\n AccountGetTransactionsParams,\n RetrieveAccountTransactionsResponse,\n} from \"../types/account.js\";\nimport type { RetrieveAccountBalancesData, RetrieveAccountDetailsData, RetrieveAccountMetadataData } from \"../generated.js\";\n\nexport class AccountApi {\n private readonly endpoint = \"accounts\";\n\n private readonly client: NordigenClient;\n\n private readonly accountId: string;\n\n /**\n * Account api class\n * @param {Object} params\n */\n constructor({ client, accountId }: AccountApiParams) {\n this.client = client;\n this.accountId = accountId;\n }\n\n /**\n * Construct reusable get request\n *\n * @template {AccountGetPath} P\n * @param {P} path api endpoint\n * @param {AccountGetPathToParams[P]} [parameters] parameters\n * @returns {Promise<AccountGetPathToResponse[P]>} Account data object\n */\n private get<P extends AccountGetPath>(path: P, parameters: AccountGetPathToParams[P]): Promise<AccountGetPathToResponse[P]> {\n const url = `${this.endpoint}/${this.accountId}/${path}/`;\n return this.client.request({ endpoint: url, parameters: parameters || {} });\n }\n\n /**\n * Access account metadata\n * @returns {Promise<RetrieveAccountMetadataData>} Account metadata object\n */\n getMetadata(): Promise<RetrieveAccountMetadataData> {\n return this.client.request<RetrieveAccountMetadataData>({\n endpoint: `${this.endpoint}/${this.accountId}/`,\n });\n }\n\n /**\n * Access account details\n * @returns {Promise<RetrieveAccountDetailsData>} Object with account details\n */\n getDetails(): Promise<RetrieveAccountDetailsData> {\n return this.get(\"details\", {});\n }\n\n /**\n * Access account balances\n * @returns {Promise<RetrieveAccountBalancesData>} Object with account balances\n */\n getBalances(): Promise<RetrieveAccountBalancesData> {\n return this.get(\"balances\", {});\n }\n\n /**\n * Access account transactions\n * @param {AccountGetTransactionsParams} params\n * @returns {Promise<RetrieveAccountTransactionsResponse>} Object with account transactions\n */\n getTransactions({ dateFrom, dateTo }: AccountGetTransactionsParams = {}): Promise<RetrieveAccountTransactionsResponse> {\n const params: AccountGetPathToParams[\"transactions\"] = {\n date_from: dateFrom,\n date_to: dateTo,\n };\n\n return this.get(\"transactions\", params);\n }\n}\n","import axios from \"axios\";\nimport { HttpMethod } from \"./HttpMethod.js\";\nimport { filterObject } from \"./utils.js\";\nimport { ExchangeTokenOptions, InitSessionOptions, NordigenClientOptions, RequestWrapperOptions } from \"./types/client.js\";\nimport {\n JWTObtainPairRequest,\n JWTRefreshRequest,\n SpectacularJWTObtain,\n SpectacularJWTRefresh,\n SpectacularRequisition,\n} from \"./generated.js\";\nimport { InstitutionApi } from \"./api/InstitutionApi.js\";\nimport { AgreementApi } from \"./api/AgreementApi.js\";\nimport { RequisitionsApi } from \"./api/RequisitionsApi.js\";\nimport { AccountApi } from \"./api/AccountApi.js\";\n\nexport class NordigenClient {\n private readonly endpoint = \"token\";\n\n private _token: string | null = null;\n\n private readonly baseUrl: string;\n\n private readonly secretId: string;\n\n private readonly secretKey: string;\n\n private headers: Record<string, string> = {};\n\n public institution: InstitutionApi;\n\n public agreement: AgreementApi;\n\n public requisition: RequisitionsApi;\n\n constructor({ secretId, secretKey, baseUrl = \"https://bankaccountdata.gocardless.com/api/v2\" }: NordigenClientOptions) {\n this.baseUrl = baseUrl;\n this.secretKey = secretKey;\n this.secretId = secretId;\n this.headers = {\n \"accept\": \"application/json\",\n \"Content-Type\": \"application/json\",\n \"User-Agent\": \"Nordigen-Node-v2\",\n };\n this.institution = new InstitutionApi({ client: this });\n this.agreement = new AgreementApi({ client: this });\n this.requisition = new RequisitionsApi({ client: this });\n }\n\n /**\n * Token setter\n * @param {string|null} token\n */\n set token(token: string | null) {\n this._token = token;\n\n if (!token) {\n delete this.headers[\"Authorization\"];\n return;\n }\n\n this.headers[\"Authorization\"] = `Bearer ${token}`;\n }\n\n /**\n * Token getter\n * @returns {string|null} token\n */\n get token(): string | null {\n return this._token;\n }\n\n /**\n * Construct Account object\n * @param {string} accountId\n * @returns {AccountApi}\n */\n account(accountId: string): AccountApi {\n return new AccountApi({ client: this, accountId: accountId });\n }\n\n /**\n * Request wrapper\n * @template T\n * @template P\n * @param {RequestWrapperOptions<P>} params\n * @returns {Promise<T>} Request object\n */\n async request<T = unknown, P = unknown>({ endpoint, parameters, method = HttpMethod.GET }: RequestWrapperOptions<P>): Promise<T> {\n const url = new URL(`${this.baseUrl}/${endpoint}`);\n const validParams = filterObject(parameters as any);\n\n if (method === HttpMethod.GET && Object.keys(validParams).length > 0) {\n url.search = new URLSearchParams(validParams).toString();\n }\n\n const response = await axios({\n method,\n url: url.toString(),\n headers: this.headers,\n ...(method !== HttpMethod.GET ? { data: JSON.stringify(parameters) } : {}),\n });\n\n return response.data;\n }\n\n /**\n * Generate new access token\n * @returns {Promise<SpectacularJWTObtain>} Object with token details\n */\n async generateToken(): Promise<SpectacularJWTObtain> {\n const payload = {\n secret_key: this.secretKey,\n secret_id: this.secretId,\n };\n\n const response = await this.request<SpectacularJWTObtain, JWTObtainPairRequest>({\n endpoint: `${this.endpoint}/new/`,\n parameters: payload,\n method: HttpMethod.POST,\n });\n\n this.token = response?.access ?? null;\n\n return response;\n }\n\n /**\n * Exchange refresh token for access token\n * @param {ExchangeTokenOptions} params\n * @returns {Promise<SpectacularJWTRefresh>} Object with new access token\n */\n async exchangeToken({ refreshToken }: ExchangeTokenOptions): Promise<SpectacularJWTRefresh> {\n const payload: JWTRefreshRequest = { refresh: refreshToken };\n\n const response = await this.request<SpectacularJWTRefresh, JWTRefreshRequest>({\n endpoint: `${this.endpoint}/refresh/`,\n parameters: payload,\n method: HttpMethod.POST,\n });\n\n return response;\n }\n\n /**\n * Factory method that creates authorization in a specific institution\n * - and are responsible for the following steps:\n * * Gets institution id;\n * * Creates agreement\n * * Creates requisiton\n *\n * @param {InitSessionOptions} params\n * @returns {Promise<SpectacularRequisition>} Requisitions object\n */\n async initSession({\n redirectUrl,\n institutionId,\n maxHistoricalDays = 90,\n // accessValidForDays = 90,\n userLanguage = \"en\",\n referenceId,\n ssn = null,\n redirectImmediate = false,\n accountSelection = false,\n }: InitSessionOptions): Promise<SpectacularRequisition> {\n // Create agreement\n const agreement = await this.agreement.createAgreement({\n maxHistoricalDays: maxHistoricalDays,\n institutionId: institutionId,\n });\n\n // Create new requisition\n const requisition = await this.requisition.createRequisition({\n redirectUrl: redirectUrl,\n institutionId: institutionId,\n reference: referenceId,\n agreement,\n userLanguage: userLanguage,\n redirectImmediate: redirectImmediate,\n accountSelection: accountSelection,\n ssn: ssn,\n });\n\n return requisition;\n }\n}\n","export enum AccountStatusEnum {\n DISCOVERED = \"DISCOVERED\",\n PROCESSING = \"PROCESSING\",\n READY = \"READY\",\n ERROR = \"ERROR\",\n SUSPENDED = \"SUSPENDED\",\n}\n\nexport enum AddressCountryEnum {\n AT = \"AT\",\n BE = \"BE\",\n BG = \"BG\",\n HR = \"HR\",\n CY = \"CY\",\n CZ = \"CZ\",\n DK = \"DK\",\n EE = \"EE\",\n FI = \"FI\",\n FR = \"FR\",\n DE = \"DE\",\n GR = \"GR\",\n HU = \"HU\",\n IS = \"IS\",\n IE = \"IE\",\n IT = \"IT\",\n LV = \"LV\",\n LI = \"LI\",\n LT = \"LT\",\n LU = \"LU\",\n MT = \"MT\",\n NL = \"NL\",\n NO = \"NO\",\n PL = \"PL\",\n PT = \"PT\",\n RO = \"RO\",\n SK = \"SK\",\n SI = \"SI\",\n ES = \"ES\",\n SE = \"SE\",\n GB = \"GB\",\n US = \"US\",\n}\n\nexport enum CountryEnum {\n AT = \"AT\",\n BE = \"BE\",\n BG = \"BG\",\n HR = \"HR\",\n CY = \"CY\",\n CZ = \"CZ\",\n DK = \"DK\",\n EE = \"EE\",\n FI = \"FI\",\n FR = \"FR\",\n DE = \"DE\",\n GR = \"GR\",\n HU = \"HU\",\n IS = \"IS\",\n IE = \"IE\",\n IT = \"IT\",\n LV = \"LV\",\n LI = \"LI\",\n LT = \"LT\",\n LU = \"LU\",\n MT = \"MT\",\n NL = \"NL\",\n NO = \"NO\",\n PL = \"PL\",\n PT = \"PT\",\n RO = \"RO\",\n SK = \"SK\",\n SI = \"SI\",\n ES = \"ES\",\n SE = \"SE\",\n GB = \"GB\",\n US = \"US\",\n}\n\nexport enum ExecutionRuleEnum {\n Following = \"following\",\n Preceding = \"preceding\",\n}\n\nexport enum FrequencyEnum {\n Daily = \"Daily\",\n Weekly = \"Weekly\",\n EveryTwoWeeks = \"EveryTwoWeeks\",\n Monthly = \"Monthly\",\n EveryTwoMonths = \"EveryTwoMonths\",\n Quarterly = \"Quarterly\",\n SemiAnnual = \"SemiAnnual\",\n Annual = \"Annual\",\n MonthlyVariable = \"MonthlyVariable\",\n}\n\nexport enum PaymentProductEnum {\n T2P = \"T2P\",\n SCT = \"SCT\",\n ISCT = \"ISCT\",\n CBCT = \"CBCT\",\n BACS = \"BACS\",\n CHAPS = \"CHAPS\",\n FPS = \"FPS\",\n SWIFT = \"SWIFT\",\n BT = \"BT\",\n MT = \"MT\",\n DCT = \"DCT\",\n IDCT = \"IDCT\",\n}\n\n/**\n * * `INIT` - Initiated. Payment has been initiated.\n * * `ERRE` - ExecutionError. We experienced error on payment execution.\n * * `ERRS` - StatusError. We experienced error retrieving payment status. Try again.\n * * `ACCC` - AcceptedSettlementCompleted. Settlement on the creditor's account has been completed\n * * `ACCP` - AcceptedCustomerProfile. Preceding check of technical validation was successful. Customer profile check was successful\n * * `ACSC` - AcceptedSettlementCompleted. Settlement on the debtor’s account has been completed\n * * `ACSP` - AcceptedSettlementInProcess. All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution\n * * `ACTC` - AcceptedTechnicalValidation. Authentication and syntactical and semantical validation are successful\n * * `ACWC` - AcceptedWithChange. Instruction is accepted but a change will be made, such as date or remittance not sent\n * * `ACWP` - AcceptedWithoutPosting. Payment instruction included in the credit transfer is accepted without being posted to the creditor customer’s account\n * * `RCVD` - Received. Payment initiation has been received by the receiving agent\n * * `PDNG` - Pending. Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed\n * * `RJCT` - Rejected. Payment initiation or individual transaction included in the payment initiation has been rejected.\n * * `CANC` - Cancelled. Payment initiation has been cancelled before execution\n * * `ACFC` - AcceptedFundsChecked. Pre-ceeding check of technical validation and customer profile was successful and an automatic funds check was positive\n * * `PATC` - PartiallyAcceptedTechnicalCorrect. The payment initiation needs multiple authentications, where some but not yet all have been performed\n * * `PART` - PartiallyAccepted. A number of transactions have been accepted, whereas another number of transactions have not yet achieved 'accepted' status\n */\nexport enum PaymentStatusEnum {\n INIT = \"INIT\",\n ERRE = \"ERRE\",\n ERRS = \"ERRS\",\n ACCC = \"ACCC\",\n ACCP = \"ACCP\",\n ACSC = \"ACSC\",\n ACSP = \"ACSP\",\n ACTC = \"ACTC\",\n ACWC = \"ACWC\",\n ACWP = \"ACWP\",\n RCVD = \"RCVD\",\n PDNG = \"PDNG\",\n RJCT = \"RJCT\",\n CANC = \"CANC\",\n ACFC = \"ACFC\",\n PATC = \"PATC\",\n PART = \"PART\",\n}\n\nexport enum PaymentTypeEnum {\n SinglePayment = \"single-payment\",\n BulkPayment = \"bulk-payment\",\n PeriodicPayment = \"periodic-payment\",\n}\n\nexport enum Status1C5Enum {\n CR = \"CR\",\n ID = \"ID\",\n LN = \"LN\",\n RJ = \"RJ\",\n ER = \"ER\",\n SU = \"SU\",\n EX = \"EX\",\n GC = \"GC\",\n UA = \"UA\",\n GA = \"GA\",\n SA = \"SA\",\n}\n\nexport enum TypeEnum {\n IBAN = \"IBAN\",\n SCAN = \"SCAN\",\n BBAN = \"BBAN\",\n}\n","import { CountryEnum } from \"./types/enums.js\";\nimport type { Country } from \"./types/client.js\";\n\nexport const countries: Country[] = [\n {\n id: CountryEnum.AT,\n name: \"Austria\",\n },\n {\n id: CountryEnum.BE,\n name: \"Belgium\",\n },\n {\n id: CountryEnum.BG,\n name: \"Bulgaria\",\n },\n {\n id: CountryEnum.HR,\n name: \"Croatia\",\n },\n {\n id: CountryEnum.CY,\n name: \"Cyprus\",\n },\n {\n id: CountryEnum.CZ,\n name: \"Czechia\",\n },\n {\n id: CountryEnum.DK,\n name: \"Denmark\",\n },\n {\n id: CountryEnum.EE,\n name: \"Estonia\",\n },\n {\n id: CountryEnum.FI,\n name: \"Finland\",\n },\n {\n id: CountryEnum.FR,\n name: \"France\",\n },\n {\n id: CountryEnum.DE,\n name: \"Germany\",\n },\n {\n id: CountryEnum.GR,\n name: \"Greece\",\n },\n {\n id: CountryEnum.HU,\n name: \"Hungary\",\n },\n {\n id: CountryEnum.IS,\n name: \"Iceland\",\n },\n {\n id: CountryEnum.IE,\n name: \"Ireland\",\n },\n {\n id: CountryEnum.IT,\n name: \"Italy\",\n },\n {\n id: CountryEnum.LV,\n name: \"Latvia\",\n },\n {\n id: CountryEnum.LI,\n name: \"Liechtenstein\",\n },\n {\n id: CountryEnum.LT,\n name: \"Lithuania\",\n },\n {\n id: CountryEnum.LU,\n name: \"Luxembourg\",\n },\n {\n id: CountryEnum.MT,\n name: \"Malta\",\n },\n {\n id: CountryEnum.NL,\n name: \"Netherlands\",\n },\n {\n id: CountryEnum.NO,\n name: \"Norway\",\n },\n {\n id: CountryEnum.PL,\n name: \"Poland\",\n },\n {\n id: CountryEnum.PT,\n name: \"Portugal\",\n },\n {\n id: CountryEnum.RO,\n name: \"Romania\",\n },\n {\n id: CountryEnum.SK,\n name: \"Slovakia\",\n },\n {\n id: CountryEnum.SI,\n name: \"Slovenia\",\n },\n {\n id: CountryEnum.ES,\n name: \"Spain\",\n },\n {\n id: CountryEnum.SE,\n name: \"Sweden\",\n },\n {\n id: CountryEnum.GB,\n name: \"United Kingdom\",\n },\n];\n"],"names":["HttpMethod","filterObject","obj","acc","key","InstitutionApi","client","__publicField","country","id","AgreementApi","institutionId","maxHistoricalDays","accessValidForDays","accessScope","payload","limit","offset","params","agreementId","ip","userAgent","RequisitionsApi","redirectUrl","agreement","userLanguage","redirectImmediate","accountSelection","reference","ssn","requisitionId","AccountApi","accountId","path","parameters","url","dateFrom","dateTo","NordigenClient","secretId","secretKey","baseUrl","token","endpoint","method","validParams","axios","response","refreshToken","referenceId","AccountStatusEnum","AddressCountryEnum","CountryEnum","ExecutionRuleEnum","FrequencyEnum","PaymentProductEnum","PaymentStatusEnum","PaymentTypeEnum","Status1C5Enum","TypeEnum","countries"],"mappings":"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,KACLA,EAAA,GAAK,KACLA,EAAA,GAAK,KACLA,EAAA,GAAK,KACLA,EAAA,GAAK,KACLA,EAAA,GAAK,KACLA,EAAA,GAAK,KAXKA,IAAAA,GAAA,CAAA,CAAA,EAcAC,GAAAA,IACVA,EAAA,KAAO,OACPA,EAAA,KAAO,OACPA,EAAA,KAAO,OAHGA,IAAAA,GAAA,CAAA,CAAA,ECtKL,MAAMC,EAAuB,CAClC,CACE,GAAIR,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,UACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,OACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,eACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,WACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,YACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,OACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,aACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,UACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,SACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,UACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,UACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,OACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,QACR,EACA,CACE,GAAIA,EAAY,GAChB,KAAM,gBACR,CACF"}