@mft/moneyhub-api-client 4.20.0 → 5.0.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/dist/src/exchange-code-for-token.d.ts +9 -0
  2. package/dist/src/exchange-code-for-token.d.ts.map +1 -0
  3. package/dist/src/exchange-code-for-token.js +91 -0
  4. package/dist/src/exchange-code-for-token.js.map +1 -0
  5. package/dist/src/get-auth-urls.d.ts +130 -0
  6. package/dist/src/get-auth-urls.d.ts.map +1 -0
  7. package/dist/src/get-auth-urls.js +397 -0
  8. package/dist/src/get-auth-urls.js.map +1 -0
  9. package/dist/src/index.d.ts +25 -0
  10. package/dist/src/index.d.ts.map +1 -0
  11. package/dist/src/index.js +70 -0
  12. package/dist/src/index.js.map +1 -0
  13. package/dist/src/request.d.ts +8 -0
  14. package/dist/src/request.d.ts.map +1 -0
  15. package/dist/src/request.js +52 -0
  16. package/dist/src/request.js.map +1 -0
  17. package/dist/src/requests/accounts.d.ts +5 -0
  18. package/dist/src/requests/accounts.d.ts.map +1 -0
  19. package/dist/src/requests/accounts.js +99 -0
  20. package/dist/src/requests/accounts.js.map +1 -0
  21. package/dist/src/requests/auth-requests.d.ts +5 -0
  22. package/dist/src/requests/auth-requests.d.ts.map +1 -0
  23. package/dist/src/requests/auth-requests.js +52 -0
  24. package/dist/src/requests/auth-requests.js.map +1 -0
  25. package/dist/src/requests/beneficiaries.d.ts +5 -0
  26. package/dist/src/requests/beneficiaries.d.ts.map +1 -0
  27. package/dist/src/requests/beneficiaries.js +27 -0
  28. package/dist/src/requests/beneficiaries.js.map +1 -0
  29. package/dist/src/requests/categories.d.ts +5 -0
  30. package/dist/src/requests/categories.d.ts.map +1 -0
  31. package/dist/src/requests/categories.js +46 -0
  32. package/dist/src/requests/categories.js.map +1 -0
  33. package/dist/src/requests/index.d.ts +5 -0
  34. package/dist/src/requests/index.d.ts.map +1 -0
  35. package/dist/src/requests/index.js +52 -0
  36. package/dist/src/requests/index.js.map +1 -0
  37. package/dist/src/requests/payees.d.ts +5 -0
  38. package/dist/src/requests/payees.d.ts.map +1 -0
  39. package/dist/src/requests/payees.js +26 -0
  40. package/dist/src/requests/payees.js.map +1 -0
  41. package/dist/src/requests/payments.d.ts +5 -0
  42. package/dist/src/requests/payments.d.ts.map +1 -0
  43. package/dist/src/requests/payments.js +30 -0
  44. package/dist/src/requests/payments.js.map +1 -0
  45. package/dist/src/requests/projects.d.ts +5 -0
  46. package/dist/src/requests/projects.d.ts.map +1 -0
  47. package/dist/src/requests/projects.js +45 -0
  48. package/dist/src/requests/projects.js.map +1 -0
  49. package/dist/src/requests/recurring-payments.d.ts +5 -0
  50. package/dist/src/requests/recurring-payments.d.ts.map +1 -0
  51. package/dist/src/requests/recurring-payments.js +32 -0
  52. package/dist/src/requests/recurring-payments.js.map +1 -0
  53. package/dist/src/requests/regular-transactions.d.ts +5 -0
  54. package/dist/src/requests/regular-transactions.d.ts.map +1 -0
  55. package/dist/src/requests/regular-transactions.js +15 -0
  56. package/dist/src/requests/regular-transactions.js.map +1 -0
  57. package/dist/src/requests/rental-records.d.ts +5 -0
  58. package/dist/src/requests/rental-records.d.ts.map +1 -0
  59. package/dist/src/requests/rental-records.js +33 -0
  60. package/dist/src/requests/rental-records.js.map +1 -0
  61. package/dist/src/requests/savings-goals.d.ts +5 -0
  62. package/dist/src/requests/savings-goals.d.ts.map +1 -0
  63. package/dist/src/requests/savings-goals.js +46 -0
  64. package/dist/src/requests/savings-goals.js.map +1 -0
  65. package/dist/src/requests/spending-analysis.d.ts +5 -0
  66. package/dist/src/requests/spending-analysis.d.ts.map +1 -0
  67. package/dist/src/requests/spending-analysis.js +18 -0
  68. package/dist/src/requests/spending-analysis.js.map +1 -0
  69. package/dist/src/requests/spending-goals.d.ts +5 -0
  70. package/dist/src/requests/spending-goals.d.ts.map +1 -0
  71. package/dist/src/requests/spending-goals.js +46 -0
  72. package/dist/src/requests/spending-goals.js.map +1 -0
  73. package/dist/src/requests/standing-orders.d.ts +5 -0
  74. package/dist/src/requests/standing-orders.d.ts.map +1 -0
  75. package/dist/src/requests/standing-orders.js +20 -0
  76. package/dist/src/requests/standing-orders.js.map +1 -0
  77. package/dist/src/requests/sync.d.ts +5 -0
  78. package/dist/src/requests/sync.d.ts.map +1 -0
  79. package/dist/src/requests/sync.js +41 -0
  80. package/dist/src/requests/sync.js.map +1 -0
  81. package/dist/src/requests/tax.d.ts +5 -0
  82. package/dist/src/requests/tax.d.ts.map +1 -0
  83. package/dist/src/requests/tax.js +39 -0
  84. package/dist/src/requests/tax.js.map +1 -0
  85. package/dist/src/requests/transaction-files.d.ts +5 -0
  86. package/dist/src/requests/transaction-files.d.ts.map +1 -0
  87. package/dist/src/requests/transaction-files.js +44 -0
  88. package/dist/src/requests/transaction-files.js.map +1 -0
  89. package/dist/src/requests/transaction-splits.d.ts +5 -0
  90. package/dist/src/requests/transaction-splits.d.ts.map +1 -0
  91. package/dist/src/requests/transaction-splits.js +38 -0
  92. package/dist/src/requests/transaction-splits.js.map +1 -0
  93. package/dist/src/requests/transactions.d.ts +5 -0
  94. package/dist/src/requests/transactions.d.ts.map +1 -0
  95. package/dist/src/requests/transactions.js +54 -0
  96. package/dist/src/requests/transactions.js.map +1 -0
  97. package/dist/src/requests/unauthenticated.d.ts +5 -0
  98. package/dist/src/requests/unauthenticated.d.ts.map +1 -0
  99. package/dist/src/requests/unauthenticated.js +16 -0
  100. package/dist/src/requests/unauthenticated.js.map +1 -0
  101. package/dist/src/requests/users-and-connections.d.ts +5 -0
  102. package/dist/src/requests/users-and-connections.d.ts.map +1 -0
  103. package/dist/src/requests/users-and-connections.js +72 -0
  104. package/dist/src/requests/users-and-connections.js.map +1 -0
  105. package/dist/src/tokens.d.ts +24 -0
  106. package/dist/src/tokens.d.ts.map +1 -0
  107. package/dist/src/tokens.js +64 -0
  108. package/dist/src/tokens.js.map +1 -0
  109. package/dist/types/config.d.ts +23 -0
  110. package/dist/types/config.d.ts.map +1 -0
  111. package/dist/types/config.js +3 -0
  112. package/dist/types/config.js.map +1 -0
  113. package/dist/types/get-auth-urls.d.ts +118 -0
  114. package/dist/types/get-auth-urls.d.ts.map +1 -0
  115. package/dist/types/get-auth-urls.js +3 -0
  116. package/dist/types/get-auth-urls.js.map +1 -0
  117. package/dist/types/index.d.ts +30 -0
  118. package/dist/types/index.d.ts.map +1 -0
  119. package/dist/types/index.js +3 -0
  120. package/dist/types/index.js.map +1 -0
  121. package/dist/types/request.d.ts +39 -0
  122. package/dist/types/request.d.ts.map +1 -0
  123. package/dist/types/request.js +3 -0
  124. package/dist/types/request.js.map +1 -0
  125. package/dist/types/requests/accounts.d.ts +68 -0
  126. package/dist/types/requests/accounts.d.ts.map +1 -0
  127. package/dist/types/requests/accounts.js +3 -0
  128. package/dist/types/requests/accounts.js.map +1 -0
  129. package/dist/types/requests/auth-requests.d.ts +42 -0
  130. package/dist/types/requests/auth-requests.d.ts.map +1 -0
  131. package/dist/types/requests/auth-requests.js +9 -0
  132. package/dist/types/requests/auth-requests.js.map +1 -0
  133. package/dist/types/requests/beneficiaries.d.ts +21 -0
  134. package/dist/types/requests/beneficiaries.d.ts.map +1 -0
  135. package/dist/types/requests/beneficiaries.js +3 -0
  136. package/dist/types/requests/beneficiaries.js.map +1 -0
  137. package/dist/types/requests/categories.d.ts +28 -0
  138. package/dist/types/requests/categories.d.ts.map +1 -0
  139. package/dist/types/requests/categories.js +3 -0
  140. package/dist/types/requests/categories.js.map +1 -0
  141. package/dist/types/requests/payees.d.ts +16 -0
  142. package/dist/types/requests/payees.d.ts.map +1 -0
  143. package/dist/types/requests/payees.js +3 -0
  144. package/dist/types/requests/payees.js.map +1 -0
  145. package/dist/types/requests/payments.d.ts +12 -0
  146. package/dist/types/requests/payments.d.ts.map +1 -0
  147. package/dist/types/requests/payments.js +3 -0
  148. package/dist/types/requests/payments.js.map +1 -0
  149. package/dist/types/requests/projects.d.ts +26 -0
  150. package/dist/types/requests/projects.d.ts.map +1 -0
  151. package/dist/types/requests/projects.js +3 -0
  152. package/dist/types/requests/projects.js.map +1 -0
  153. package/dist/types/requests/recurring-payments.d.ts +16 -0
  154. package/dist/types/requests/recurring-payments.d.ts.map +1 -0
  155. package/dist/types/requests/recurring-payments.js +3 -0
  156. package/dist/types/requests/recurring-payments.js.map +1 -0
  157. package/dist/types/requests/regular-transactions.d.ts +9 -0
  158. package/dist/types/requests/regular-transactions.d.ts.map +1 -0
  159. package/dist/types/requests/regular-transactions.js +3 -0
  160. package/dist/types/requests/regular-transactions.js.map +1 -0
  161. package/dist/types/requests/rental-records.d.ts +16 -0
  162. package/dist/types/requests/rental-records.d.ts.map +1 -0
  163. package/dist/types/requests/rental-records.js +3 -0
  164. package/dist/types/requests/rental-records.js.map +1 -0
  165. package/dist/types/requests/savings-goals.d.ts +40 -0
  166. package/dist/types/requests/savings-goals.d.ts.map +1 -0
  167. package/dist/types/requests/savings-goals.js +3 -0
  168. package/dist/types/requests/savings-goals.js.map +1 -0
  169. package/dist/types/requests/spending-analysis.d.ts +18 -0
  170. package/dist/types/requests/spending-analysis.d.ts.map +1 -0
  171. package/dist/types/requests/spending-analysis.js +3 -0
  172. package/dist/types/requests/spending-analysis.js.map +1 -0
  173. package/dist/types/requests/spending-goals.d.ts +35 -0
  174. package/dist/types/requests/spending-goals.d.ts.map +1 -0
  175. package/dist/types/requests/spending-goals.js +8 -0
  176. package/dist/types/requests/spending-goals.js.map +1 -0
  177. package/dist/types/requests/standing-orders.d.ts +9 -0
  178. package/dist/types/requests/standing-orders.d.ts.map +1 -0
  179. package/dist/types/requests/standing-orders.js +3 -0
  180. package/dist/types/requests/standing-orders.js.map +1 -0
  181. package/dist/types/requests/sync.d.ts +18 -0
  182. package/dist/types/requests/sync.d.ts.map +1 -0
  183. package/dist/types/requests/sync.js +8 -0
  184. package/dist/types/requests/sync.js.map +1 -0
  185. package/dist/types/requests/tax.d.ts +9 -0
  186. package/dist/types/requests/tax.d.ts.map +1 -0
  187. package/dist/types/requests/tax.js +3 -0
  188. package/dist/types/requests/tax.js.map +1 -0
  189. package/dist/types/requests/transaction-files.d.ts +25 -0
  190. package/dist/types/requests/transaction-files.d.ts.map +1 -0
  191. package/dist/types/requests/transaction-files.js +3 -0
  192. package/dist/types/requests/transaction-files.js.map +1 -0
  193. package/dist/types/requests/transaction-splits.d.ts +24 -0
  194. package/dist/types/requests/transaction-splits.d.ts.map +1 -0
  195. package/dist/types/requests/transaction-splits.js +3 -0
  196. package/dist/types/requests/transaction-splits.js.map +1 -0
  197. package/dist/types/requests/transactions.d.ts +35 -0
  198. package/dist/types/requests/transactions.d.ts.map +1 -0
  199. package/dist/types/requests/transactions.js +3 -0
  200. package/dist/types/requests/transactions.js.map +1 -0
  201. package/dist/types/requests/unauthenticated.d.ts +12 -0
  202. package/dist/types/requests/unauthenticated.d.ts.map +1 -0
  203. package/dist/types/requests/unauthenticated.js +3 -0
  204. package/dist/types/requests/unauthenticated.js.map +1 -0
  205. package/dist/types/requests/users-and-connections.d.ts +39 -0
  206. package/dist/types/requests/users-and-connections.d.ts.map +1 -0
  207. package/dist/types/requests/users-and-connections.js +3 -0
  208. package/dist/types/requests/users-and-connections.js.map +1 -0
  209. package/dist/types/schema/account.d.ts +102 -0
  210. package/dist/types/schema/account.d.ts.map +1 -0
  211. package/dist/types/schema/account.js +35 -0
  212. package/dist/types/schema/account.js.map +1 -0
  213. package/dist/types/schema/auth-request.d.ts +31 -0
  214. package/dist/types/schema/auth-request.d.ts.map +1 -0
  215. package/dist/types/schema/auth-request.js +10 -0
  216. package/dist/types/schema/auth-request.js.map +1 -0
  217. package/dist/types/schema/balance.d.ts +11 -0
  218. package/dist/types/schema/balance.d.ts.map +1 -0
  219. package/dist/types/schema/balance.js +3 -0
  220. package/dist/types/schema/balance.js.map +1 -0
  221. package/dist/types/schema/beneficiary.d.ts +19 -0
  222. package/dist/types/schema/beneficiary.d.ts.map +1 -0
  223. package/dist/types/schema/beneficiary.js +3 -0
  224. package/dist/types/schema/beneficiary.js.map +1 -0
  225. package/dist/types/schema/category.d.ts +15 -0
  226. package/dist/types/schema/category.d.ts.map +1 -0
  227. package/dist/types/schema/category.js +3 -0
  228. package/dist/types/schema/category.js.map +1 -0
  229. package/dist/types/schema/connection.d.ts +39 -0
  230. package/dist/types/schema/connection.d.ts.map +1 -0
  231. package/dist/types/schema/connection.js +3 -0
  232. package/dist/types/schema/connection.js.map +1 -0
  233. package/dist/types/schema/counterparty.d.ts +33 -0
  234. package/dist/types/schema/counterparty.d.ts.map +1 -0
  235. package/dist/types/schema/counterparty.js +8 -0
  236. package/dist/types/schema/counterparty.js.map +1 -0
  237. package/dist/types/schema/holding.d.ts +55 -0
  238. package/dist/types/schema/holding.d.ts.map +1 -0
  239. package/dist/types/schema/holding.js +9 -0
  240. package/dist/types/schema/holding.js.map +1 -0
  241. package/dist/types/schema/payee.d.ts +13 -0
  242. package/dist/types/schema/payee.d.ts.map +1 -0
  243. package/dist/types/schema/payee.js +3 -0
  244. package/dist/types/schema/payee.js.map +1 -0
  245. package/dist/types/schema/payment.d.ts +156 -0
  246. package/dist/types/schema/payment.d.ts.map +1 -0
  247. package/dist/types/schema/payment.js +68 -0
  248. package/dist/types/schema/payment.js.map +1 -0
  249. package/dist/types/schema/project.d.ts +25 -0
  250. package/dist/types/schema/project.d.ts.map +1 -0
  251. package/dist/types/schema/project.js +9 -0
  252. package/dist/types/schema/project.js.map +1 -0
  253. package/dist/types/schema/regular-transaction.d.ts +40 -0
  254. package/dist/types/schema/regular-transaction.d.ts.map +1 -0
  255. package/dist/types/schema/regular-transaction.js +16 -0
  256. package/dist/types/schema/regular-transaction.js.map +1 -0
  257. package/dist/types/schema/rental-record.d.ts +44 -0
  258. package/dist/types/schema/rental-record.d.ts.map +1 -0
  259. package/dist/types/schema/rental-record.js +9 -0
  260. package/dist/types/schema/rental-record.js.map +1 -0
  261. package/dist/types/schema/savings-goal.d.ts +15 -0
  262. package/dist/types/schema/savings-goal.d.ts.map +1 -0
  263. package/dist/types/schema/savings-goal.js +3 -0
  264. package/dist/types/schema/savings-goal.js.map +1 -0
  265. package/dist/types/schema/spending-analysis.d.ts +14 -0
  266. package/dist/types/schema/spending-analysis.d.ts.map +1 -0
  267. package/dist/types/schema/spending-analysis.js +3 -0
  268. package/dist/types/schema/spending-analysis.js.map +1 -0
  269. package/dist/types/schema/spending-goal.d.ts +20 -0
  270. package/dist/types/schema/spending-goal.d.ts.map +1 -0
  271. package/dist/types/schema/spending-goal.js +8 -0
  272. package/dist/types/schema/spending-goal.js.map +1 -0
  273. package/dist/types/schema/standing-order.d.ts +80 -0
  274. package/dist/types/schema/standing-order.d.ts.map +1 -0
  275. package/dist/types/schema/standing-order.js +24 -0
  276. package/dist/types/schema/standing-order.js.map +1 -0
  277. package/dist/types/schema/sync.d.ts +16 -0
  278. package/dist/types/schema/sync.d.ts.map +1 -0
  279. package/dist/types/schema/sync.js +3 -0
  280. package/dist/types/schema/sync.js.map +1 -0
  281. package/dist/types/schema/tax.d.ts +35 -0
  282. package/dist/types/schema/tax.d.ts.map +1 -0
  283. package/dist/types/schema/tax.js +3 -0
  284. package/dist/types/schema/tax.js.map +1 -0
  285. package/dist/types/schema/transaction.d.ts +127 -0
  286. package/dist/types/schema/transaction.d.ts.map +1 -0
  287. package/dist/types/schema/transaction.js +3 -0
  288. package/dist/types/schema/transaction.js.map +1 -0
  289. package/dist/types/schema/user.d.ts +15 -0
  290. package/dist/types/schema/user.d.ts.map +1 -0
  291. package/dist/types/schema/user.js +3 -0
  292. package/dist/types/schema/user.js.map +1 -0
  293. package/dist/types/tokens.d.ts +40 -0
  294. package/dist/types/tokens.d.ts.map +1 -0
  295. package/dist/types/tokens.js +3 -0
  296. package/dist/types/tokens.js.map +1 -0
  297. package/package.json +20 -6
  298. package/readme.md +39 -4
  299. package/.eslintrc +0 -9
  300. package/.github/workflows/main.yml +0 -24
  301. package/resources/sample.jpg +0 -0
  302. package/resources/scripts/pre-commit.sh +0 -43
  303. package/src/__tests__/accounts.js +0 -76
  304. package/src/__tests__/auth-requests.js +0 -33
  305. package/src/__tests__/auth-urls.js +0 -126
  306. package/src/__tests__/categories.js +0 -92
  307. package/src/__tests__/index.js +0 -166
  308. package/src/__tests__/payees.js +0 -39
  309. package/src/__tests__/payments.js +0 -34
  310. package/src/__tests__/projects.js +0 -56
  311. package/src/__tests__/regular-transactions.js +0 -20
  312. package/src/__tests__/rental-records.js +0 -90
  313. package/src/__tests__/savings-goals.js +0 -68
  314. package/src/__tests__/spending-goals.js +0 -52
  315. package/src/__tests__/sync.js +0 -29
  316. package/src/__tests__/tax.js +0 -29
  317. package/src/__tests__/token.js +0 -25
  318. package/src/__tests__/transaction-files.js +0 -55
  319. package/src/__tests__/transaction-splits.js +0 -95
  320. package/src/__tests__/transactions.js +0 -110
  321. package/src/__tests__/users.js +0 -39
  322. package/src/exchange-code-for-token.js +0 -115
  323. package/src/get-auth-urls.js +0 -559
  324. package/src/index.js +0 -85
  325. package/src/request.js +0 -58
  326. package/src/requests/accounts.js +0 -146
  327. package/src/requests/auth-requests.js +0 -61
  328. package/src/requests/beneficiaries.js +0 -31
  329. package/src/requests/categories.js +0 -55
  330. package/src/requests/payees.js +0 -29
  331. package/src/requests/payments.js +0 -35
  332. package/src/requests/projects.js +0 -51
  333. package/src/requests/recurring-payments.js +0 -37
  334. package/src/requests/regular-transactions.js +0 -17
  335. package/src/requests/rental-records.js +0 -41
  336. package/src/requests/savings-goals.js +0 -49
  337. package/src/requests/spending-analysis.js +0 -19
  338. package/src/requests/spending-goals.js +0 -49
  339. package/src/requests/standing-orders.js +0 -21
  340. package/src/requests/sync.js +0 -23
  341. package/src/requests/tax.js +0 -16
  342. package/src/requests/transaction-files.js +0 -54
  343. package/src/requests/transaction-splits.js +0 -57
  344. package/src/requests/transactions.js +0 -58
  345. package/src/requests/unauthenticated.js +0 -19
  346. package/src/requests/users-and-connections.js +0 -89
  347. package/src/tokens.js +0 -72
