@ember-nexus/app-core 0.0.1 → 0.0.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 (280) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE +1 -1
  3. package/dist/browser/index.js +1 -1
  4. package/dist/browser/index.js.map +1 -1
  5. package/dist/esm/BrowserEvent/GetServiceResolverEvent.js +2 -2
  6. package/dist/esm/BrowserEvent/GetServiceResolverEvent.js.map +1 -1
  7. package/dist/esm/BrowserEventListener/index.js +3 -0
  8. package/dist/esm/BrowserEventListener/index.js.map +1 -0
  9. package/dist/esm/Cache/Cache.js +55 -0
  10. package/dist/esm/Cache/Cache.js.map +1 -0
  11. package/dist/esm/Cache/CacheEntry.js +2 -0
  12. package/dist/esm/Cache/CacheEntry.js.map +1 -0
  13. package/dist/esm/Cache/ElementCache.js +29 -0
  14. package/dist/esm/Cache/ElementCache.js.map +1 -0
  15. package/dist/esm/Cache/ElementChildrenCache.js +20 -0
  16. package/dist/esm/Cache/ElementChildrenCache.js.map +1 -0
  17. package/dist/esm/Cache/ElementParentsCache.js +20 -0
  18. package/dist/esm/Cache/ElementParentsCache.js.map +1 -0
  19. package/dist/esm/Cache/ElementRelatedCache.js +20 -0
  20. package/dist/esm/Cache/ElementRelatedCache.js.map +1 -0
  21. package/dist/esm/Cache/IndexCache.js +20 -0
  22. package/dist/esm/Cache/IndexCache.js.map +1 -0
  23. package/dist/esm/Cache/index.js +8 -0
  24. package/dist/esm/Cache/index.js.map +1 -0
  25. package/dist/esm/Endpoint/Element/DeleteElementEndpoint.js +34 -0
  26. package/dist/esm/Endpoint/Element/DeleteElementEndpoint.js.map +1 -0
  27. package/dist/esm/Endpoint/Element/GetElementChildrenEndpoint.js +49 -0
  28. package/dist/esm/Endpoint/Element/GetElementChildrenEndpoint.js.map +1 -0
  29. package/dist/esm/Endpoint/Element/GetElementEndpoint.js +41 -0
  30. package/dist/esm/Endpoint/Element/GetElementEndpoint.js.map +1 -0
  31. package/dist/esm/Endpoint/Element/GetElementParentsEndpoint.js +51 -0
  32. package/dist/esm/Endpoint/Element/GetElementParentsEndpoint.js.map +1 -0
  33. package/dist/esm/Endpoint/Element/GetElementRelatedEndpoint.js +51 -0
  34. package/dist/esm/Endpoint/Element/GetElementRelatedEndpoint.js.map +1 -0
  35. package/dist/esm/Endpoint/Element/GetIndexEndpoint.js +51 -0
  36. package/dist/esm/Endpoint/Element/GetIndexEndpoint.js.map +1 -0
  37. package/dist/esm/Endpoint/Element/PatchElementEndpoint.js +34 -0
  38. package/dist/esm/Endpoint/Element/PatchElementEndpoint.js.map +1 -0
  39. package/dist/esm/Endpoint/Element/PostElementEndpoint.js +35 -0
  40. package/dist/esm/Endpoint/Element/PostElementEndpoint.js.map +1 -0
  41. package/dist/esm/Endpoint/Element/PostIndexEndpoint.js +35 -0
  42. package/dist/esm/Endpoint/Element/PostIndexEndpoint.js.map +1 -0
  43. package/dist/esm/Endpoint/Element/PutElementEndpoint.js +34 -0
  44. package/dist/esm/Endpoint/Element/PutElementEndpoint.js.map +1 -0
  45. package/dist/esm/Endpoint/Element/index.js +11 -0
  46. package/dist/esm/Endpoint/Element/index.js.map +1 -0
  47. package/dist/esm/Endpoint/File/index.js +2 -0
  48. package/dist/esm/Endpoint/File/index.js.map +1 -0
  49. package/dist/esm/Endpoint/User/DeleteTokenEndpoint.js +34 -0
  50. package/dist/esm/Endpoint/User/DeleteTokenEndpoint.js.map +1 -0
  51. package/dist/esm/Endpoint/User/GetMeEndpoint.js +42 -0
  52. package/dist/esm/Endpoint/User/GetMeEndpoint.js.map +1 -0
  53. package/dist/esm/Endpoint/User/GetTokenEndpoint.js +42 -0
  54. package/dist/esm/Endpoint/User/GetTokenEndpoint.js.map +1 -0
  55. package/dist/esm/Endpoint/User/PostChangePasswordEndpoint.js +40 -0
  56. package/dist/esm/Endpoint/User/PostChangePasswordEndpoint.js.map +1 -0
  57. package/dist/esm/Endpoint/User/PostRegisterEndpoint.js +41 -0
  58. package/dist/esm/Endpoint/User/PostRegisterEndpoint.js.map +1 -0
  59. package/dist/esm/Endpoint/User/PostTokenEndpoint.js +44 -0
  60. package/dist/esm/Endpoint/User/PostTokenEndpoint.js.map +1 -0
  61. package/dist/esm/Endpoint/User/index.js +7 -0
  62. package/dist/esm/Endpoint/User/index.js.map +1 -0
  63. package/dist/esm/Endpoint/WebDAV/index.js +2 -0
  64. package/dist/esm/Endpoint/WebDAV/index.js.map +1 -0
  65. package/dist/esm/Endpoint/index.js +5 -0
  66. package/dist/esm/Endpoint/index.js.map +1 -0
  67. package/dist/esm/Error/NetworkError.js +13 -0
  68. package/dist/esm/Error/NetworkError.js.map +1 -0
  69. package/dist/esm/Error/Response401UnauthorizedError.js +15 -0
  70. package/dist/esm/Error/Response401UnauthorizedError.js.map +1 -0
  71. package/dist/esm/Error/Response403ForbiddenError.js +15 -0
  72. package/dist/esm/Error/Response403ForbiddenError.js.map +1 -0
  73. package/dist/esm/Error/Response404NotFoundError.js +15 -0
  74. package/dist/esm/Error/Response404NotFoundError.js.map +1 -0
  75. package/dist/esm/Error/Response429TooManyRequestsError.js +15 -0
  76. package/dist/esm/Error/Response429TooManyRequestsError.js.map +1 -0
  77. package/dist/esm/Error/ResponseError.js +43 -0
  78. package/dist/esm/Error/ResponseError.js.map +1 -0
  79. package/dist/esm/Error/index.js +6 -0
  80. package/dist/esm/Error/index.js.map +1 -1
  81. package/dist/esm/Event/NormalizedValueToRawValueEvent.js +25 -0
  82. package/dist/esm/Event/NormalizedValueToRawValueEvent.js.map +1 -0
  83. package/dist/esm/Event/RawValueToNormalizedValueEvent.js +25 -0
  84. package/dist/esm/Event/RawValueToNormalizedValueEvent.js.map +1 -0
  85. package/dist/esm/Event/index.js +3 -0
  86. package/dist/esm/Event/index.js.map +1 -0
  87. package/dist/esm/EventListener/DateTimeNormalizedValueToRawValueEventListener.js +24 -0
  88. package/dist/esm/EventListener/DateTimeNormalizedValueToRawValueEventListener.js.map +1 -0
  89. package/dist/esm/EventListener/DateTimeRawValueToNormalizedValueEventListener.js +27 -0
  90. package/dist/esm/EventListener/DateTimeRawValueToNormalizedValueEventListener.js.map +1 -0
  91. package/dist/esm/EventListener/GenericNormalizedValueToRawValueEventListener.js +26 -0
  92. package/dist/esm/EventListener/GenericNormalizedValueToRawValueEventListener.js.map +1 -0
  93. package/dist/esm/EventListener/GenericRawValueToNormalizedValueEventListener.js +25 -0
  94. package/dist/esm/EventListener/GenericRawValueToNormalizedValueEventListener.js.map +1 -0
  95. package/dist/esm/EventListener/index.js +6 -0
  96. package/dist/esm/EventListener/index.js.map +1 -0
  97. package/dist/esm/EventListener/initEventListener.js +19 -0
  98. package/dist/esm/EventListener/initEventListener.js.map +1 -0
  99. package/dist/esm/Init.js +54 -16
  100. package/dist/esm/Init.js.map +1 -1
  101. package/dist/esm/Service/ApiConfiguration.js +69 -0
  102. package/dist/esm/Service/ApiConfiguration.js.map +1 -0
  103. package/dist/esm/Service/ApiWrapper.js +378 -0
  104. package/dist/esm/Service/ApiWrapper.js.map +1 -0
  105. package/dist/esm/Service/CollectionParser.js +82 -0
  106. package/dist/esm/Service/CollectionParser.js.map +1 -0
  107. package/dist/esm/Service/ElementParser.js +54 -0
  108. package/dist/esm/Service/ElementParser.js.map +1 -0
  109. package/dist/esm/Service/EventDispatcher.js +54 -36
  110. package/dist/esm/Service/EventDispatcher.js.map +1 -1
  111. package/dist/esm/Service/FetchHelper.js +208 -0
  112. package/dist/esm/Service/FetchHelper.js.map +1 -0
  113. package/dist/esm/Service/ServiceResolver.js +11 -5
  114. package/dist/esm/Service/ServiceResolver.js.map +1 -1
  115. package/dist/esm/Service/TokenParser.js +27 -0
  116. package/dist/esm/Service/TokenParser.js.map +1 -0
  117. package/dist/esm/Service/index.js +6 -0
  118. package/dist/esm/Service/index.js.map +1 -1
  119. package/dist/esm/Type/Definition/Collection.js +2 -0
  120. package/dist/esm/Type/Definition/Collection.js.map +1 -0
  121. package/dist/esm/Type/Definition/Data.js +2 -0
  122. package/dist/esm/Type/Definition/Data.js.map +1 -0
  123. package/dist/esm/Type/Definition/Element.js +2 -0
  124. package/dist/esm/Type/Definition/Element.js.map +1 -0
  125. package/dist/esm/Type/Definition/ElementCollection.js +2 -0
  126. package/dist/esm/Type/Definition/ElementCollection.js.map +1 -0
  127. package/dist/esm/Type/Definition/Event.js +1 -28
  128. package/dist/esm/Type/Definition/Event.js.map +1 -1
  129. package/dist/esm/Type/Definition/EventIdentifier.js +1 -1
  130. package/dist/esm/Type/Definition/EventIdentifier.js.map +1 -1
  131. package/dist/esm/Type/Definition/EventListenerTarget.js +20 -0
  132. package/dist/esm/Type/Definition/EventListenerTarget.js.map +1 -0
  133. package/dist/esm/Type/Definition/InstanceConfiguration.js +2 -0
  134. package/dist/esm/Type/Definition/InstanceConfiguration.js.map +1 -0
  135. package/dist/esm/Type/Definition/Node.js +2 -0
  136. package/dist/esm/Type/Definition/Node.js.map +1 -0
  137. package/dist/esm/Type/Definition/NodeWithOptionalId.js +2 -0
  138. package/dist/esm/Type/Definition/NodeWithOptionalId.js.map +1 -0
  139. package/dist/esm/Type/Definition/PriorityRegistry.js.map +1 -1
  140. package/dist/esm/Type/Definition/Registry.js.map +1 -1
  141. package/dist/esm/Type/Definition/Relation.js +2 -0
  142. package/dist/esm/Type/Definition/Relation.js.map +1 -0
  143. package/dist/esm/Type/Definition/RelationWithOptionalId.js +2 -0
  144. package/dist/esm/Type/Definition/RelationWithOptionalId.js.map +1 -0
  145. package/dist/esm/Type/Definition/RequestProblem.js +2 -0
  146. package/dist/esm/Type/Definition/RequestProblem.js.map +1 -0
  147. package/dist/esm/Type/Definition/Response/EmptyResponse.js +2 -0
  148. package/dist/esm/Type/Definition/Response/EmptyResponse.js.map +1 -0
  149. package/dist/esm/Type/Definition/Response/NotModifiedResponse.js +2 -0
  150. package/dist/esm/Type/Definition/Response/NotModifiedResponse.js.map +1 -0
  151. package/dist/esm/Type/Definition/Response/ParsedResponse.js +2 -0
  152. package/dist/esm/Type/Definition/Response/ParsedResponse.js.map +1 -0
  153. package/dist/esm/Type/Definition/Response/index.js +4 -0
  154. package/dist/esm/Type/Definition/Response/index.js.map +1 -0
  155. package/dist/esm/Type/Definition/ServiceIdentifier.js +1 -1
  156. package/dist/esm/Type/Definition/ServiceIdentifier.js.map +1 -1
  157. package/dist/esm/Type/Definition/Token.js +9 -0
  158. package/dist/esm/Type/Definition/Token.js.map +1 -0
  159. package/dist/esm/Type/Definition/UniqueUserIdentifier.js +5 -0
  160. package/dist/esm/Type/Definition/UniqueUserIdentifier.js.map +1 -0
  161. package/dist/esm/Type/Definition/Uuid.js +10 -0
  162. package/dist/esm/Type/Definition/Uuid.js.map +1 -0
  163. package/dist/esm/Type/Definition/WebSdkConfigurationInterface.js +2 -0
  164. package/dist/esm/Type/Definition/WebSdkConfigurationInterface.js.map +1 -0
  165. package/dist/esm/Type/Definition/index.js +16 -1
  166. package/dist/esm/Type/Definition/index.js.map +1 -1
  167. package/dist/esm/Type/Enum/BrowserEventIdentifier.js +6 -0
  168. package/dist/esm/Type/Enum/BrowserEventIdentifier.js.map +1 -0
  169. package/dist/esm/Type/Enum/EventIdentifier.js +2 -1
  170. package/dist/esm/Type/Enum/EventIdentifier.js.map +1 -1
  171. package/dist/esm/Type/Enum/HttpRequestMethod.js +20 -0
  172. package/dist/esm/Type/Enum/HttpRequestMethod.js.map +1 -0
  173. package/dist/esm/Type/Enum/LogLevel.js +9 -0
  174. package/dist/esm/Type/Enum/LogLevel.js.map +1 -0
  175. package/dist/esm/Type/Enum/RequestProblemCategory.js +8 -0
  176. package/dist/esm/Type/Enum/RequestProblemCategory.js.map +1 -0
  177. package/dist/esm/Type/Enum/ServiceIdentifier.js +34 -1
  178. package/dist/esm/Type/Enum/ServiceIdentifier.js.map +1 -1
  179. package/dist/esm/Type/Enum/index.js +4 -0
  180. package/dist/esm/Type/Enum/index.js.map +1 -1
  181. package/dist/esm/index.js +6 -1
  182. package/dist/esm/index.js.map +1 -1
  183. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  184. package/dist/types/BrowserEvent/GetServiceResolverEvent.d.ts +2 -2
  185. package/dist/types/BrowserEventListener/index.d.ts +2 -0
  186. package/dist/types/Cache/Cache.d.ts +21 -0
  187. package/dist/types/Cache/CacheEntry.d.ts +5 -0
  188. package/dist/types/Cache/ElementCache.d.ts +11 -0
  189. package/dist/types/Cache/ElementChildrenCache.d.ts +10 -0
  190. package/dist/types/Cache/ElementParentsCache.d.ts +10 -0
  191. package/dist/types/Cache/ElementRelatedCache.d.ts +10 -0
  192. package/dist/types/Cache/IndexCache.d.ts +10 -0
  193. package/dist/types/Cache/index.d.ts +7 -0
  194. package/dist/types/Endpoint/Element/DeleteElementEndpoint.d.ts +18 -0
  195. package/dist/types/Endpoint/Element/GetElementChildrenEndpoint.d.ts +20 -0
  196. package/dist/types/Endpoint/Element/GetElementEndpoint.d.ts +19 -0
  197. package/dist/types/Endpoint/Element/GetElementParentsEndpoint.d.ts +22 -0
  198. package/dist/types/Endpoint/Element/GetElementRelatedEndpoint.d.ts +22 -0
  199. package/dist/types/Endpoint/Element/GetIndexEndpoint.d.ts +22 -0
  200. package/dist/types/Endpoint/Element/PatchElementEndpoint.d.ts +18 -0
  201. package/dist/types/Endpoint/Element/PostElementEndpoint.d.ts +18 -0
  202. package/dist/types/Endpoint/Element/PostIndexEndpoint.d.ts +18 -0
  203. package/dist/types/Endpoint/Element/PutElementEndpoint.d.ts +18 -0
  204. package/dist/types/Endpoint/Element/index.d.ts +10 -0
  205. package/dist/types/Endpoint/File/index.d.ts +0 -0
  206. package/dist/types/Endpoint/User/DeleteTokenEndpoint.d.ts +18 -0
  207. package/dist/types/Endpoint/User/GetMeEndpoint.d.ts +19 -0
  208. package/dist/types/Endpoint/User/GetTokenEndpoint.d.ts +19 -0
  209. package/dist/types/Endpoint/User/PostChangePasswordEndpoint.d.ts +18 -0
  210. package/dist/types/Endpoint/User/PostRegisterEndpoint.d.ts +18 -0
  211. package/dist/types/Endpoint/User/PostTokenEndpoint.d.ts +19 -0
  212. package/dist/types/Endpoint/User/index.d.ts +6 -0
  213. package/dist/types/Endpoint/WebDAV/index.d.ts +0 -0
  214. package/dist/types/Endpoint/index.d.ts +2 -0
  215. package/dist/types/Error/NetworkError.d.ts +8 -0
  216. package/dist/types/Error/Response401UnauthorizedError.d.ts +10 -0
  217. package/dist/types/Error/Response403ForbiddenError.d.ts +10 -0
  218. package/dist/types/Error/Response404NotFoundError.d.ts +10 -0
  219. package/dist/types/Error/Response429TooManyRequestsError.d.ts +10 -0
  220. package/dist/types/Error/ResponseError.d.ts +20 -0
  221. package/dist/types/Error/index.d.ts +6 -0
  222. package/dist/types/Event/NormalizedValueToRawValueEvent.d.ts +12 -0
  223. package/dist/types/Event/RawValueToNormalizedValueEvent.d.ts +12 -0
  224. package/dist/types/Event/index.d.ts +2 -0
  225. package/dist/types/EventListener/DateTimeNormalizedValueToRawValueEventListener.d.ts +10 -0
  226. package/dist/types/EventListener/DateTimeRawValueToNormalizedValueEventListener.d.ts +11 -0
  227. package/dist/types/EventListener/GenericNormalizedValueToRawValueEventListener.d.ts +10 -0
  228. package/dist/types/EventListener/GenericRawValueToNormalizedValueEventListener.d.ts +10 -0
  229. package/dist/types/EventListener/index.d.ts +5 -0
  230. package/dist/types/EventListener/initEventListener.d.ts +3 -0
  231. package/dist/types/Init.d.ts +1 -2
  232. package/dist/types/Service/ApiConfiguration.d.ts +30 -0
  233. package/dist/types/Service/ApiWrapper.d.ts +242 -0
  234. package/dist/types/Service/CollectionParser.d.ts +15 -0
  235. package/dist/types/Service/ElementParser.d.ts +12 -0
  236. package/dist/types/Service/EventDispatcher.d.ts +12 -6
  237. package/dist/types/Service/FetchHelper.d.ts +34 -0
  238. package/dist/types/Service/ServiceResolver.d.ts +2 -1
  239. package/dist/types/Service/TokenParser.d.ts +12 -0
  240. package/dist/types/Service/index.d.ts +6 -0
  241. package/dist/types/Type/Definition/Action.d.ts +1 -1
  242. package/dist/types/Type/Definition/Collection.d.ts +15 -0
  243. package/dist/types/Type/Definition/Data.d.ts +2 -0
  244. package/dist/types/Type/Definition/Element.d.ts +8 -0
  245. package/dist/types/Type/Definition/ElementCollection.d.ts +14 -0
  246. package/dist/types/Type/Definition/Event.d.ts +3 -18
  247. package/dist/types/Type/Definition/EventDispatcher.d.ts +5 -5
  248. package/dist/types/Type/Definition/EventIdentifier.d.ts +2 -2
  249. package/dist/types/Type/Definition/EventListener.d.ts +3 -1
  250. package/dist/types/Type/Definition/EventListenerTarget.d.ts +10 -0
  251. package/dist/types/Type/Definition/InstanceConfiguration.d.ts +14 -0
  252. package/dist/types/Type/Definition/Node.d.ts +3 -0
  253. package/dist/types/Type/Definition/NodeWithOptionalId.d.ts +6 -0
  254. package/dist/types/Type/Definition/PriorityRegistry.d.ts +1 -1
  255. package/dist/types/Type/Definition/Registry.d.ts +1 -1
  256. package/dist/types/Type/Definition/Relation.d.ts +7 -0
  257. package/dist/types/Type/Definition/RelationWithOptionalId.d.ts +6 -0
  258. package/dist/types/Type/Definition/RequestProblem.d.ts +10 -0
  259. package/dist/types/Type/Definition/Response/EmptyResponse.d.ts +4 -0
  260. package/dist/types/Type/Definition/Response/NotModifiedResponse.d.ts +4 -0
  261. package/dist/types/Type/Definition/Response/ParsedResponse.d.ts +5 -0
  262. package/dist/types/Type/Definition/Response/index.d.ts +3 -0
  263. package/dist/types/Type/Definition/ServiceIdentifier.d.ts +2 -2
  264. package/dist/types/Type/Definition/Token.d.ts +8 -0
  265. package/dist/types/Type/Definition/UniqueUserIdentifier.d.ts +7 -0
  266. package/dist/types/Type/Definition/Uuid.d.ts +8 -0
  267. package/dist/types/Type/Definition/WebSdkConfigurationInterface.d.ts +9 -0
  268. package/dist/types/Type/Definition/index.d.ts +16 -1
  269. package/dist/types/Type/Enum/BrowserEventIdentifier.d.ts +4 -0
  270. package/dist/types/Type/Enum/EventIdentifier.d.ts +2 -1
  271. package/dist/types/Type/Enum/HttpRequestMethod.d.ts +16 -0
  272. package/dist/types/Type/Enum/LogLevel.d.ts +7 -0
  273. package/dist/types/Type/Enum/RequestProblemCategory.d.ts +6 -0
  274. package/dist/types/Type/Enum/ServiceIdentifier.d.ts +29 -2
  275. package/dist/types/Type/Enum/index.d.ts +4 -0
  276. package/dist/types/index.d.ts +6 -1
  277. package/package.json +9 -13
  278. package/dist/esm/Type/Definition/EventListenerIdentifier.js +0 -20
  279. package/dist/esm/Type/Definition/EventListenerIdentifier.js.map +0 -1
  280. package/dist/types/Type/Definition/EventListenerIdentifier.d.ts +0 -10
