@temboplus/afloat 0.1.81 → 0.2.0-beta.2

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 (413) hide show
  1. package/README.md +246 -42
  2. package/dist/index.cjs.js +2 -0
  3. package/dist/index.cjs.js.map +1 -0
  4. package/dist/index.d.ts +10 -0
  5. package/dist/index.esm.js +2 -0
  6. package/dist/index.esm.js.map +1 -0
  7. package/dist/lib/api/base-repository.d.ts +177 -0
  8. package/dist/lib/api/index.d.ts +1 -0
  9. package/{esm/src/errors/api_error.d.ts → dist/lib/error/error.api.d.ts} +0 -1
  10. package/{script/npm/src/src/errors/permission_error.d.ts → dist/lib/error/error.permission.d.ts} +1 -2
  11. package/dist/lib/error/error.utils.d.ts +22 -0
  12. package/dist/lib/error/index.d.ts +3 -0
  13. package/dist/lib/query/index.d.ts +4 -0
  14. package/dist/lib/query/pagination/pagination.d.ts +73 -0
  15. package/dist/lib/query/pagination/pagination.schemas.d.ts +83 -0
  16. package/dist/lib/query/query.builder.d.ts +75 -0
  17. package/dist/lib/query/query.types.d.ts +36 -0
  18. package/{esm/src/features/auth/contract.d.ts → dist/modules/auth/auth.contract.d.ts} +16 -19
  19. package/dist/modules/auth/auth.repository.d.ts +83 -0
  20. package/dist/modules/auth/company-membership.model.d.ts +171 -0
  21. package/dist/modules/auth/index.d.ts +3 -0
  22. package/dist/modules/auth/user.model.d.ts +363 -0
  23. package/dist/modules/beneficiary/beneficiary-info.model.d.ts +178 -0
  24. package/dist/modules/beneficiary/beneficiary-input-handler.d.ts +16 -0
  25. package/dist/modules/beneficiary/beneficiary.api-contract.d.ts +203 -0
  26. package/dist/modules/beneficiary/beneficiary.dtos.d.ts +84 -0
  27. package/dist/modules/beneficiary/beneficiary.model.d.ts +441 -0
  28. package/dist/modules/beneficiary/beneficiary.repository.d.ts +116 -0
  29. package/dist/modules/beneficiary/index.d.ts +6 -0
  30. package/dist/modules/login/index.d.ts +4 -0
  31. package/dist/modules/login/login.api-contract.d.ts +51 -0
  32. package/dist/modules/login/login.dtos.d.ts +85 -0
  33. package/dist/modules/login/login.model.d.ts +168 -0
  34. package/dist/modules/login/login.repository.d.ts +58 -0
  35. package/{esm/src/models/permission.d.ts → dist/modules/login/permission.type.d.ts} +9 -10
  36. package/dist/modules/payout/index.d.ts +5 -0
  37. package/dist/modules/payout/payout-channel-handler.d.ts +82 -0
  38. package/{esm/src/features/payout/contract.d.ts → dist/modules/payout/payout.api-contract.d.ts} +350 -207
  39. package/dist/modules/payout/payout.dtos.d.ts +607 -0
  40. package/dist/modules/payout/payout.model.d.ts +383 -0
  41. package/dist/modules/payout/payout.query.d.ts +134 -0
  42. package/dist/modules/payout/payout.repository.d.ts +204 -0
  43. package/dist/modules/profile/index.d.ts +3 -0
  44. package/{script/npm/src/src/features/auth/profile/contract.d.ts → dist/modules/profile/profile.api-contract.d.ts} +8 -6
  45. package/dist/modules/profile/profile.dtos.d.ts +80 -0
  46. package/{script/npm/src/src/models/user/profile.d.ts → dist/modules/profile/profile.model.d.ts} +81 -52
  47. package/dist/modules/profile/profile.repository.d.ts +56 -0
  48. package/dist/modules/team-member/index.d.ts +4 -0
  49. package/dist/modules/team-member/role.model.d.ts +61 -0
  50. package/{esm/src/features/admin/contract.d.ts → dist/modules/team-member/team-member.contract.d.ts} +229 -154
  51. package/dist/modules/team-member/team-member.dtos.d.ts +261 -0
  52. package/dist/modules/team-member/team-member.model.d.ts +237 -0
  53. package/dist/modules/team-member/team-member.repository.d.ts +179 -0
  54. package/dist/modules/wallet/index.d.ts +6 -0
  55. package/dist/modules/wallet/narration.model.d.ts +225 -0
  56. package/dist/modules/wallet/statement-entry.model.d.ts +299 -0
  57. package/{script/npm/src/src/features/wallet/contract.d.ts → dist/modules/wallet/wallet.contract.d.ts} +17 -15
  58. package/dist/modules/wallet/wallet.dtos.d.ts +204 -0
  59. package/{esm/src/models/wallet/wallet.d.ts → dist/modules/wallet/wallet.model.d.ts} +34 -40
  60. package/dist/modules/wallet/wallet.query.d.ts +95 -0
  61. package/dist/modules/wallet/wallet.repository.d.ts +205 -0
  62. package/dist/modules/wallet/wallet.utils.d.ts +17 -0
  63. package/package.json +49 -23
  64. package/LICENSE +0 -7
  65. package/esm/mod.d.ts +0 -8
  66. package/esm/mod.d.ts.map +0 -1
  67. package/esm/mod.js +0 -7
  68. package/esm/package.json +0 -3
  69. package/esm/src/errors/api_error.d.ts.map +0 -1
  70. package/esm/src/errors/api_error.js +0 -90
  71. package/esm/src/errors/index.d.ts +0 -3
  72. package/esm/src/errors/index.d.ts.map +0 -1
  73. package/esm/src/errors/index.js +0 -2
  74. package/esm/src/errors/permission_error.d.ts +0 -48
  75. package/esm/src/errors/permission_error.d.ts.map +0 -1
  76. package/esm/src/errors/permission_error.js +0 -70
  77. package/esm/src/features/admin/contract.d.ts.map +0 -1
  78. package/esm/src/features/admin/contract.js +0 -210
  79. package/esm/src/features/admin/index.d.ts +0 -4
  80. package/esm/src/features/admin/index.d.ts.map +0 -1
  81. package/esm/src/features/admin/index.js +0 -3
  82. package/esm/src/features/admin/repository.d.ts +0 -114
  83. package/esm/src/features/admin/repository.d.ts.map +0 -1
  84. package/esm/src/features/admin/repository.js +0 -248
  85. package/esm/src/features/admin/schemas.d.ts +0 -146
  86. package/esm/src/features/admin/schemas.d.ts.map +0 -1
  87. package/esm/src/features/admin/schemas.js +0 -206
  88. package/esm/src/features/auth/access/contract.d.ts +0 -14
  89. package/esm/src/features/auth/access/contract.d.ts.map +0 -1
  90. package/esm/src/features/auth/access/contract.js +0 -14
  91. package/esm/src/features/auth/access/repository.d.ts +0 -11
  92. package/esm/src/features/auth/access/repository.d.ts.map +0 -1
  93. package/esm/src/features/auth/access/repository.js +0 -25
  94. package/esm/src/features/auth/contract.d.ts.map +0 -1
  95. package/esm/src/features/auth/contract.js +0 -43
  96. package/esm/src/features/auth/identity/contract.d.ts +0 -23
  97. package/esm/src/features/auth/identity/contract.d.ts.map +0 -1
  98. package/esm/src/features/auth/identity/contract.js +0 -17
  99. package/esm/src/features/auth/identity/repository.d.ts +0 -22
  100. package/esm/src/features/auth/identity/repository.d.ts.map +0 -1
  101. package/esm/src/features/auth/identity/repository.js +0 -30
  102. package/esm/src/features/auth/index.d.ts +0 -6
  103. package/esm/src/features/auth/index.d.ts.map +0 -1
  104. package/esm/src/features/auth/index.js +0 -5
  105. package/esm/src/features/auth/manager.d.ts +0 -105
  106. package/esm/src/features/auth/manager.d.ts.map +0 -1
  107. package/esm/src/features/auth/manager.js +0 -181
  108. package/esm/src/features/auth/profile/contract.d.ts +0 -37
  109. package/esm/src/features/auth/profile/contract.d.ts.map +0 -1
  110. package/esm/src/features/auth/profile/contract.js +0 -14
  111. package/esm/src/features/auth/profile/repository.d.ts +0 -11
  112. package/esm/src/features/auth/profile/repository.d.ts.map +0 -1
  113. package/esm/src/features/auth/profile/repository.js +0 -25
  114. package/esm/src/features/auth/repository.d.ts +0 -30
  115. package/esm/src/features/auth/repository.d.ts.map +0 -1
  116. package/esm/src/features/auth/repository.js +0 -69
  117. package/esm/src/features/auth/storage/client_store.d.ts +0 -30
  118. package/esm/src/features/auth/storage/client_store.d.ts.map +0 -1
  119. package/esm/src/features/auth/storage/client_store.js +0 -46
  120. package/esm/src/features/auth/storage/client_token_handler.d.ts +0 -32
  121. package/esm/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  122. package/esm/src/features/auth/storage/client_token_handler.js +0 -36
  123. package/esm/src/features/auth/storage/server_store.d.ts +0 -24
  124. package/esm/src/features/auth/storage/server_store.d.ts.map +0 -1
  125. package/esm/src/features/auth/storage/server_store.js +0 -34
  126. package/esm/src/features/auth/storage/server_token_handler.d.ts +0 -36
  127. package/esm/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  128. package/esm/src/features/auth/storage/server_token_handler.js +0 -115
  129. package/esm/src/features/auth/storage/types.d.ts +0 -42
  130. package/esm/src/features/auth/storage/types.d.ts.map +0 -1
  131. package/esm/src/features/auth/storage/types.js +0 -1
  132. package/esm/src/features/contact/contract.d.ts +0 -170
  133. package/esm/src/features/contact/contract.d.ts.map +0 -1
  134. package/esm/src/features/contact/contract.js +0 -49
  135. package/esm/src/features/contact/index.d.ts +0 -2
  136. package/esm/src/features/contact/index.d.ts.map +0 -1
  137. package/esm/src/features/contact/index.js +0 -1
  138. package/esm/src/features/contact/repository.d.ts +0 -58
  139. package/esm/src/features/contact/repository.d.ts.map +0 -1
  140. package/esm/src/features/contact/repository.js +0 -108
  141. package/esm/src/features/payout/contract.d.ts.map +0 -1
  142. package/esm/src/features/payout/contract.js +0 -75
  143. package/esm/src/features/payout/index.d.ts +0 -2
  144. package/esm/src/features/payout/index.d.ts.map +0 -1
  145. package/esm/src/features/payout/index.js +0 -1
  146. package/esm/src/features/payout/repository.d.ts +0 -67
  147. package/esm/src/features/payout/repository.d.ts.map +0 -1
  148. package/esm/src/features/payout/repository.js +0 -179
  149. package/esm/src/features/wallet/contract.d.ts +0 -137
  150. package/esm/src/features/wallet/contract.d.ts.map +0 -1
  151. package/esm/src/features/wallet/contract.js +0 -38
  152. package/esm/src/features/wallet/index.d.ts +0 -2
  153. package/esm/src/features/wallet/index.d.ts.map +0 -1
  154. package/esm/src/features/wallet/index.js +0 -1
  155. package/esm/src/features/wallet/repository.d.ts +0 -57
  156. package/esm/src/features/wallet/repository.d.ts.map +0 -1
  157. package/esm/src/features/wallet/repository.js +0 -93
  158. package/esm/src/models/contact/derivatives/contact.d.ts +0 -172
  159. package/esm/src/models/contact/derivatives/contact.d.ts.map +0 -1
  160. package/esm/src/models/contact/derivatives/contact.js +0 -266
  161. package/esm/src/models/contact/derivatives/contact_info.d.ts +0 -188
  162. package/esm/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  163. package/esm/src/models/contact/derivatives/contact_info.js +0 -255
  164. package/esm/src/models/contact/index.d.ts +0 -5
  165. package/esm/src/models/contact/index.d.ts.map +0 -1
  166. package/esm/src/models/contact/index.js +0 -4
  167. package/esm/src/models/contact/schemas.d.ts +0 -66
  168. package/esm/src/models/contact/schemas.d.ts.map +0 -1
  169. package/esm/src/models/contact/schemas.js +0 -64
  170. package/esm/src/models/contact/validation.d.ts +0 -37
  171. package/esm/src/models/contact/validation.d.ts.map +0 -1
  172. package/esm/src/models/contact/validation.js +0 -146
  173. package/esm/src/models/index.d.ts +0 -7
  174. package/esm/src/models/index.d.ts.map +0 -1
  175. package/esm/src/models/index.js +0 -6
  176. package/esm/src/models/payout/api.d.ts +0 -29
  177. package/esm/src/models/payout/api.d.ts.map +0 -1
  178. package/esm/src/models/payout/api.js +0 -1
  179. package/esm/src/models/payout/channel.d.ts +0 -58
  180. package/esm/src/models/payout/channel.d.ts.map +0 -1
  181. package/esm/src/models/payout/channel.js +0 -53
  182. package/esm/src/models/payout/derivatives/payout.d.ts +0 -158
  183. package/esm/src/models/payout/derivatives/payout.d.ts.map +0 -1
  184. package/esm/src/models/payout/derivatives/payout.js +0 -271
  185. package/esm/src/models/payout/index.d.ts +0 -7
  186. package/esm/src/models/payout/index.d.ts.map +0 -1
  187. package/esm/src/models/payout/index.js +0 -6
  188. package/esm/src/models/payout/narration.d.ts +0 -164
  189. package/esm/src/models/payout/narration.d.ts.map +0 -1
  190. package/esm/src/models/payout/narration.js +0 -308
  191. package/esm/src/models/payout/schemas.d.ts +0 -156
  192. package/esm/src/models/payout/schemas.d.ts.map +0 -1
  193. package/esm/src/models/payout/schemas.js +0 -105
  194. package/esm/src/models/payout/status.d.ts +0 -33
  195. package/esm/src/models/payout/status.d.ts.map +0 -1
  196. package/esm/src/models/payout/status.js +0 -34
  197. package/esm/src/models/permission.d.ts.map +0 -1
  198. package/esm/src/models/permission.js +0 -50
  199. package/esm/src/models/role.d.ts +0 -21
  200. package/esm/src/models/role.d.ts.map +0 -1
  201. package/esm/src/models/role.js +0 -73
  202. package/esm/src/models/user/authenticated-user.d.ts +0 -77
  203. package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
  204. package/esm/src/models/user/authenticated-user.js +0 -226
  205. package/esm/src/models/user/index.d.ts +0 -4
  206. package/esm/src/models/user/index.d.ts.map +0 -1
  207. package/esm/src/models/user/index.js +0 -3
  208. package/esm/src/models/user/managed-user.d.ts +0 -108
  209. package/esm/src/models/user/managed-user.d.ts.map +0 -1
  210. package/esm/src/models/user/managed-user.js +0 -255
  211. package/esm/src/models/user/profile.d.ts +0 -161
  212. package/esm/src/models/user/profile.d.ts.map +0 -1
  213. package/esm/src/models/user/profile.js +0 -334
  214. package/esm/src/models/wallet/index.d.ts +0 -4
  215. package/esm/src/models/wallet/index.d.ts.map +0 -1
  216. package/esm/src/models/wallet/index.js +0 -3
  217. package/esm/src/models/wallet/schemas.d.ts +0 -95
  218. package/esm/src/models/wallet/schemas.d.ts.map +0 -1
  219. package/esm/src/models/wallet/schemas.js +0 -35
  220. package/esm/src/models/wallet/statement_entry.d.ts +0 -160
  221. package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
  222. package/esm/src/models/wallet/statement_entry.js +0 -255
  223. package/esm/src/models/wallet/wallet.d.ts.map +0 -1
  224. package/esm/src/models/wallet/wallet.js +0 -279
  225. package/esm/src/shared/base_repository.d.ts +0 -80
  226. package/esm/src/shared/base_repository.d.ts.map +0 -1
  227. package/esm/src/shared/base_repository.js +0 -153
  228. package/esm/src/shared/common_responses.d.ts +0 -13
  229. package/esm/src/shared/common_responses.d.ts.map +0 -1
  230. package/esm/src/shared/common_responses.js +0 -10
  231. package/esm/src/shared/index.d.ts +0 -3
  232. package/esm/src/shared/index.d.ts.map +0 -1
  233. package/esm/src/shared/index.js +0 -2
  234. package/esm/src/shared/token_required_repository.d.ts +0 -78
  235. package/esm/src/shared/token_required_repository.d.ts.map +0 -1
  236. package/esm/src/shared/token_required_repository.js +0 -128
  237. package/script/mod.d.ts +0 -8
  238. package/script/mod.d.ts.map +0 -1
  239. package/script/mod.js +0 -23
  240. package/script/npm/src/mod.d.ts +0 -8
  241. package/script/npm/src/mod.d.ts.map +0 -1
  242. package/script/npm/src/mod.js +0 -23
  243. package/script/npm/src/src/errors/api_error.d.ts +0 -63
  244. package/script/npm/src/src/errors/api_error.d.ts.map +0 -1
  245. package/script/npm/src/src/errors/api_error.js +0 -94
  246. package/script/npm/src/src/errors/index.d.ts +0 -3
  247. package/script/npm/src/src/errors/index.d.ts.map +0 -1
  248. package/script/npm/src/src/errors/index.js +0 -18
  249. package/script/npm/src/src/errors/permission_error.d.ts.map +0 -1
  250. package/script/npm/src/src/errors/permission_error.js +0 -74
  251. package/script/npm/src/src/features/admin/contract.d.ts +0 -842
  252. package/script/npm/src/src/features/admin/contract.d.ts.map +0 -1
  253. package/script/npm/src/src/features/admin/contract.js +0 -213
  254. package/script/npm/src/src/features/admin/index.d.ts +0 -4
  255. package/script/npm/src/src/features/admin/index.d.ts.map +0 -1
  256. package/script/npm/src/src/features/admin/index.js +0 -19
  257. package/script/npm/src/src/features/admin/repository.d.ts +0 -114
  258. package/script/npm/src/src/features/admin/repository.d.ts.map +0 -1
  259. package/script/npm/src/src/features/admin/repository.js +0 -252
  260. package/script/npm/src/src/features/admin/schemas.d.ts +0 -146
  261. package/script/npm/src/src/features/admin/schemas.d.ts.map +0 -1
  262. package/script/npm/src/src/features/admin/schemas.js +0 -209
  263. package/script/npm/src/src/features/auth/access/contract.d.ts +0 -14
  264. package/script/npm/src/src/features/auth/access/contract.d.ts.map +0 -1
  265. package/script/npm/src/src/features/auth/access/contract.js +0 -17
  266. package/script/npm/src/src/features/auth/access/repository.d.ts +0 -11
  267. package/script/npm/src/src/features/auth/access/repository.d.ts.map +0 -1
  268. package/script/npm/src/src/features/auth/access/repository.js +0 -29
  269. package/script/npm/src/src/features/auth/contract.d.ts +0 -112
  270. package/script/npm/src/src/features/auth/contract.d.ts.map +0 -1
  271. package/script/npm/src/src/features/auth/contract.js +0 -46
  272. package/script/npm/src/src/features/auth/identity/contract.d.ts +0 -23
  273. package/script/npm/src/src/features/auth/identity/contract.d.ts.map +0 -1
  274. package/script/npm/src/src/features/auth/identity/contract.js +0 -20
  275. package/script/npm/src/src/features/auth/identity/repository.d.ts +0 -22
  276. package/script/npm/src/src/features/auth/identity/repository.d.ts.map +0 -1
  277. package/script/npm/src/src/features/auth/identity/repository.js +0 -34
  278. package/script/npm/src/src/features/auth/index.d.ts +0 -6
  279. package/script/npm/src/src/features/auth/index.d.ts.map +0 -1
  280. package/script/npm/src/src/features/auth/index.js +0 -21
  281. package/script/npm/src/src/features/auth/manager.d.ts +0 -105
  282. package/script/npm/src/src/features/auth/manager.d.ts.map +0 -1
  283. package/script/npm/src/src/features/auth/manager.js +0 -185
  284. package/script/npm/src/src/features/auth/profile/contract.d.ts.map +0 -1
  285. package/script/npm/src/src/features/auth/profile/contract.js +0 -17
  286. package/script/npm/src/src/features/auth/profile/repository.d.ts +0 -11
  287. package/script/npm/src/src/features/auth/profile/repository.d.ts.map +0 -1
  288. package/script/npm/src/src/features/auth/profile/repository.js +0 -29
  289. package/script/npm/src/src/features/auth/repository.d.ts +0 -30
  290. package/script/npm/src/src/features/auth/repository.d.ts.map +0 -1
  291. package/script/npm/src/src/features/auth/repository.js +0 -73
  292. package/script/npm/src/src/features/auth/storage/client_store.d.ts +0 -30
  293. package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +0 -1
  294. package/script/npm/src/src/features/auth/storage/client_store.js +0 -51
  295. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts +0 -32
  296. package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
  297. package/script/npm/src/src/features/auth/storage/client_token_handler.js +0 -40
  298. package/script/npm/src/src/features/auth/storage/server_store.d.ts +0 -24
  299. package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +0 -1
  300. package/script/npm/src/src/features/auth/storage/server_store.js +0 -38
  301. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts +0 -36
  302. package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
  303. package/script/npm/src/src/features/auth/storage/server_token_handler.js +0 -119
  304. package/script/npm/src/src/features/auth/storage/types.d.ts +0 -42
  305. package/script/npm/src/src/features/auth/storage/types.d.ts.map +0 -1
  306. package/script/npm/src/src/features/auth/storage/types.js +0 -2
  307. package/script/npm/src/src/features/contact/contract.d.ts +0 -170
  308. package/script/npm/src/src/features/contact/contract.d.ts.map +0 -1
  309. package/script/npm/src/src/features/contact/contract.js +0 -52
  310. package/script/npm/src/src/features/contact/index.d.ts +0 -2
  311. package/script/npm/src/src/features/contact/index.d.ts.map +0 -1
  312. package/script/npm/src/src/features/contact/index.js +0 -17
  313. package/script/npm/src/src/features/contact/repository.d.ts +0 -58
  314. package/script/npm/src/src/features/contact/repository.d.ts.map +0 -1
  315. package/script/npm/src/src/features/contact/repository.js +0 -112
  316. package/script/npm/src/src/features/payout/contract.d.ts +0 -623
  317. package/script/npm/src/src/features/payout/contract.d.ts.map +0 -1
  318. package/script/npm/src/src/features/payout/contract.js +0 -78
  319. package/script/npm/src/src/features/payout/index.d.ts +0 -2
  320. package/script/npm/src/src/features/payout/index.d.ts.map +0 -1
  321. package/script/npm/src/src/features/payout/index.js +0 -17
  322. package/script/npm/src/src/features/payout/repository.d.ts +0 -67
  323. package/script/npm/src/src/features/payout/repository.d.ts.map +0 -1
  324. package/script/npm/src/src/features/payout/repository.js +0 -183
  325. package/script/npm/src/src/features/wallet/contract.d.ts.map +0 -1
  326. package/script/npm/src/src/features/wallet/contract.js +0 -41
  327. package/script/npm/src/src/features/wallet/index.d.ts +0 -2
  328. package/script/npm/src/src/features/wallet/index.d.ts.map +0 -1
  329. package/script/npm/src/src/features/wallet/index.js +0 -17
  330. package/script/npm/src/src/features/wallet/repository.d.ts +0 -57
  331. package/script/npm/src/src/features/wallet/repository.d.ts.map +0 -1
  332. package/script/npm/src/src/features/wallet/repository.js +0 -97
  333. package/script/npm/src/src/models/contact/derivatives/contact.d.ts +0 -172
  334. package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +0 -1
  335. package/script/npm/src/src/models/contact/derivatives/contact.js +0 -270
  336. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +0 -188
  337. package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
  338. package/script/npm/src/src/models/contact/derivatives/contact_info.js +0 -260
  339. package/script/npm/src/src/models/contact/index.d.ts +0 -5
  340. package/script/npm/src/src/models/contact/index.d.ts.map +0 -1
  341. package/script/npm/src/src/models/contact/index.js +0 -20
  342. package/script/npm/src/src/models/contact/schemas.d.ts +0 -66
  343. package/script/npm/src/src/models/contact/schemas.d.ts.map +0 -1
  344. package/script/npm/src/src/models/contact/schemas.js +0 -67
  345. package/script/npm/src/src/models/contact/validation.d.ts +0 -37
  346. package/script/npm/src/src/models/contact/validation.d.ts.map +0 -1
  347. package/script/npm/src/src/models/contact/validation.js +0 -153
  348. package/script/npm/src/src/models/index.d.ts +0 -7
  349. package/script/npm/src/src/models/index.d.ts.map +0 -1
  350. package/script/npm/src/src/models/index.js +0 -22
  351. package/script/npm/src/src/models/payout/api.d.ts +0 -29
  352. package/script/npm/src/src/models/payout/api.d.ts.map +0 -1
  353. package/script/npm/src/src/models/payout/api.js +0 -2
  354. package/script/npm/src/src/models/payout/channel.d.ts +0 -58
  355. package/script/npm/src/src/models/payout/channel.d.ts.map +0 -1
  356. package/script/npm/src/src/models/payout/channel.js +0 -56
  357. package/script/npm/src/src/models/payout/derivatives/payout.d.ts +0 -158
  358. package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +0 -1
  359. package/script/npm/src/src/models/payout/derivatives/payout.js +0 -275
  360. package/script/npm/src/src/models/payout/index.d.ts +0 -7
  361. package/script/npm/src/src/models/payout/index.d.ts.map +0 -1
  362. package/script/npm/src/src/models/payout/index.js +0 -22
  363. package/script/npm/src/src/models/payout/narration.d.ts +0 -164
  364. package/script/npm/src/src/models/payout/narration.d.ts.map +0 -1
  365. package/script/npm/src/src/models/payout/narration.js +0 -312
  366. package/script/npm/src/src/models/payout/schemas.d.ts +0 -156
  367. package/script/npm/src/src/models/payout/schemas.d.ts.map +0 -1
  368. package/script/npm/src/src/models/payout/schemas.js +0 -108
  369. package/script/npm/src/src/models/payout/status.d.ts +0 -33
  370. package/script/npm/src/src/models/payout/status.d.ts.map +0 -1
  371. package/script/npm/src/src/models/payout/status.js +0 -37
  372. package/script/npm/src/src/models/permission.d.ts +0 -55
  373. package/script/npm/src/src/models/permission.d.ts.map +0 -1
  374. package/script/npm/src/src/models/permission.js +0 -53
  375. package/script/npm/src/src/models/role.d.ts +0 -21
  376. package/script/npm/src/src/models/role.d.ts.map +0 -1
  377. package/script/npm/src/src/models/role.js +0 -77
  378. package/script/npm/src/src/models/user/authenticated-user.d.ts +0 -77
  379. package/script/npm/src/src/models/user/authenticated-user.d.ts.map +0 -1
  380. package/script/npm/src/src/models/user/authenticated-user.js +0 -230
  381. package/script/npm/src/src/models/user/index.d.ts +0 -4
  382. package/script/npm/src/src/models/user/index.d.ts.map +0 -1
  383. package/script/npm/src/src/models/user/index.js +0 -19
  384. package/script/npm/src/src/models/user/managed-user.d.ts +0 -108
  385. package/script/npm/src/src/models/user/managed-user.d.ts.map +0 -1
  386. package/script/npm/src/src/models/user/managed-user.js +0 -260
  387. package/script/npm/src/src/models/user/profile.d.ts.map +0 -1
  388. package/script/npm/src/src/models/user/profile.js +0 -338
  389. package/script/npm/src/src/models/wallet/index.d.ts +0 -4
  390. package/script/npm/src/src/models/wallet/index.d.ts.map +0 -1
  391. package/script/npm/src/src/models/wallet/index.js +0 -19
  392. package/script/npm/src/src/models/wallet/schemas.d.ts +0 -95
  393. package/script/npm/src/src/models/wallet/schemas.d.ts.map +0 -1
  394. package/script/npm/src/src/models/wallet/schemas.js +0 -38
  395. package/script/npm/src/src/models/wallet/statement_entry.d.ts +0 -160
  396. package/script/npm/src/src/models/wallet/statement_entry.d.ts.map +0 -1
  397. package/script/npm/src/src/models/wallet/statement_entry.js +0 -259
  398. package/script/npm/src/src/models/wallet/wallet.d.ts +0 -147
  399. package/script/npm/src/src/models/wallet/wallet.d.ts.map +0 -1
  400. package/script/npm/src/src/models/wallet/wallet.js +0 -283
  401. package/script/npm/src/src/shared/base_repository.d.ts +0 -80
  402. package/script/npm/src/src/shared/base_repository.d.ts.map +0 -1
  403. package/script/npm/src/src/shared/base_repository.js +0 -157
  404. package/script/npm/src/src/shared/common_responses.d.ts +0 -13
  405. package/script/npm/src/src/shared/common_responses.d.ts.map +0 -1
  406. package/script/npm/src/src/shared/common_responses.js +0 -13
  407. package/script/npm/src/src/shared/index.d.ts +0 -3
  408. package/script/npm/src/src/shared/index.d.ts.map +0 -1
  409. package/script/npm/src/src/shared/index.js +0 -18
  410. package/script/npm/src/src/shared/token_required_repository.d.ts +0 -78
  411. package/script/npm/src/src/shared/token_required_repository.d.ts.map +0 -1
  412. package/script/npm/src/src/shared/token_required_repository.js +0 -132
  413. package/script/package.json +0 -3