@@ -0,0 +1,16 @@
1
+ interface SyncAccount {
2
+ providerId: string;
3
+ accountId: string;
4
+ }
5
+ export interface ConnectionSync {
6
+ id: string;
7
+ connectionId: string;
8
+ action: "auto-update" | "client-update";
9
+ method: "ADD" | "UPDATE";
10
+ fetchStatus: "success" | "error" | "partial" | "mfa-required" | "credentials-error";
11
+ createdAt: string;
12
+ fetchedAt: string;
13
+ accounts: SyncAccount[];
14
+ }
15
+ export {};
16
+ //# sourceMappingURL=sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../types/schema/sync.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,aAAa,GAAG,eAAe,CAAA;IACvC,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAA;IACxB,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,cAAc,GAAG,mBAAmB,CAAA;IACnF,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAA;CACxB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../types/schema/sync.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import { SearchParams } from "../request";
2
+ import { Amount } from "./balance";
3
+ export interface TaxSearchParams extends SearchParams {
4
+ startDate: string;
5
+ endDate: string;
6
+ }
7
+ interface Details {
8
+ category: string;
9
+ amount: {
10
+ value: number;
11
+ currency: string;
12
+ };
13
+ }
14
+ interface TaxReturn {
15
+ sa105: {
16
+ income: {
17
+ total: Amount;
18
+ details: Details[];
19
+ };
20
+ expenditure: {
21
+ total: Amount;
22
+ details: Details[];
23
+ };
24
+ taxableIncome: {
25
+ total: Amount;
26
+ };
27
+ };
28
+ }
29
+ export interface Tax {
30
+ startDate: string;
31
+ endDate: string;
32
+ taxReturn: TaxReturn;
33
+ }
34
+ export {};
35
+ //# sourceMappingURL=tax.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tax.d.ts","sourceRoot":"","sources":["../../../types/schema/tax.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAA;AACvC,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAA;AAEhC,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,OAAO;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF;AAED,UAAU,SAAS;IACjB,KAAK,EAAE;QACL,MAAM,EAAE;YACN,KAAK,EAAE,MAAM,CAAA;YACb,OAAO,EAAE,OAAO,EAAE,CAAA;SACnB,CAAA;QACD,WAAW,EAAE;YACX,KAAK,EAAE,MAAM,CAAA;YACb,OAAO,EAAE,OAAO,EAAE,CAAA;SACnB,CAAA;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM,CAAA;SACd,CAAA;KACF,CAAA;CACF;AAED,MAAM,WAAW,GAAG;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,SAAS,CAAA;CACrB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tax.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tax.js","sourceRoot":"","sources":["../../../types/schema/tax.ts"],"names":[],"mappings":""}
@@ -0,0 +1,127 @@
1
+ import type { Balance } from "./balance";
2
+ export interface RecurringTransactionEstimate {
3
+ counterpartyId?: string;
4
+ amount?: Balance;
5
+ amountRange?: Balance;
6
+ monthlyAmount?: Balance;
7
+ predictionSource?: "moneyhub";
8
+ monthlyAverageOnly?: boolean;
9
+ dates?: string[];
10
+ }
11
+ import { SearchParams } from "../request";
12
+ import { Amount } from "./balance";
13
+ export interface TransactionFile {
14
+ id: string;
15
+ fileType: string;
16
+ fileName: string;
17
+ url: string;
18
+ }
19
+ export interface TransactionSplitPost {
20
+ amount: number;
21
+ categoryId: string;
22
+ description: string;
23
+ projectId?: string;
24
+ }
25
+ export interface TransactionSplit {
26
+ amount: Amount;
27
+ categoryId: string;
28
+ description: string;
29
+ id: string;
30
+ projectId?: string;
31
+ }
32
+ export interface TransactionSplitPatch {
33
+ categoryId?: string;
34
+ description?: string;
35
+ projectId?: string;
36
+ }
37
+ export interface TransactionSearchParams extends SearchParams {
38
+ ids?: string[];
39
+ startDate?: string;
40
+ endDate?: string;
41
+ startDateModified?: string;
42
+ endDateModified?: string;
43
+ text?: string;
44
+ categoryId?: string;
45
+ accountId?: string;
46
+ accountIds?: string[];
47
+ projectId?: string;
48
+ projectIds?: string;
49
+ creditDebitIndicator?: string;
50
+ hasProject?: boolean;
51
+ contains?: string;
52
+ hasEnhancedCategory?: string;
53
+ counterpartyIdsV2?: string[];
54
+ counterpartiesVersion?: "v2" | "v3";
55
+ enhancedCategories?: string;
56
+ }
57
+ interface CardInstrument {
58
+ name?: string;
59
+ pan?: string;
60
+ cardSchemeName?: string;
61
+ authorisationType?: string;
62
+ }
63
+ interface CreditorDebtorAccount {
64
+ name?: string;
65
+ sortCode?: string;
66
+ accountNumber?: string;
67
+ iban?: string;
68
+ pan?: string;
69
+ }
70
+ interface CreditorDebtorAgent {
71
+ name?: string;
72
+ postalAddress?: object;
73
+ }
74
+ declare type Status = "posted" | "pending";
75
+ export interface Transaction {
76
+ accountId?: string;
77
+ amount: Amount;
78
+ categoryId: string;
79
+ categoryIdConfirmed: boolean;
80
+ date: string;
81
+ dateModified: string;
82
+ id: string;
83
+ longDescription: string;
84
+ providerId?: string;
85
+ notes: string;
86
+ shortDescription: string;
87
+ counterpartyId?: string;
88
+ status: Status;
89
+ projectId?: string;
90
+ enhancedCategories?: object;
91
+ splits?: TransactionSplit[];
92
+ transactionCode?: {
93
+ code: string;
94
+ subCode: string;
95
+ };
96
+ proprietaryTransactionCode: {
97
+ code: string;
98
+ issuer?: string;
99
+ };
100
+ balance?: Amount;
101
+ balanceType?: string;
102
+ statementReference?: string;
103
+ merchantCategoryCode?: string;
104
+ cardInstrument?: CardInstrument;
105
+ creditorAccount?: CreditorDebtorAccount;
106
+ debtorAccount?: CreditorDebtorAccount;
107
+ creditorAgent?: CreditorDebtorAgent;
108
+ debtorAgent?: CreditorDebtorAgent;
109
+ }
110
+ export interface TransactionPost {
111
+ accountId: string;
112
+ amount: {
113
+ value: number;
114
+ };
115
+ categoryId: string;
116
+ categoryIdConfirmed?: boolean;
117
+ date: string;
118
+ longDescription: string;
119
+ shortDescription?: string;
120
+ notes?: string;
121
+ status?: Status;
122
+ projectId?: string;
123
+ enhancedCategories: object;
124
+ }
125
+ export declare type TransactionPatch = Partial<TransactionPost>;
126
+ export {};
127
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../types/schema/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AAEtC,MAAM,WAAW,4BAA4B;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAA;AACvC,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAA;AAEhC,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC5B,qBAAqB,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,UAAU,qBAAqB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,UAAU,mBAAmB;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,aAAK,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAA;AAElC,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC3B,eAAe,CAAC,EAAE;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,0BAA0B,EAAE;QAC1B,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,eAAe,CAAC,EAAE,qBAAqB,CAAA;IACvC,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,WAAW,CAAC,EAAE,mBAAmB,CAAA;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,MAAM,CAAA;CAC3B;AAED,oBAAY,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../types/schema/transaction.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ export interface User {
2
+ userId: string;
3
+ clientUserId: string;
4
+ clientId: string;
5
+ createdAt: string;
6
+ updatedAt: string;
7
+ scopes: string;
8
+ managedBy: "user" | "client";
9
+ lastAccessed: string;
10
+ deletedAt?: string;
11
+ userType: "test" | "demo" | "live";
12
+ clientName?: string;
13
+ connectionIds: string[];
14
+ }
15
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../types/schema/user.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAA;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;IAClC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../../types/schema/user.ts"],"names":[],"mappings":""}
@@ -0,0 +1,40 @@
1
+ import { Client, TokenSet } from "openid-client";
2
+ import type { ApiClientConfig } from "./config";
3
+ export interface TokensRequestsParams {
4
+ client: Client;
5
+ config: ApiClientConfig;
6
+ }
7
+ declare type ParamsFromCallback = Partial<{
8
+ code: string;
9
+ id_token: string;
10
+ state: string;
11
+ }>;
12
+ declare type LocalParams = Partial<{
13
+ state: string;
14
+ nonce: string;
15
+ sub: string;
16
+ max_age: number;
17
+ response_type: string;
18
+ code_verifier: string;
19
+ }>;
20
+ export interface TokensRequests {
21
+ exchangeCodeForTokensLegacy: ({ state, code, nonce, id_token, }: {
22
+ state: string;
23
+ code: string;
24
+ nonce: string;
25
+ id_token: string;
26
+ }) => Promise<TokenSet>;
27
+ exchangeCodeForTokens: ({ paramsFromCallback, localParams, }: {
28
+ paramsFromCallback: ParamsFromCallback;
29
+ localParams: LocalParams;
30
+ }) => Promise<TokenSet>;
31
+ refreshTokens: ({ refreshToken, }: {
32
+ refreshToken: string;
33
+ }) => Promise<TokenSet>;
34
+ getClientCredentialTokens: ({ scope, sub, }: {
35
+ scope: string;
36
+ sub: string;
37
+ }) => Promise<TokenSet>;
38
+ }
39
+ export {};
40
+ //# sourceMappingURL=tokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../types/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,UAAU,CAAA;AAE7C,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,aAAK,kBAAkB,GAAG,OAAO,CAAC;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd,CAAC,CAAA;AAEF,aAAK,WAAW,GAAG,OAAO,CAAC;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAEF,MAAM,WAAW,cAAc;IAC7B,2BAA2B,EAAE,CAAC,EAC5B,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,GACT,EAAE;QACD,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;KACjB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEvB,qBAAqB,EAAE,CAAC,EACtB,kBAAkB,EAClB,WAAW,GACZ,EAAE;QACD,kBAAkB,EAAE,kBAAkB,CAAA;QACtC,WAAW,EAAE,WAAW,CAAA;KACzB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEvB,aAAa,EAAE,CAAC,EACd,YAAY,GACb,EAAE;QACD,YAAY,EAAE,MAAM,CAAA;KACrB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;IAEvB,yBAAyB,EAAE,CAAC,EAC1B,KAAK,EACL,GAAG,GACJ,EAAE;QACD,KAAK,EAAE,MAAM,CAAA;QACb,GAAG,EAAE,MAAM,CAAA;KACZ,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;CACxB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../types/tokens.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,13 +1,20 @@
1
1
  {
2
2
  "name": "@mft/moneyhub-api-client",
3
- "version": "4.20.0",
3
+ "version": "5.0.0-0",
4
4
  "description": "Node.JS client for the Moneyhub API",
5
- "main": "src/index.js",
5
+ "main": "dist/src/index.js",
6
+ "types": "dist/src/index.d.ts",
7
+ "files": [
8
+ "dist/*"
9
+ ],
6
10
  "scripts": {
7
11
  "lint": "eslint src/ examples/",
8
- "test": "mocha --config test/opts/integration.json",
9
- "test-ci": "mocha --config test/opts/integration-ci.json || true",
10
- "prepush": "npm run lint && npm run test"
12
+ "test": "mocha --require ts-node/register --config test/opts/integration.json",
13
+ "test-ci": "mocha --require ts-node/register --config test/opts/integration-ci.json || true",
14
+ "prepush": "npm run lint && npm run test",
15
+ "prepare": "npm run build",
16
+ "build": "tsc",
17
+ "ts-node": "ts-node"
11
18
  },
12
19
  "keywords": [
13
20
  "moneyhub",
@@ -29,6 +36,11 @@
29
36
  },
30
37
  "devDependencies": {
31
38
  "@mft/eslint-config-momentumft": "^4.0.0",
39
+ "@types/got": "^9.6.12",
40
+ "@types/openid-client": "^3.7.0",
41
+ "@types/ramda": "^0.28.13",
42
+ "@typescript-eslint/eslint-plugin": "^5.26.0",
43
+ "@typescript-eslint/parser": "^5.26.0",
32
44
  "body-parser": "^1.19.2",
33
45
  "chai": "^4.3.6",
34
46
  "command-line-args": "^5.2.1",
@@ -38,7 +50,9 @@
38
50
  "express": "^4.17.3",
39
51
  "husky": "^7.0.4",
40
52
  "mocha": "^9.2.2",
41
- "mocha-junit-reporter": "^2.0.2"
53
+ "mocha-junit-reporter": "^2.0.2",
54
+ "ts-node": "^10.8.0",
55
+ "typescript": "^4.7.2"
42
56
  },
43
57
  "husky": {
44
58
  "hooks": {
package/readme.md CHANGED
@@ -43,6 +43,18 @@ The breaking changes when upgrading are outlined below:
43
43
 
44
44
  For the full list of changes please refer to the [changelog](CHANGELOG.md)
45
45
 
46
+ ### Upgrading from 4.x
47
+
48
+ The major upgrade from version 4.x is that the library now caters for TypeScript. To allow for this, the factory method that creates the client instance is now a named export rather than a default export.
49
+
50
+ ```js
51
+ // v4.x
52
+ const Moneyhub = require("@mft/moneyhub-api-client")
53
+
54
+ // v5.x
55
+ const {Moneyhub} = require("@mft/moneyhub-api-client")
56
+ ```
57
+
46
58
  ### Changelog
47
59
 
48
60
  [Learn about the latest improvements and breaking changes](CHANGELOG.md).
@@ -64,7 +76,7 @@ To use this API client you will need:
64
76
  This module exposes a single factory function that accepts the following configuration:
65
77
 
66
78
  ```javascript
67
- const Moneyhub = require("@mft/moneyhub-api-client")
79
+ const {Moneyhub} = require("@mft/moneyhub-api-client")
68
80
  const moneyhub = await Moneyhub({
69
81
  resourceServerUrl: "https://api.moneyhub.co.uk/v2.0",
70
82
  identityServiceUrl: "https://identity.moneyhub.co.uk",
@@ -317,7 +329,7 @@ const tokens = await moneyhub.requestObject({
317
329
  Use this to create a request uri from a request object
318
330
 
319
331
  ```javascript
320
- const tokens = await moneyhub.getRequestUri(requestObject);
332
+ const requestUri = await moneyhub.getRequestUri(requestObject);
321
333
  ```
322
334
 
323
335
  #### `getAuthorizeUrlFromRequestUri`
@@ -325,7 +337,7 @@ const tokens = await moneyhub.getRequestUri(requestObject);
325
337
  Use this to retrieve an authorization url from a request uri
326
338
 
327
339
  ```javascript
328
- const tokens = await moneyhub.getAuthorizeUrlFromRequestUri({
340
+ const url = await moneyhub.getAuthorizeUrlFromRequestUri({
329
341
  requestUri: "request-uri",
330
342
  });
331
343
  ```
@@ -1754,6 +1766,14 @@ This method will resolve with a list of all the Test connections that a user can
1754
1766
  const availableConnections = await moneyhub.listTestConnections();
1755
1767
  ```
1756
1768
 
1769
+ #### `listBetaConnections`
1770
+
1771
+ This method will resolve with a list of all the Beta connections that a user can connect to.
1772
+
1773
+ ```javascript
1774
+ const availableConnections = await moneyhub.listBetaConnections();
1775
+ ```
1776
+
1757
1777
  ### OpenID Config
1758
1778
 
1759
1779
  #### `getOpenIdConfig`
@@ -1766,8 +1786,23 @@ const availableConnections = await moneyhub.getOpenIdConfig();
1766
1786
 
1767
1787
  ### Examples
1768
1788
 
1769
- We have a couple of examples under the `/examples` folder that can be helpful to start using our client.
1789
+ We have a couple of examples under the `/examples` folder that can be helpful to start using our client. To run them, you'll need to use `ts-node`. If you haven't got it globally installed, you can run examples by executing within the library `npm run ts-node -- <script path here> <options>`
1770
1790
 
1771
1791
  ### Running Tests
1772
1792
 
1773
1793
  Instructions on how to run the integration tests for the API client can be found [here](https://www.notion.so/moneyhub/Moneyhub-API-Client-Tests-Config-0bef6e3cb922425b88f0268c1a999917)
1794
+
1795
+ ## TypeScript
1796
+ If you wish to use the client library with TypeScript, we allow you to make use of the types that are returned from our methods. Below is an example usage to get started:
1797
+
1798
+ ```ts
1799
+ import {Moneyhub, ApiClientConfig} from "@mft/moneyhub-api-client"
1800
+ const config: ApiClientConfig = {} // your config goes here and is strongly typed
1801
+
1802
+ const getAccounts = ({userId}) => {
1803
+ const moneyhub = await Moneyhub(config)
1804
+ const accounts = await moneyhub.getAccounts({userId})
1805
+ }
1806
+ ```
1807
+
1808
+ The default export is of the Moneyhub constructor that takes in an argument of the config. You can use `ApiClientConfig` to type that config. The client object that is returned from the constructor can then be used to make API calls. The methods are available with arguments and returns typed.
package/.eslintrc DELETED
@@ -1,9 +0,0 @@
1
- ---
2
- {
3
- extends: "./node_modules/@mft/eslint-config-momentumft/index.js",
4
- rules: {
5
- "camelcase": "off",
6
- "comma-dangle": "off",
7
- }
8
-
9
- }
@@ -1,24 +0,0 @@
1
- name: npm audit
2
-
3
- on:
4
- pull_request:
5
- push:
6
- branches:
7
- schedule:
8
- - cron: '0 10 * * *'
9
-
10
- jobs:
11
- scan:
12
- name: npm audit
13
- runs-on: ubuntu-latest
14
- steps:
15
- - uses: actions/checkout@v2
16
- - name: install dependencies
17
- run: npm ci
18
- - uses: oke-py/npm-audit-action@v1.8.4
19
- with:
20
- audit_level: moderate
21
- github_token: ${{ secrets.GITHUB_TOKEN }}
22
- issue_assignees: oke-py
23
- issue_labels: vulnerability,test
24
- dedupe_issues: true
Binary file
@@ -1,43 +0,0 @@
1
- #!/bin/bash
2
-
3
- red='\033[0;31m'
4
- NC='\033[0m' # No Color
5
-
6
- function hasOnlys {
7
- onlys=$(git diff --cached -G "(describe|it)\.(only|skip)" | grep "^+[^+]" | grep -E "(describe|it)\.(only|skip)")
8
- if [ $(echo $onlys | wc -c) -gt 1 ]
9
- then
10
- echo ""
11
- echo -e "${red}WARNING!!"
12
- echo -e "-----------------------${NC}"
13
- echo "You have '.only/.skip' calls in your tests:"
14
- echo ""
15
- echo $onlys
16
- echo ""
17
- echo "No commit made. Please fix these errors then commit again."
18
- exit 1
19
- fi
20
- }
21
-
22
- function hasLogs {
23
- addedLogs=$(git diff -- src --cached -G "(console.log|debugger)" | grep "^+[^+]" | grep -E "(console.log|debugger)")
24
- if [ $(echo $addedLogs | wc -c) -gt 1 ]
25
- then
26
- echo ""
27
- echo -e "${red}WARNING!!"
28
- echo -e "-----------------------${NC}"
29
- echo "You have 'console.log' calls in your code:"
30
- echo ""
31
- echo $addedLogs
32
- echo ""
33
- echo "No commit made. Please fix these errors then commit again."
34
- exit 1
35
- fi
36
- }
37
-
38
- echo git precommit:checking for omitted unit tests...
39
- hasOnlys
40
- echo git precommit:checking for console.logs...
41
- hasLogs
42
-
43
- exit 0
@@ -1,76 +0,0 @@
1
- /* eslint-disable max-nested-callbacks */
2
- const Moneyhub = require("..")
3
- const config = require("../../test/test-client-config")
4
- const {expect} = require("chai")
5
-
6
- describe("Accounts", () => {
7
- let manualAccountId, moneyhub
8
- const {testUserId: userId, testAccountId: accountId, testPensionId: pensionId} = config
9
-
10
- before(async () => {
11
- moneyhub = await Moneyhub(config)
12
- })
13
-
14
- it("get accounts", async () => {
15
- const accounts = await moneyhub.getAccounts({userId})
16
- expect(accounts.data.length).to.be.at.least(11)
17
- const cashAccount = accounts.data.find(a => a.type === "cash:current")
18
- const pension = accounts.data.find(a => a.type === "pension")
19
-
20
- expect(cashAccount).to.not.be.undefined
21
- expect(pension).to.not.be.undefined
22
- })
23
-
24
- it("get account", async () => {
25
- const {data: account} = await moneyhub.getAccount({userId, accountId})
26
- expect(account.id).to.eql(accountId)
27
- })
28
-
29
- it("get counterparties", async () => {
30
- const {data: counterparties} = await moneyhub.getAccountCounterparties({
31
- userId,
32
- accountId
33
- })
34
- expect(counterparties.length).to.be.greaterThan(10)
35
- })
36
-
37
- it("get holdings", async () => {
38
- const {data: holdings} = await moneyhub.getAccountHoldings({
39
- userId,
40
- accountId: pensionId
41
- })
42
- expect(holdings[0].items.length).to.be.greaterThan(5)
43
- })
44
-
45
- xit("get recurring transactions", async () => {
46
- const {data: recurring} = await moneyhub.getAccountRecurringTransactions({
47
- userId,
48
- accountId
49
- })
50
- expect(recurring.length).to.be.greaterThan(10)
51
- })
52
-
53
- it("creates a manual account", async () => {
54
- const account = {
55
- "accountName": "Account name",
56
- "providerName": "Provider name",
57
- "type": "cash:current",
58
- "accountType": "personal",
59
- "balance": {
60
- "date": "2018-08-12",
61
- "amount": {
62
- "value": 300023
63
- }
64
- }
65
- }
66
-
67
- const {data: {id}} = await moneyhub.createAccount({userId, account})
68
- manualAccountId = id
69
- expect(id).to.not.be.undefined
70
- })
71
-
72
- it("deletes manual account", async () => {
73
- const status = await moneyhub.deleteAccount({userId, accountId: manualAccountId})
74
- expect(status).to.eql(204)
75
- })
76
- })
@@ -1,33 +0,0 @@
1
- /* eslint-disable max-nested-callbacks */
2
- const Moneyhub = require("..")
3
- const config = require("../../test/test-client-config")
4
- const {expect} = require("chai")
5
-
6
- describe("Auth requests", () => {
7
- let moneyhub
8
-
9
- before(async () => {
10
- moneyhub = await Moneyhub(config)
11
- })
12
-
13
- it("creates payment auth request", async () => {
14
- const {testPayeeId} = config
15
- const {data} = await moneyhub.createAuthRequest({
16
- scope: "openid payment id:1ffe704d39629a929c8e293880fb449a",
17
- payment: {
18
- payeeId: testPayeeId,
19
- amount: 15,
20
- payeeRef: "Payee ref",
21
- payerRef: "Payer ref",
22
- },
23
- redirectUri: config.client.redirect_uri,
24
- })
25
- expect(data).to.have.property("id")
26
- expect(data).to.have.property("status", "pending")
27
- expect(data).to.have.property("redirectParams")
28
- expect(data.redirectParams).to.have.property("authUrl")
29
- expect(data.redirectParams).to.have.property("returnUrl")
30
- expect(data.redirectParams).to.have.property("state")
31
-
32
- })
33
- })