@@ -0,0 +1,242 @@
1
+ import { ElementCache, ElementChildrenCache, ElementParentsCache, ElementRelatedCache, IndexCache } from '../Cache/index.js';
2
+ import { DeleteElementEndpoint, GetElementChildrenEndpoint, GetElementEndpoint, GetElementParentsEndpoint, GetElementRelatedEndpoint, GetIndexEndpoint, PatchElementEndpoint, PostElementEndpoint, PostIndexEndpoint, PutElementEndpoint } from '../Endpoint/Element/index.js';
3
+ import { DeleteTokenEndpoint, GetMeEndpoint, GetTokenEndpoint, PostChangePasswordEndpoint, PostRegisterEndpoint, PostTokenEndpoint } from '../Endpoint/User/index.js';
4
+ import { ServiceResolver } from '../Service/index.js';
5
+ import { Collection, Data, Node, NodeWithOptionalId, Relation, RelationWithOptionalId, Token, UniqueUserIdentifier, Uuid } from '../Type/Definition/index.js';
6
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
7
+ declare class ApiWrapper {
8
+ private getElementEndpoint;
9
+ private getElementChildrenEndpoint;
10
+ private getElementParentsEndpoint;
11
+ private getElementRelatedEndpoint;
12
+ private getIndexEndpoint;
13
+ private postIndexEndpoint;
14
+ private postElementEndpoint;
15
+ private putElementEndpoint;
16
+ private patchElementEndpoint;
17
+ private deleteElementEndpoint;
18
+ private postRegisterEndpoint;
19
+ private postChangePasswordEndpoint;
20
+ private getMeEndpoint;
21
+ private postTokenEndpoint;
22
+ private getTokenEndpoint;
23
+ private deleteTokenEndpoint;
24
+ private elementCache;
25
+ private elementChildrenCache;
26
+ private elementParentsCache;
27
+ private elementRelatedCache;
28
+ private indexCache;
29
+ static identifier: ServiceIdentifier;
30
+ constructor(getElementEndpoint: GetElementEndpoint, getElementChildrenEndpoint: GetElementChildrenEndpoint, getElementParentsEndpoint: GetElementParentsEndpoint, getElementRelatedEndpoint: GetElementRelatedEndpoint, getIndexEndpoint: GetIndexEndpoint, postIndexEndpoint: PostIndexEndpoint, postElementEndpoint: PostElementEndpoint, putElementEndpoint: PutElementEndpoint, patchElementEndpoint: PatchElementEndpoint, deleteElementEndpoint: DeleteElementEndpoint, postRegisterEndpoint: PostRegisterEndpoint, postChangePasswordEndpoint: PostChangePasswordEndpoint, getMeEndpoint: GetMeEndpoint, postTokenEndpoint: PostTokenEndpoint, getTokenEndpoint: GetTokenEndpoint, deleteTokenEndpoint: DeleteTokenEndpoint, elementCache: ElementCache, elementChildrenCache: ElementChildrenCache, elementParentsCache: ElementParentsCache, elementRelatedCache: ElementRelatedCache, indexCache: IndexCache);
31
+ static constructFromServiceResolver(serviceResolver: ServiceResolver): ApiWrapper;
32
+ /**
33
+ * Returns a node or relation by its identifier.
34
+ *
35
+ * If cached, the element is returned immediately. Otherwise, it is fetched via the API.
36
+ * The element cache is always kept in sync with the latest local state.
37
+ *
38
+ * Set the `forceLoad` flag to `true` to force an API request, bypassing the cache.
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
43
+ * const element = await apiWrapper.getElement('56cca4fa-b270-45ca-8209-845368e7fc07');
44
+ * ```
45
+ *
46
+ * @see [Ember Nexus API: Get element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/get-element)
47
+ */
48
+ getElement(elementId: Uuid, { forceLoad, }?: {
49
+ forceLoad?: boolean;
50
+ }): Promise<Node | Relation>;
51
+ /**
52
+ * Returns all children of a parent node and all relations between the parent node and them by specifying the parent
53
+ * identifier. Data is returned as a paginated collection object.
54
+ *
55
+ * If cached, the collection is returned immediately. Otherwise, it is fetched via the API.
56
+ * The collection cache might contain outdated local state.
57
+ *
58
+ * Set the `forceLoad` flag to `true` to force an API request, bypassing the cache.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
63
+ * const collection = await apiWrapper.getElementChildren('56cca4fa-b270-45ca-8209-845368e7fc07');
64
+ * ```
65
+ *
66
+ * @see [Ember Nexus API: Get element children endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/get-children)
67
+ */
68
+ getElementChildren(parentId: Uuid, { page, pageSize, forceLoad, }?: {
69
+ page?: number;
70
+ pageSize?: number;
71
+ forceLoad?: boolean;
72
+ }): Promise<Collection>;
73
+ /**
74
+ * Returns all parents of a child node and all relations between the child node and them by specifying the child
75
+ * identifier. Data is returned as a paginated collection object.
76
+ *
77
+ * If cached, the collection is returned immediately. Otherwise, it is fetched via the API.
78
+ * The collection cache might contain outdated local state.
79
+ *
80
+ * Set the `forceLoad` flag to `true` to force an API request, bypassing the cache.
81
+ *
82
+ * @example
83
+ * ```ts
84
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
85
+ * const collection = await apiWrapper.getElementParents('56cca4fa-b270-45ca-8209-845368e7fc07');
86
+ * ```
87
+ *
88
+ * @see [Ember Nexus API: Get element parents endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/get-parents)
89
+ */
90
+ getElementParents(childId: Uuid, { page, pageSize, forceLoad, }?: {
91
+ page?: number;
92
+ pageSize?: number;
93
+ forceLoad?: boolean;
94
+ }): Promise<Collection>;
95
+ /**
96
+ * Returns all related nodes of a central node and all relations between the central node and them by specifying the
97
+ * central identifier. Data is returned as a paginated collection object.
98
+ *
99
+ * If cached, the collection is returned immediately. Otherwise, it is fetched via the API.
100
+ * The collection cache might contain outdated local state.
101
+ *
102
+ * Set the `forceLoad` flag to `true` to force an API request, bypassing the cache.
103
+ *
104
+ * @example
105
+ * ```ts
106
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
107
+ * const collection = await apiWrapper.getElementRelated('56cca4fa-b270-45ca-8209-845368e7fc07');
108
+ * ```
109
+ *
110
+ * @see [Ember Nexus API: Get element related endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/get-related)
111
+ */
112
+ getElementRelated(centerId: Uuid, { page, pageSize, forceLoad, }?: {
113
+ page?: number;
114
+ pageSize?: number;
115
+ forceLoad?: boolean;
116
+ }): Promise<Collection>;
117
+ /**
118
+ * Returns all nodes on the root level.
119
+ * As this collection only returns nodes, no relations will be returned. Data is returned as a paginated collection
120
+ * object.
121
+ *
122
+ * If cached, the collection is returned immediately. Otherwise, it is fetched via the API.
123
+ * The collection cache might contain outdated local state.
124
+ *
125
+ * Set the `forceLoad` flag to `true` to force an API request, bypassing the cache.
126
+ *
127
+ * @example
128
+ * ```ts
129
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
130
+ * const collection = await apiWrapper.getIndex();
131
+ * ```
132
+ *
133
+ * @see [Ember Nexus API: Get index endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/get-index)
134
+ */
135
+ getIndex({ page, pageSize, forceLoad, }?: {
136
+ page?: number;
137
+ pageSize?: number;
138
+ forceLoad?: boolean;
139
+ }): Promise<Collection>;
140
+ /**
141
+ * Creates a new node or relation.
142
+ *
143
+ * If the created element is a node, it will become part of the root level, i.e. returned by the get index endpoint.
144
+ * Relations, on the other hand, will be created between their start and end nodes.
145
+ *
146
+ * @example
147
+ * ```ts
148
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
149
+ * const nodeId = await apiWrapper.postIndex({
150
+ * type: 'Data',
151
+ * data: {
152
+ * some: 'data'
153
+ * }
154
+ * });
155
+ * ```
156
+ *
157
+ * @see [Ember Nexus API: Create root level element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/post-index)
158
+ */
159
+ postIndex(element: NodeWithOptionalId | RelationWithOptionalId): Promise<Uuid>;
160
+ /**
161
+ * Creates a new node.
162
+ *
163
+ * The created node will be saved as a child of the referenced parent node.
164
+ *
165
+ * **Note**: This endpoint can not be used to create relations, as relations can not be the child of some parent.
166
+ *
167
+ * @example
168
+ * ```ts
169
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
170
+ * const nodeId = await apiWrapper.postElement(
171
+ * '3175a7a0-b510-4554-94b0-242badcf0d32',
172
+ * {
173
+ * type: 'Data',
174
+ * data: {
175
+ * some: 'data'
176
+ * }
177
+ * }
178
+ * );
179
+ * ```
180
+ *
181
+ * @see [Ember Nexus API: Create element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/post-element)
182
+ */
183
+ postElement(parentId: Uuid, element: NodeWithOptionalId): Promise<Uuid>;
184
+ /**
185
+ * Replaces an element's data.
186
+ *
187
+ * The provided data will replace the element's existing data.
188
+ *
189
+ * @example
190
+ * ```ts
191
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
192
+ * await apiWrapper.putElement(
193
+ * 'a22b1d7c-5970-4d93-8e86-f6a6f01ca172',
194
+ * {
195
+ * some: 'new data'
196
+ * }
197
+ * );
198
+ * ```
199
+ *
200
+ * @see [Ember Nexus API: Replace element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/put-element)
201
+ */
202
+ putElement(elementId: Uuid, data: Data): Promise<void>;
203
+ /**
204
+ * Updates an element.
205
+ *
206
+ * The provided data will be appended to the element's existing data. Existing properties will be overwritten if the
207
+ * new data contains identical property keys.
208
+ *
209
+ * @example
210
+ * ```ts
211
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
212
+ * await apiWrapper.patchElement(
213
+ * 'adc387a6-7f6c-49d5-a9fa-df3b5bf0c14f',
214
+ * {
215
+ * some: 'new data'
216
+ * }
217
+ * );
218
+ * ```
219
+ *
220
+ * @see [Ember Nexus API: Update element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/patch-element)
221
+ */
222
+ patchElement(elementId: Uuid, data: Data): Promise<void>;
223
+ /**
224
+ * Deletes an element.
225
+ *
226
+ * @example
227
+ * ```ts
228
+ * const apiWrapper = serviceResolver.getServiceOrFail<ApiWrapper>(ApiWrapper.identifier);
229
+ * await apiWrapper.deleteElement('f15abfb5-af82-45d0-96db-27766cbfd941');
230
+ * ```
231
+ *
232
+ * @see [Ember Nexus API: Delete element endpoint](https://ember-nexus.github.io/api/#/api-endpoints/element/delete-element)
233
+ */
234
+ deleteElement(elementId: Uuid): Promise<void>;
235
+ postRegister(uniqueUserIdentifier: UniqueUserIdentifier, password: string, data?: Data): Promise<Uuid>;
236
+ postChangePassword(uniqueUserIdentifier: UniqueUserIdentifier, currentPassword: string, newPassword: string): Promise<void>;
237
+ getMe(): Promise<Node>;
238
+ postToken(uniqueUserIdentifier: UniqueUserIdentifier, password: string, data?: Data): Promise<Token>;
239
+ getToken(): Promise<Node>;
240
+ deleteToken(): Promise<void>;
241
+ }
242
+ export { ApiWrapper };
@@ -0,0 +1,15 @@
1
+ import { ElementParser } from './ElementParser.js';
2
+ import { ServiceResolver } from './ServiceResolver.js';
3
+ import { Collection } from '../Type/Definition/index.js';
4
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
5
+ /**
6
+ * Class which helps to parse collections.
7
+ */
8
+ declare class CollectionParser {
9
+ private elementParser;
10
+ static identifier: ServiceIdentifier;
11
+ constructor(elementParser: ElementParser);
12
+ static constructFromServiceResolver(serviceResolver: ServiceResolver): CollectionParser;
13
+ deserializeCollection(rawCollection: object): Promise<Collection>;
14
+ }
15
+ export { CollectionParser };
@@ -0,0 +1,12 @@
1
+ import { EventDispatcher } from './EventDispatcher.js';
2
+ import { ServiceResolver } from './ServiceResolver.js';
3
+ import { Node, Relation } from '../Type/Definition/index.js';
4
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
5
+ declare class ElementParser {
6
+ private eventDispatcher;
7
+ static identifier: ServiceIdentifier;
8
+ constructor(eventDispatcher: EventDispatcher);
9
+ static constructFromServiceResolver(serviceResolver: ServiceResolver): ElementParser;
10
+ deserializeElement(element: object): Promise<Node | Relation>;
11
+ }
12
+ export { ElementParser };
@@ -1,12 +1,18 @@
1
- import { EventDispatcherInterface, EventInterface, EventListener, EventListenerIdentifier, LoggerInterface } from '../Type/Definition/index.js';
1
+ import { ServiceResolver } from './ServiceResolver.js';
2
+ import { EventDispatcherInterface, EventInterface, EventListener, EventListenerTarget, LoggerInterface } from '../Type/Definition/index.js';
3
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
2
4
  declare class EventDispatcher implements EventDispatcherInterface {
3
- private readonly entries;
4
5
  private logger;
6
+ static identifier: ServiceIdentifier;
7
+ private eventListenerTargets;
8
+ private isSilent;
5
9
  constructor(logger: LoggerInterface);
10
+ static constructFromServiceResolver(serviceResolver: ServiceResolver): EventDispatcher;
11
+ setSilent(silent: boolean): this;
6
12
  dispatchEvent(event: EventInterface): Promise<void>;
7
- addListener(eventListenerIdentifier: EventListenerIdentifier, eventListener: EventListener, priority?: number): this;
8
- removeListener(eventListenerIdentifier: EventListenerIdentifier, eventListener: EventListener): this;
9
- getListeners(eventListenerIdentifier: EventListenerIdentifier): EventListener[];
10
- hasListeners(eventListenerIdentifier: EventListenerIdentifier): boolean;
13
+ addListener(eventListenerTarget: EventListenerTarget, eventListener: EventListener, priority?: number): this;
14
+ removeListener(eventListenerTarget: EventListenerTarget, eventListener: EventListener): this;
15
+ getListeners(eventListenerTarget: EventListenerTarget): EventListener[];
16
+ hasListeners(eventListenerTarget: EventListenerTarget): boolean;
11
17
  }