@@ -0,0 +1,441 @@
1
+ import { BeneficiaryDTO, BeneficiaryType } from "@/modules/beneficiary/beneficiary.dtos.js";
2
+ import { BeneficiaryInfo } from "./beneficiary-info.model.js";
3
+ import { z } from "zod";
4
+ /**
5
+ * Zod schema for Beneficiary JSON serialization
6
+ * This schema validates the JSON representation of a Beneficiary instance
7
+ *
8
+ * The Beneficiary JSON format wraps the BeneficiaryDTO structure for consistency
9
+ * and future extensibility (e.g., adding metadata, version info)
10
+ */
11
+ export declare const BeneficiaryJSONSchema: z.ZodObject<{
12
+ /** The complete beneficiary data transfer object */
13
+ data: z.ZodObject<{
14
+ id: z.ZodString;
15
+ profileId: z.ZodString;
16
+ createdAt: z.ZodString;
17
+ updatedAt: z.ZodString;
18
+ } & {
19
+ displayName: z.ZodString;
20
+ accountNo: z.ZodString;
21
+ channel: z.ZodString;
22
+ type: z.ZodNativeEnum<typeof BeneficiaryType>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ type: BeneficiaryType;
25
+ createdAt: string;
26
+ id: string;
27
+ displayName: string;
28
+ accountNo: string;
29
+ profileId: string;
30
+ updatedAt: string;
31
+ channel: string;
32
+ }, {
33
+ type: BeneficiaryType;
34
+ createdAt: string;
35
+ id: string;
36
+ displayName: string;
37
+ accountNo: string;
38
+ profileId: string;
39
+ updatedAt: string;
40
+ channel: string;
41
+ }>;
42
+ /** Version for future compatibility */
43
+ version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
44
+ }, "strip", z.ZodTypeAny, {
45
+ version: string;
46
+ data: {
47
+ type: BeneficiaryType;
48
+ createdAt: string;
49
+ id: string;
50
+ displayName: string;
51
+ accountNo: string;
52
+ profileId: string;
53
+ updatedAt: string;
54
+ channel: string;
55
+ };
56
+ }, {
57
+ data: {
58
+ type: BeneficiaryType;
59
+ createdAt: string;
60
+ id: string;
61
+ displayName: string;
62
+ accountNo: string;
63
+ profileId: string;
64
+ updatedAt: string;
65
+ channel: string;
66
+ };
67
+ version?: string | undefined;
68
+ }>;
69
+ /**
70
+ * Infer the BeneficiaryJSON type from the schema
71
+ */
72
+ export type BeneficiaryJSON = z.infer<typeof BeneficiaryJSONSchema>;
73
+ /**
74
+ * Beneficiary class that wraps the Zod schema and provides additional functionality.
75
+ * Represents a beneficiary entity with validation and type-safe access to beneficiary information.
76
+ *
77
+ * @class Beneficiary
78
+ *
79
+ * @example
80
+ * ```typescript
81
+ * // Preferred: Use static factory methods
82
+ * const beneficiary = Beneficiary.from(beneficiaryData);
83
+ *
84
+ * // From JSON
85
+ * const jsonBeneficiary = Beneficiary.fromJSON(jsonString);
86
+ *
87
+ * // Type-safe access
88
+ * if (beneficiary) {
89
+ * console.log(beneficiary.displayName);
90
+ * console.log(beneficiary.info?.channelName);
91
+ * }
92
+ * ```
93
+ */
94
+ export declare class Beneficiary {
95
+ private readonly data;
96
+ /**
97
+ * Private constructor - use static factory methods to create instances.
98
+ *
99
+ * @deprecated Use {@link Beneficiary.from} or other static factory methods instead
100
+ * @private
101
+ * @param {BeneficiaryDTO} data - Validated beneficiary data
102
+ */
103
+ private constructor();
104
+ /**
105
+ * Unique identifier for the beneficiary.
106
+ *
107
+ * @returns {string} The beneficiary's unique ID
108
+ */
109
+ get id(): string;
110
+ /**
111
+ * Profile identifier associated with this beneficiary.
112
+ *
113
+ * @returns {string} The profile ID
114
+ */
115
+ get profileId(): string;
116
+ /**
117
+ * Display name of the beneficiary.
118
+ *
119
+ * @returns {string} The beneficiary's display name
120
+ */
121
+ get displayName(): string;
122
+ /**
123
+ * Type of beneficiary (Bank or Mobile).
124
+ *
125
+ * @returns {BeneficiaryType} The beneficiary type
126
+ */
127
+ get type(): BeneficiaryType;
128
+ /**
129
+ * Creation timestamp of the beneficiary.
130
+ *
131
+ * @returns {Date} The creation date
132
+ */
133
+ get createdAt(): Date;
134
+ /**
135
+ * Update timestamp of the beneficiary.
136
+ *
137
+ * @returns {Date} The last update date
138
+ */
139
+ get updatedAt(): Date;
140
+ /**
141
+ * Detailed beneficiary information based on beneficiary type.
142
+ *
143
+ * @returns {BeneficiaryInfo | undefined} Beneficiary information object:
144
+ * - MobileBeneficiaryInfo for mobile money beneficiaries
145
+ * - BankBeneficiaryInfo for bank beneficiaries
146
+ * - undefined if beneficiary information cannot be constructed
147
+ *
148
+ * @remarks
149
+ * For mobile beneficiaries, constructs from phone number.
150
+ * For bank beneficiaries, constructs from SWIFT code and account number.
151
+ */
152
+ get info(): BeneficiaryInfo | undefined;
153
+ /**
154
+ * Account number for the beneficiary.
155
+ *
156
+ * @returns {string} Account number:
157
+ * - For valid beneficiaries, returns formatted account number from BeneficiaryInfo
158
+ * - For invalid beneficiaries, falls back to raw account number
159
+ */
160
+ get accNo(): string;
161
+ /**
162
+ * Account name for the beneficiary.
163
+ * Always returns the display name.
164
+ *
165
+ * @returns {string} The account name
166
+ */
167
+ get accName(): string;
168
+ /**
169
+ * Label for the account number field based on beneficiary type.
170
+ *
171
+ * @returns {string} Appropriate label:
172
+ * - "Phone Number" for mobile beneficiaries
173
+ * - "Bank Account Number" for bank beneficiaries
174
+ * - "Account Number" as fallback
175
+ */
176
+ get accNoLabel(): string;
177
+ /**
178
+ * Label for the channel field based on beneficiary type.
179
+ *
180
+ * @returns {string} Appropriate label:
181
+ * - "Channel" for mobile beneficiaries
182
+ * - "Bank" for bank beneficiaries
183
+ * - "Channel" as fallback
184
+ */
185
+ get channelLabel(): string;
186
+ /**
187
+ * Label for the account name field based on beneficiary type.
188
+ *
189
+ * @returns {string} Appropriate label:
190
+ * - "Full Name" for mobile beneficiaries
191
+ * - "Bank Account Name" for bank beneficiaries
192
+ * - "Display Name" as fallback
193
+ */
194
+ get accNameLabel(): string;
195
+ /**
196
+ * Human-readable channel name for the beneficiary.
197
+ *
198
+ * @returns {string} The channel name (e.g., "M-Pesa", "CRDB") or empty string
199
+ */
200
+ get channelName(): string;
201
+ /**
202
+ * Creates a Beneficiary instance from raw data.
203
+ * This is the preferred method for creating Beneficiary instances.
204
+ *
205
+ * @static
206
+ * @param {BeneficiaryDTO} data - Raw beneficiary data to validate and wrap
207
+ * @returns {Beneficiary | undefined} Beneficiary instance or undefined if validation fails
208
+ *
209
+ * @example
210
+ * ```typescript
211
+ * const beneficiary = Beneficiary.from({
212
+ * id: "123",
213
+ * profileId: "profile-456",
214
+ * displayName: "John Doe",
215
+ * type: "Mobile",
216
+ * accountNo: "+255712345678",
217
+ * channel: "VODACOM",
218
+ * createdAt: "2024-01-01T00:00:00Z",
219
+ * updatedAt: "2024-01-01T00:00:00Z"
220
+ * });
221
+ * ```
222
+ */
223
+ static from(data: BeneficiaryDTO): Beneficiary | undefined;
224
+ /**
225
+ * Creates a Beneficiary instance from raw data, throwing on validation failure.
226
+ *
227
+ * @static
228
+ * @param {BeneficiaryDTO} data - Raw beneficiary data to validate and wrap
229
+ * @returns {Beneficiary} Beneficiary instance
230
+ * @throws {ZodError} If validation fails
231
+ *
232
+ * @example
233
+ * ```typescript
234
+ * try {
235
+ * const beneficiary = Beneficiary.create(beneficiaryData);
236
+ * } catch (error) {
237
+ * console.error("Validation failed:", error);
238
+ * }
239
+ * ```
240
+ */
241
+ static create(data: BeneficiaryDTO): Beneficiary;
242
+ /**
243
+ * Creates multiple Beneficiary instances from an array of raw data.
244
+ *
245
+ * @static
246
+ * @param {BeneficiaryDTO[]} dataArray - Array of beneficiary data
247
+ * @returns {Beneficiary[]} Array of Beneficiary instances
248
+ * @throws {ZodError} If validation fails for any item
249
+ *
250
+ * @example
251
+ * ```typescript
252
+ * const beneficiaries = Beneficiary.createMany([beneficiaryData1, beneficiaryData2]);
253
+ * ```
254
+ */
255
+ static createMany(dataArray: BeneficiaryDTO[]): Beneficiary[];
256
+ /**
257
+ * Creates a Beneficiary instance from raw data without throwing.
258
+ *
259
+ * @static
260
+ * @param {BeneficiaryDTO} data - Raw beneficiary data
261
+ * @returns {Beneficiary | null} Beneficiary instance or null if validation fails
262
+ *
263
+ * @example
264
+ * ```typescript
265
+ * const beneficiary = Beneficiary.createSafe(beneficiaryData);
266
+ * if (beneficiary) {
267
+ * console.log("Beneficiary created successfully");
268
+ * }
269
+ * ```
270
+ */
271
+ static createSafe(data: BeneficiaryDTO): Beneficiary | null;
272
+ /**
273
+ * Checks if an unknown value contains valid data to construct a Beneficiary instance.
274
+ * This is useful when validating raw data structures before instantiation.
275
+ *
276
+ * @static
277
+ * @param {unknown} obj - The value containing potential beneficiary data
278
+ * @returns {obj is Beneficiary} Type predicate indicating if a Beneficiary can be constructed
279
+ *
280
+ * @example
281
+ * ```typescript
282
+ * const rawData = await fetchFromAPI();
283
+ * if (Beneficiary.canConstruct(rawData)) {
284
+ * const beneficiary = Beneficiary.create(rawData);
285
+ * console.log(beneficiary.displayName);
286
+ * }
287
+ * ```
288
+ *
289
+ * @remarks
290
+ * This method performs strict validation against the {@link BeneficiaryDTO} schema.
291
+ */
292
+ static canConstruct(obj: unknown): obj is Beneficiary;
293
+ /**
294
+ * Validates if an unknown value is a Beneficiary instance.
295
+ * This is a runtime type guard that ensures proper object structure and data validity.
296
+ *
297
+ * @static
298
+ * @param {unknown} obj - The value to validate
299
+ * @returns {obj is Beneficiary} Type predicate indicating if the value is a valid Beneficiary
300
+ *
301
+ * @example
302
+ * ```typescript
303
+ * const maybeBeneficiary = getBeneficiaryFromCache();
304
+ * if (Beneficiary.is(maybeBeneficiary)) {
305
+ * console.log(maybeBeneficiary.displayName); // Type-safe
306
+ * }
307
+ * ```
308
+ *
309
+ * @remarks
310
+ * This method performs a complete structural validation:
311
+ * 1. Checks if the value is an object
312
+ * 2. Verifies presence of internal data property
313
+ * 3. Validates the data against BeneficiaryDTO schema
314
+ * 4. Ensures the object is a proper Beneficiary instance
315
+ *
316
+ * Use this method when:
317
+ * - Validating cached Beneficiary instances
318
+ * - Checking serialized Beneficiary objects
319
+ * - Verifying API responses
320
+ * - Type narrowing in conditional blocks
321
+ */
322
+ static is(obj: unknown): obj is Beneficiary;
323
+ /**
324
+ * Serializes the Beneficiary instance to a JSON-compatible object
325
+ *
326
+ * This method creates a structured representation suitable for storage or transmission.
327
+ * The serialized format includes all beneficiary data and a version identifier for
328
+ * future compatibility.
329
+ *
330
+ * @returns {BeneficiaryJSON} JSON-compatible object representation
331
+ *
332
+ * @example
333
+ * ```typescript
334
+ * const beneficiary = Beneficiary.from(beneficiaryData);
335
+ * const json = beneficiary.toJSON();
336
+ * // { data: { id: "123", displayName: "John", ... }, version: "1.0" }
337
+ *
338
+ * // Store in localStorage
339
+ * localStorage.setItem('beneficiary', JSON.stringify(json));
340
+ * ```
341
+ */
342
+ toJSON(): BeneficiaryJSON;
343
+ /**
344
+ * Serializes the Beneficiary instance to a JSON string
345
+ *
346
+ * Convenience method that combines toJSON() with JSON.stringify()
347
+ *
348
+ * @returns {string} JSON string representation
349
+ *
350
+ * @example
351
+ * ```typescript
352
+ * const beneficiary = Beneficiary.from(beneficiaryData);
353
+ * const jsonString = beneficiary.toJSONString();
354
+ * localStorage.setItem('beneficiary', jsonString);
355
+ * ```
356
+ */
357
+ toJSONString(): string;
358
+ /**
359
+ * Creates a Beneficiary instance from a JSON-compatible object or string
360
+ *
361
+ * This static method reconstructs a Beneficiary instance from data that was
362
+ * previously serialized using toJSON(). It performs comprehensive validation
363
+ * to ensure data integrity.
364
+ *
365
+ * **Validation Process:**
366
+ * 1. Parses JSON string if provided
367
+ * 2. Validates structure using Zod schema
368
+ * 3. Extracts and validates BeneficiaryDTO data
369
+ * 4. Constructs Beneficiary instance with validated data
370
+ *
371
+ * @static
372
+ * @param {BeneficiaryJSON | string} json - JSON object or string containing beneficiary data
373
+ * @returns {Beneficiary | undefined} New Beneficiary instance if successful, undefined if parsing/validation fails
374
+ *
375
+ * @example
376
+ * ```typescript
377
+ * // From JSON object
378
+ * const json = { data: { id: "123", displayName: "John", ... }, version: "1.0" };
379
+ * const beneficiary = Beneficiary.fromJSON(json);
380
+ *
381
+ * // From JSON string
382
+ * const jsonString = localStorage.getItem('beneficiary');
383
+ * const beneficiary = Beneficiary.fromJSON(jsonString);
384
+ *
385
+ * // With error handling
386
+ * const beneficiary = Beneficiary.fromJSON(jsonString);
387
+ * if (beneficiary) {
388
+ * console.log("Beneficiary restored:", beneficiary.displayName);
389
+ * } else {
390
+ * console.error("Failed to restore beneficiary from JSON");
391
+ * }
392
+ * ```
393
+ */
394
+ static fromJSON(json: BeneficiaryJSON | string): Beneficiary | undefined;
395
+ /**
396
+ * Creates a Beneficiary instance from a JSON string
397
+ *
398
+ * Convenience method that delegates to fromJSON()
399
+ *
400
+ * @static
401
+ * @param {string} jsonString - JSON string containing beneficiary data
402
+ * @returns {Beneficiary | undefined} New Beneficiary instance if successful, undefined if parsing fails
403
+ *
404
+ * @example
405
+ * ```typescript
406
+ * const jsonString = '{"data":{"id":"123","displayName":"John",...},"version":"1.0"}';
407
+ * const beneficiary = Beneficiary.fromJSONString(jsonString);
408
+ * ```
409
+ */
410
+ static fromJSONString(jsonString: string): Beneficiary | undefined;
411
+ /**
412
+ * Type guard to check if an object is a valid BeneficiaryJSON using Zod validation
413
+ *
414
+ * This method validates the structure of a JSON object to ensure it contains
415
+ * all required fields and meets the BeneficiaryJSON schema requirements.
416
+ *
417
+ * @static
418
+ * @param {unknown} obj - The object to validate
419
+ * @returns {obj is BeneficiaryJSON} Type predicate indicating if the object is valid BeneficiaryJSON
420
+ *
421
+ * @example
422
+ * ```typescript
423
+ * const data = JSON.parse(jsonString);
424
+ *
425
+ * if (Beneficiary.isBeneficiaryJSON(data)) {
426
+ * // TypeScript now knows data is BeneficiaryJSON
427
+ * const beneficiary = Beneficiary.fromJSON(data);
428
+ * } else {
429
+ * console.error("Invalid BeneficiaryJSON structure");
430
+ * }
431
+ * ```
432
+ *
433
+ * @remarks
434
+ * Use this method when:
435
+ * - Validating JSON data before deserialization
436
+ * - Implementing type guards in conditional logic
437
+ * - Checking API responses before processing
438
+ * - Validating cached data integrity
439
+ */
440
+ static isBeneficiaryJSON(obj: unknown): obj is BeneficiaryJSON;
441
+ }
@@ -0,0 +1,116 @@
1
+ import { BaseRepository } from "@/lib/api/base-repository.js";
2
+ import { BeneficiaryInfo } from "@/modules/beneficiary/beneficiary-info.model.js";
3
+ import { Beneficiary } from "@/modules/beneficiary/beneficiary.model.js";
4
+ import { contract } from "./beneficiary.api-contract.js";
5
+ /**
6
+ * Repository class for managing Beneficiary data through API interactions.
7
+ * Handles beneficiary creation, updates, deletion, and retrieval operations.
8
+ *
9
+ * This repository handles pure API communication without permission checking.
10
+ * Permission validation should be handled at the service layer or route handlers.
11
+ *
12
+ * @extends {BaseRepository<typeof contract>}
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const repo = new BeneficiaryRepository({ token: userToken });
17
+ * const beneficiaries = await repo.getAll();
18
+ * ```
19
+ */
20
+ export declare class BeneficiaryRepository extends BaseRepository<typeof contract> {
21
+ /**
22
+ * Creates an instance of BeneficiaryRepository using the beneficiary contract.
23
+ *
24
+ * @param options - Optional configuration
25
+ * @param options.token - Authentication token for API calls
26
+ * @param options.root - Custom API root URL
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const repo = new BeneficiaryRepository({
31
+ * token: "user-auth-token",
32
+ * root: "https://api-staging.afloat.money/v1"
33
+ * });
34
+ * ```
35
+ */
36
+ constructor(options?: {
37
+ token?: string;
38
+ root?: string;
39
+ });
40
+ /**
41
+ * Creates a new beneficiary record.
42
+ *
43
+ * @param info - The data required to create a new beneficiary
44
+ * @returns Promise that resolves to the newly created beneficiary
45
+ * @throws {APIError} If the creation operation fails
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const newBeneficiary = await repo.create({
50
+ * name: "John Doe",
51
+ * email: "john@example.com",
52
+ * phone: "+1234567890"
53
+ * });
54
+ * ```
55
+ */
56
+ create(info: BeneficiaryInfo): Promise<Beneficiary>;
57
+ /**
58
+ * Updates an existing beneficiary record by ID.
59
+ *
60
+ * @param id - The unique identifier of the beneficiary to edit
61
+ * @param info - The data to update the beneficiary with
62
+ * @returns Promise that resolves to the updated beneficiary
63
+ * @throws {APIError} If the update operation fails
64
+ *
65
+ * @example
66
+ * ```typescript
67
+ * const updatedBeneficiary = await repo.edit("beneficiary-id", {
68
+ * name: "Jane Doe",
69
+ * email: "jane@example.com"
70
+ * });
71
+ * ```
72
+ */
73
+ edit(id: string, info: BeneficiaryInfo): Promise<Beneficiary>;
74
+ /**
75
+ * Deletes a beneficiary record by ID.
76
+ *
77
+ * @param id - The unique identifier of the beneficiary to remove
78
+ * @returns Promise that resolves when the deletion is complete
79
+ * @throws {APIError} If the deletion operation fails
80
+ *
81
+ * @example
82
+ * ```typescript
83
+ * await repo.remove("beneficiary-id");
84
+ * console.log("Beneficiary deleted successfully");
85
+ * ```
86
+ */
87
+ remove(id: string): Promise<void>;
88
+ /**
89
+ * Retrieves all beneficiaries.
90
+ * Results are ordered in descending order by creation date by default.
91
+ *
92
+ * @returns Promise that resolves to an array of beneficiaries
93
+ * @throws {APIError} If the fetch operation fails
94
+ *
95
+ * @example
96
+ * ```typescript
97
+ * const beneficiaries = await repo.getAll();
98
+ * beneficiaries.forEach(beneficiary => console.log(`Beneficiary: ${beneficiary.name}`));
99
+ * ```
100
+ */
101
+ getAll(): Promise<Beneficiary[]>;
102
+ /**
103
+ * Retrieves a beneficiary by its unique identifier.
104
+ *
105
+ * @param id - The unique identifier of the beneficiary to retrieve
106
+ * @returns Promise that resolves to the requested beneficiary
107
+ * @throws {APIError} If the beneficiary is not found or fetch operation fails
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * const beneficiary = await repo.getByID("beneficiary-id");
112
+ * console.log(`Beneficiary: ${beneficiary.name}, Email: ${beneficiary.email}`);
113
+ * ```
114
+ */
115
+ getByID(id: string): Promise<Beneficiary>;
116
+ }
@@ -0,0 +1,6 @@
1
+ export * from "./beneficiary.repository.js";
2
+ export * from "./beneficiary.dtos.js";
3
+ export * from "./beneficiary-info.model.js";
4
+ export * from "./beneficiary.model.js";
5
+ export * from "./beneficiary-input-handler.js";
6
+ export * from "./beneficiary.api-contract.js";
@@ -0,0 +1,4 @@
1
+ export * from "./login.dtos.js";
2
+ export * from "./login.model.js";
3
+ export * from "./login.repository.js";
4
+ export * from "./permission.type.js";
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Identity API contract
3
+ */
4
+ export declare const identityContract: {
5
+ getUserCredentials: {
6
+ method: "GET";
7
+ path: "/me";
8
+ responses: {
9
+ 200: import("zod").ZodObject<{
10
+ id: import("zod").ZodString;
11
+ profileId: import("zod").ZodString;
12
+ name: import("zod").ZodString;
13
+ identity: import("zod").ZodString;
14
+ type: import("zod").ZodString;
15
+ roleId: import("zod").ZodString;
16
+ isActive: import("zod").ZodBoolean;
17
+ isArchived: import("zod").ZodBoolean;
18
+ resetPassword: import("zod").ZodBoolean;
19
+ createdAt: import("zod").ZodString;
20
+ updatedAt: import("zod").ZodString;
21
+ access: import("zod").ZodArray<import("zod").ZodString, "many">;
22
+ }, "strip", import("zod").ZodTypeAny, {
23
+ type: string;
24
+ name: string;
25
+ createdAt: string;
26
+ id: string;
27
+ profileId: string;
28
+ identity: string;
29
+ roleId: string;
30
+ isActive: boolean;
31
+ isArchived: boolean;
32
+ resetPassword: boolean;
33
+ updatedAt: string;
34
+ access: string[];
35
+ }, {
36
+ type: string;
37
+ name: string;
38
+ createdAt: string;
39
+ id: string;
40
+ profileId: string;
41
+ identity: string;
42
+ roleId: string;
43
+ isActive: boolean;
44
+ isArchived: boolean;
45
+ resetPassword: boolean;
46
+ updatedAt: string;
47
+ access: string[];
48
+ }>;
49
+ };
50
+ };
51
+ };
@@ -0,0 +1,85 @@
1
+ import z from "zod";
2
+ declare const LogInDTOSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ profileId: z.ZodString;
5
+ name: z.ZodString;
6
+ identity: z.ZodString;
7
+ type: z.ZodString;
8
+ roleId: z.ZodString;
9
+ isActive: z.ZodBoolean;
10
+ isArchived: z.ZodBoolean;
11
+ resetPassword: z.ZodBoolean;
12
+ createdAt: z.ZodString;
13
+ updatedAt: z.ZodString;
14
+ access: z.ZodArray<z.ZodString, "many">;
15
+ }, "strip", z.ZodTypeAny, {
16
+ type: string;
17
+ name: string;
18
+ createdAt: string;
19
+ id: string;
20
+ profileId: string;
21
+ identity: string;
22
+ roleId: string;
23
+ isActive: boolean;
24
+ isArchived: boolean;
25
+ resetPassword: boolean;
26
+ updatedAt: string;
27
+ access: string[];
28
+ }, {
29
+ type: string;
30
+ name: string;
31
+ createdAt: string;
32
+ id: string;
33
+ profileId: string;
34
+ identity: string;
35
+ roleId: string;
36
+ isActive: boolean;
37
+ isArchived: boolean;
38
+ resetPassword: boolean;
39
+ updatedAt: string;
40
+ access: string[];
41
+ }>;
42
+ export declare const LogInSchemas: {
43
+ loginDTO: z.ZodObject<{
44
+ id: z.ZodString;
45
+ profileId: z.ZodString;
46
+ name: z.ZodString;
47
+ identity: z.ZodString;
48
+ type: z.ZodString;
49
+ roleId: z.ZodString;
50
+ isActive: z.ZodBoolean;
51
+ isArchived: z.ZodBoolean;
52
+ resetPassword: z.ZodBoolean;
53
+ createdAt: z.ZodString;
54
+ updatedAt: z.ZodString;
55
+ access: z.ZodArray<z.ZodString, "many">;
56
+ }, "strip", z.ZodTypeAny, {
57
+ type: string;
58
+ name: string;
59
+ createdAt: string;
60
+ id: string;
61
+ profileId: string;
62
+ identity: string;
63
+ roleId: string;
64
+ isActive: boolean;
65
+ isArchived: boolean;
66
+ resetPassword: boolean;
67
+ updatedAt: string;
68
+ access: string[];
69
+ }, {
70
+ type: string;
71
+ name: string;
72
+ createdAt: string;
73
+ id: string;
74
+ profileId: string;
75
+ identity: string;
76
+ roleId: string;
77
+ isActive: boolean;
78
+ isArchived: boolean;
79
+ resetPassword: boolean;
80
+ updatedAt: string;
81
+ access: string[];
82
+ }>;
83
+ };
84
+ export type LogInDTO = z.infer<typeof LogInDTOSchema>;
85
+ export {};