12
18
  export { EventDispatcher };
@@ -0,0 +1,34 @@
1
+ import { ApiConfiguration } from './ApiConfiguration.js';
2
+ import { Logger } from './Logger.js';
3
+ import { ServiceResolver } from './ServiceResolver.js';
4
+ import { ResponseError } from '../Error/index.js';
5
+ import { Uuid } from '../Type/Definition/index.js';
6
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
7
+ /**
8
+ * Collection of different fetch helper methods.
9
+ */
10
+ declare class FetchHelper {
11
+ private logger;
12
+ private apiConfiguration;
13
+ static identifier: ServiceIdentifier;
14
+ constructor(logger: Logger, apiConfiguration: ApiConfiguration);
15
+ static constructFromServiceResolver(serviceResolver: ServiceResolver): FetchHelper;
16
+ rethrowErrorAsNetworkError(error: unknown): never;
17
+ logAndThrowError(error: unknown): never;
18
+ parseJsonResponse(response: Response): Promise<object>;
19
+ parseEmptyResponse(response: Response): Promise<void>;
20
+ parseLocationResponse(response: Response): Promise<Uuid>;
21
+ createResponseErrorFromBadResponse(response: Response, data: Record<string, unknown>): ResponseError;
22
+ addAuthorizationHeader(headers: HeadersInit): void;
23
+ addAcceptJsonAndProblemJsonHeader(headers: HeadersInit): void;
24
+ addIfNoneMatchHeader(headers: HeadersInit, etag: string): void;
25
+ addContentTypeJsonHeader(headers: HeadersInit): void;
26
+ getDefaultGetOptions(etag?: string): RequestInit;
27
+ getDefaultDeleteOptions(): RequestInit;
28
+ getDefaultPostOptions(body: string): RequestInit;
29
+ getDefaultPatchOptions(body: string): RequestInit;
30
+ getDefaultPutOptions(body: string): RequestInit;
31
+ buildUrl(url: string): string;
32
+ runWrappedFetch(url: string, init?: RequestInit | undefined): Promise<Response>;
33
+ }
34
+ export { FetchHelper };
@@ -3,7 +3,8 @@ declare class ServiceResolver {
3
3
  private readonly services;
4
4
  constructor();
5
5
  hasService(serviceIdentifier: ServiceIdentifier): boolean;
6
- getService(serviceIdentifier: ServiceIdentifier): null | unknown;
6
+ getService<T = unknown>(serviceIdentifier: ServiceIdentifier): null | T;
7
+ getServiceOrFail<T = unknown>(serviceIdentifier: ServiceIdentifier): T;
7
8
  setService(serviceIdentifier: ServiceIdentifier, service: unknown): ServiceResolver;
8
9
  deleteService(serviceIdentifier: ServiceIdentifier): ServiceResolver;
9
10
  getServiceIdentifiers(): ServiceIdentifier[];
@@ -0,0 +1,12 @@
1
+ import { Token } from '../Type/Definition/index.js';
2
+ import { ServiceIdentifier } from '../Type/Enum/index.js';
3
+ /**
4
+ * Class which helps to parse tokens.
5
+ */
6
+ declare class TokenParser {
7
+ static identifier: ServiceIdentifier;
8
+ constructor();
9
+ static constructFromServiceResolver(): TokenParser;
10
+ rawTokenToToken(token: object): Token;
11
+ }
12
+ export { TokenParser };
@@ -1,3 +1,9 @@
1
+ export * from './ApiConfiguration.js';
2
+ export * from './ApiWrapper.js';
3
+ export * from './CollectionParser.js';
4
+ export * from './ElementParser.js';
1
5
  export * from './EventDispatcher.js';
6
+ export * from './FetchHelper.js';
2
7
  export * from './Logger.js';
3
8
  export * from './ServiceResolver.js';
9
+ export * from './TokenParser.js';
@@ -10,4 +10,4 @@ interface Action<T = unknown, C = object> {
10
10
  supports(data: unknown): boolean;
11
11
  execute(data: unknown, configuration?: C): Promise<T>;
12
12
  }
13
- export { ActionManifest, Action };
13
+ export { Action, ActionManifest };
@@ -0,0 +1,15 @@
1
+ import { Node } from './Node.js';
2
+ import { Relation } from './Relation.js';
3
+ type Collection = {
4
+ id: string;
5
+ totalNodes: number;
6
+ links: {
7
+ first: string;
8
+ previous: string | null;
9
+ next: string | null;
10
+ last: string;
11
+ };
12
+ nodes: Array<Node>;
13
+ relations: Array<Relation>;
14
+ };
15
+ export { Collection };
@@ -0,0 +1,2 @@
1
+ type Data = Record<string, unknown>;
2
+ export { Data };
@@ -0,0 +1,8 @@
1
+ import { Data } from './Data.js';
2
+ import { Uuid } from './Uuid.js';
3
+ type Element = {
4
+ type: string;
5
+ id: Uuid;
6
+ data: Data;
7
+ };
8
+ export { Element };
@@ -0,0 +1,14 @@
1
+ import { Node } from './Node.js';
2
+ import { Relation } from './Relation.js';
3
+ type ElementCollection = {
4
+ id: string;
5
+ totalNodes: number;
6
+ links: {
7
+ first: string;
8
+ previous: string | null;
9
+ next: string | null;
10
+ last: string;
11
+ };
12
+ elements: Array<Node | Relation>;
13
+ };
14
+ export { ElementCollection };
@@ -3,28 +3,13 @@ interface EventInterface {
3
3
  getIdentifier(): EventIdentifier;
4
4
  isPropagationStopped(): boolean;
5
5
  stopPropagation(): this;
6
- getContextValue(key: string): unknown;
7
- setContextValue(key: string, value: unknown): this;
8
- hasContextValue(key: string): boolean;
9
- clearContextValue(key: string): this;
10
- getContext(): Readonly<Record<string, unknown>>;
11
- setContext(context: Record<string, unknown>): this;
12
- clearContext(): this;
13
6
  }
14
- declare class Event implements EventInterface {
7
+ declare abstract class Event implements EventInterface {
15
8
  private readonly identifier;
16
9
  private stopped;
17
- private context;
18
- constructor(identifier: EventIdentifier, context?: Record<string, unknown>);
10
+ protected constructor(identifier: EventIdentifier);
19
11
  getIdentifier(): EventIdentifier;
20
12
  isPropagationStopped(): boolean;
21
13
  stopPropagation(): this;
22
- getContextValue(key: string): unknown;
23
- setContextValue(key: string, value: unknown): this;
24
- hasContextValue(key: string): boolean;
25
- clearContextValue(key: string): this;
26
- getContext(): Readonly<Record<string, unknown>>;
27
- setContext(context: Record<string, unknown>): this;
28
- clearContext(): this;
29
14
  }
30
- export { EventInterface, Event };
15
+ export { Event, EventInterface };
@@ -1,11 +1,11 @@
1
1
  import { EventInterface } from './Event.js';
2
2
  import { EventListener } from './EventListener.js';
3
- import { EventListenerIdentifier } from './EventListenerIdentifier.js';
3
+ import { EventListenerTarget } from './EventListenerTarget.js';
4
4
  interface EventDispatcherInterface {
5
5
  dispatchEvent(event: EventInterface): Promise<void>;
6
- addListener(eventListenerIdentifier: EventListenerIdentifier, eventListener: EventListener, priority?: number): this;
7
- removeListener(eventListenerIdentifier: EventListenerIdentifier, eventListener: EventListener): this;
8
- getListeners(eventListenerIdentifier: EventListenerIdentifier): EventListener[];
9
- hasListeners(eventListenerIdentifier: EventListenerIdentifier): boolean;
6
+ addListener(eventListenerIdentifier: EventListenerTarget, eventListener: EventListener, priority?: number): this;
7
+ removeListener(eventListenerIdentifier: EventListenerTarget, eventListener: EventListener): this;
8
+ getListeners(eventListenerIdentifier: EventListenerTarget): EventListener[];
9
+ hasListeners(eventListenerIdentifier: EventListenerTarget): boolean;
10
10
  }
11
11
  export { EventDispatcherInterface };
@@ -2,7 +2,7 @@ import { Branded } from './Branded.js';
2
2
  /**
3
3
  * Type safe variant of string containing event identifier.
4
4
  */
5
- type EventIdentifier = Branded<string, 'eventIdentifier'>;
5
+ type EventIdentifier = Branded<string, 'eventIdentifier'> | string;
6
6
  declare const eventIdentifierRegex: RegExp;
7
7
  declare function validateEventIdentifierFromString(eventIdentifier: string): EventIdentifier;
8
- export { EventIdentifier, validateEventIdentifierFromString, eventIdentifierRegex };
8
+ export { EventIdentifier, eventIdentifierRegex, validateEventIdentifierFromString };
@@ -1,4 +1,6 @@
1
1
  import { EventInterface } from './Event.js';
2
2
  import { OptionalPromise } from './OptionalPromise.js';
3
- type EventListener = (event: EventInterface) => OptionalPromise<void>;
3
+ interface EventListener<EventType extends EventInterface = EventInterface> {
4
+ onEvent(event: EventType): OptionalPromise<void>;
5
+ }
4
6
  export { EventListener };
@@ -0,0 +1,10 @@
1
+ import { Branded } from './Branded.js';
2
+ import { EventIdentifier } from './EventIdentifier.js';
3
+ /**
4
+ * Type safe variant of string containing event identifier.
5
+ */
6
+ type EventListenerTarget = Branded<string, 'eventListenerIdentifier'> | string;
7
+ declare const eventListenerTargetRegex: RegExp;
8
+ declare function validateEventListenerTargetFromString(eventListenerIdentifier: string): EventListenerTarget;
9
+ declare function getEventListenerTargetsFromEventIdentifier(eventIdentifier: EventIdentifier): EventListenerTarget[];
10
+ export { EventListenerTarget, eventListenerTargetRegex, getEventListenerTargetsFromEventIdentifier, validateEventListenerTargetFromString, };
@@ -0,0 +1,14 @@
1
+ type InstanceConfiguration = {
2
+ version: string;
3
+ pageSize: {
4
+ min: number;
5
+ default: number;
6
+ max: number;
7
+ };
8
+ register: {
9
+ enabled: boolean;
10
+ uniqueIdentifier: string;
11
+ uniqueIdentifierRegex: string | false;
12
+ };
13
+ } | null;
14
+ export { InstanceConfiguration };
@@ -0,0 +1,3 @@
1
+ import { Element } from './Element.js';
2
+ type Node = Element;
3
+ export { Node };
@@ -0,0 +1,6 @@
1
+ import { Node } from './Node.js';
2
+ /**
3
+ * Node with optional id.
4
+ */
5
+ type NodeWithOptionalId = Omit<Node, 'id'> & Pick<Partial<Node>, 'id'>;
6
+ export { NodeWithOptionalId };
@@ -16,4 +16,4 @@ declare class PriorityRegistry<T = unknown> implements PriorityRegistryInterface
16
16
  setEntry(key: string, entry: T, priority?: number): this;
17
17
  getAllEntriesForKey(key: string): T[] | null;
18
18
  }
19
- export { PriorityRegistryInterface, PriorityRegistry };
19
+ export { PriorityRegistry, PriorityRegistryInterface };
@@ -13,4 +13,4 @@ declare class Registry<T = unknown> implements RegistryInterface<T> {
13
13
  hasEntry(key: string): boolean;
14
14
  setEntry(key: string, entry: T): this;
15
15
  }
16
- export { RegistryInterface, Registry };
16
+ export { Registry, RegistryInterface };
@@ -0,0 +1,7 @@
1
+ import { Element } from './Element.js';
2
+ import { Uuid } from './Uuid.js';
3
+ type Relation = Element & {
4
+ start: Uuid;
5
+ end: Uuid;
6
+ };
7
+ export { Relation };
@@ -0,0 +1,6 @@
1
+ import { Relation } from './Relation.js';
2
+ /**
3
+ * Relation with optional id.
4
+ */
5
+ type RelationWithOptionalId = Omit<Relation, 'id'> & Pick<Partial<Relation>, 'id'>;
6
+ export { RelationWithOptionalId };
@@ -0,0 +1,10 @@
1
+ import { RequestProblemCategory } from '../Enum/index.js';
2
+ type RequestProblem = {
3
+ category: RequestProblemCategory;
4
+ type?: string;
5
+ title: string;
6
+ status?: number;
7
+ detail: string;
8
+ exception?: Record<string, unknown>;
9
+ };
10
+ export { RequestProblem };
@@ -0,0 +1,4 @@
1
+ type EmptyResponse = {
2
+ response: Response;
3
+ };
4
+ export { EmptyResponse };
@@ -0,0 +1,4 @@
1
+ type NotModifiedResponse = {
2
+ response: Response;
3
+ };
4
+ export { NotModifiedResponse };
@@ -0,0 +1,5 @@
1
+ type ParsedResponse<T> = {
2
+ response: Response;
3
+ data: T;
4
+ };
5
+ export { ParsedResponse };
@@ -0,0 +1,3 @@
1
+ export * from './EmptyResponse.js';
2
+ export * from './NotModifiedResponse.js';
3
+ export * from './ParsedResponse.js';
@@ -2,7 +2,7 @@ import { Branded } from './Branded.js';
2
2
  /**
3
3
  * Type safe variant of string containing service identifier.
4
4
  */
5
- type ServiceIdentifier = Branded<string, 'serviceIdentifier'>;
5
+ type ServiceIdentifier = Branded<string, 'serviceIdentifier'> | string;
6
6
  declare const serviceIdentifierRegex: RegExp;
7
7
  declare function validateServiceIdentifierFromString(serviceIdentifier: string): ServiceIdentifier;
8
- export { ServiceIdentifier, validateServiceIdentifierFromString, serviceIdentifierRegex };
8
+ export { ServiceIdentifier, serviceIdentifierRegex, validateServiceIdentifierFromString };
@@ -0,0 +1,8 @@
1
+ import { Branded } from './Branded.js';
2
+ /**
3
+ * Type safe variant of string containing single token.
4
+ */
5
+ type Token = Branded<string, 'Token'>;
6
+ declare const tokenRegex: RegExp;
7
+ declare function validateTokenFromString(token: string): Token;
8
+ export { Token, tokenRegex, validateTokenFromString };
@@ -0,0 +1,7 @@
1
+ import { Branded } from './Branded.js';
2
+ /**
3
+ * Type safe variant of string containing single user unique identifier, usually the user's email address.
4
+ */
5
+ type UniqueUserIdentifier = Branded<string, 'UniqueUserIdentifier'>;
6
+ declare function createUniqueUserIdentifierFromString(uniqueUserIdentifier: string): UniqueUserIdentifier;
7
+ export { createUniqueUserIdentifierFromString, UniqueUserIdentifier };
@@ -0,0 +1,8 @@
1
+ import { Branded } from './Branded.js';
2
+ /**
3
+ * Type safe variant of string containing single UUIDv4.
4
+ */
5
+ type Uuid = Branded<string, 'UUID'> | string;
6
+ declare const uuidv4Regex: RegExp;
7
+ declare function validateUuidFromString(uuid: string): Uuid;
8
+ export { Uuid, uuidv4Regex, validateUuidFromString };