@webda/core 2.4.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/lib/application.d.ts +171 -34
  2. package/lib/application.js +243 -47
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +44 -8
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +113 -54
  7. package/lib/core.js +222 -135
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +87 -43
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/errors.d.ts +65 -0
  12. package/lib/errors.js +113 -0
  13. package/lib/errors.js.map +1 -0
  14. package/lib/errors.spec.d.ts +1 -0
  15. package/lib/errors.spec.js +33 -0
  16. package/lib/errors.spec.js.map +1 -0
  17. package/lib/index.d.ts +3 -0
  18. package/lib/index.js +3 -0
  19. package/lib/index.js.map +1 -1
  20. package/lib/models/aclmodel.d.ts +4 -4
  21. package/lib/models/aclmodel.js +10 -6
  22. package/lib/models/aclmodel.js.map +1 -1
  23. package/lib/models/aclmodel.spec.js +33 -24
  24. package/lib/models/aclmodel.spec.js.map +1 -1
  25. package/lib/models/coremodel.d.ts +284 -92
  26. package/lib/models/coremodel.js +403 -103
  27. package/lib/models/coremodel.js.map +1 -1
  28. package/lib/models/coremodel.spec.js +162 -24
  29. package/lib/models/coremodel.spec.js.map +1 -1
  30. package/lib/models/ident.d.ts +20 -6
  31. package/lib/models/ident.js.map +1 -1
  32. package/lib/models/ownermodel.d.ts +13 -23
  33. package/lib/models/ownermodel.js +24 -51
  34. package/lib/models/ownermodel.js.map +1 -1
  35. package/lib/models/ownermodel.spec.js +23 -11
  36. package/lib/models/ownermodel.spec.js.map +1 -1
  37. package/lib/models/relations.d.ts +167 -0
  38. package/lib/models/relations.js +113 -0
  39. package/lib/models/relations.js.map +1 -0
  40. package/lib/models/rolemodel.d.ts +3 -3
  41. package/lib/models/rolemodel.js +6 -6
  42. package/lib/models/rolemodel.js.map +1 -1
  43. package/lib/models/rolemodel.spec.js +12 -12
  44. package/lib/models/rolemodel.spec.js.map +1 -1
  45. package/lib/models/user.d.ts +40 -24
  46. package/lib/models/user.js +74 -48
  47. package/lib/models/user.js.map +1 -1
  48. package/lib/models/user.spec.js +24 -4
  49. package/lib/models/user.spec.js.map +1 -1
  50. package/lib/queues/memoryqueue.spec.js +9 -5
  51. package/lib/queues/memoryqueue.spec.js.map +1 -1
  52. package/lib/queues/queueservice.js.map +1 -1
  53. package/lib/router.d.ts +17 -8
  54. package/lib/router.js +81 -9
  55. package/lib/router.js.map +1 -1
  56. package/lib/router.spec.js +89 -5
  57. package/lib/router.spec.js.map +1 -1
  58. package/lib/services/asyncevents.spec.js +4 -4
  59. package/lib/services/authentication.d.ts +21 -22
  60. package/lib/services/authentication.js +90 -109
  61. package/lib/services/authentication.js.map +1 -1
  62. package/lib/services/authentication.spec.js +51 -65
  63. package/lib/services/authentication.spec.js.map +1 -1
  64. package/lib/services/binary.d.ts +132 -31
  65. package/lib/services/binary.js +257 -72
  66. package/lib/services/binary.js.map +1 -1
  67. package/lib/services/binary.spec.d.ts +16 -6
  68. package/lib/services/binary.spec.js +44 -117
  69. package/lib/services/binary.spec.js.map +1 -1
  70. package/lib/services/cloudbinary.d.ts +9 -10
  71. package/lib/services/cloudbinary.js +14 -15
  72. package/lib/services/cloudbinary.js.map +1 -1
  73. package/lib/services/cloudbinary.spec.d.ts +2 -2
  74. package/lib/services/cloudbinary.spec.js +13 -12
  75. package/lib/services/cloudbinary.spec.js.map +1 -1
  76. package/lib/services/configuration.js +9 -9
  77. package/lib/services/configuration.js.map +1 -1
  78. package/lib/services/configuration.spec.js +5 -7
  79. package/lib/services/configuration.spec.js.map +1 -1
  80. package/lib/services/cron.spec.js +3 -4
  81. package/lib/services/cron.spec.js.map +1 -1
  82. package/lib/services/cryptoservice.d.ts +2 -2
  83. package/lib/services/cryptoservice.js +5 -2
  84. package/lib/services/cryptoservice.js.map +1 -1
  85. package/lib/services/domainservice.d.ts +113 -0
  86. package/lib/services/domainservice.js +357 -0
  87. package/lib/services/domainservice.js.map +1 -0
  88. package/lib/services/domainservice.spec.d.ts +1 -0
  89. package/lib/services/domainservice.spec.js +334 -0
  90. package/lib/services/domainservice.spec.js.map +1 -0
  91. package/lib/services/echo.d.ts +2 -2
  92. package/lib/services/echo.js.map +1 -1
  93. package/lib/services/echo.spec.js +9 -2
  94. package/lib/services/echo.spec.js.map +1 -1
  95. package/lib/services/filebinary.d.ts +13 -14
  96. package/lib/services/filebinary.js +79 -73
  97. package/lib/services/filebinary.js.map +1 -1
  98. package/lib/services/filebinary.spec.d.ts +5 -0
  99. package/lib/services/filebinary.spec.js +222 -11
  100. package/lib/services/filebinary.spec.js.map +1 -1
  101. package/lib/services/fileconfiguration.js +7 -7
  102. package/lib/services/fileconfiguration.js.map +1 -1
  103. package/lib/services/fileconfiguration.spec.js +23 -24
  104. package/lib/services/fileconfiguration.spec.js.map +1 -1
  105. package/lib/services/invitationservice.d.ts +11 -9
  106. package/lib/services/invitationservice.js +17 -23
  107. package/lib/services/invitationservice.js.map +1 -1
  108. package/lib/services/invitationservice.spec.js +43 -40
  109. package/lib/services/invitationservice.spec.js.map +1 -1
  110. package/lib/services/kubernetesconfiguration.js +12 -22
  111. package/lib/services/kubernetesconfiguration.js.map +1 -1
  112. package/lib/services/kubernetesconfiguration.spec.js +1 -6
  113. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  114. package/lib/services/mailer.js +1 -1
  115. package/lib/services/mailer.js.map +1 -1
  116. package/lib/services/mailer.spec.js +4 -1
  117. package/lib/services/mailer.spec.js.map +1 -1
  118. package/lib/services/oauth.d.ts +17 -9
  119. package/lib/services/oauth.js +30 -4
  120. package/lib/services/oauth.js.map +1 -1
  121. package/lib/services/oauth.spec.js +32 -15
  122. package/lib/services/oauth.spec.js.map +1 -1
  123. package/lib/services/prometheus.spec.js.map +1 -1
  124. package/lib/services/proxy.d.ts +9 -8
  125. package/lib/services/proxy.js +65 -36
  126. package/lib/services/proxy.js.map +1 -1
  127. package/lib/services/proxy.spec.js +28 -2
  128. package/lib/services/proxy.spec.js.map +1 -1
  129. package/lib/services/resource.d.ts +3 -3
  130. package/lib/services/resource.js +4 -3
  131. package/lib/services/resource.js.map +1 -1
  132. package/lib/services/resource.spec.js +3 -3
  133. package/lib/services/resource.spec.js.map +1 -1
  134. package/lib/services/service.d.ts +10 -13
  135. package/lib/services/service.js +29 -13
  136. package/lib/services/service.js.map +1 -1
  137. package/lib/services/service.spec.js +49 -11
  138. package/lib/services/service.spec.js.map +1 -1
  139. package/lib/services/version.d.ts +2 -2
  140. package/lib/services/version.js.map +1 -1
  141. package/lib/stores/aggregator.js +1 -0
  142. package/lib/stores/aggregator.js.map +1 -1
  143. package/lib/stores/aliasstore.d.ts +2 -2
  144. package/lib/stores/aliasstore.js +15 -4
  145. package/lib/stores/aliasstore.js.map +1 -1
  146. package/lib/stores/aliasstore.spec.js +4 -2
  147. package/lib/stores/aliasstore.spec.js.map +1 -1
  148. package/lib/stores/file.d.ts +5 -2
  149. package/lib/stores/file.js +11 -8
  150. package/lib/stores/file.js.map +1 -1
  151. package/lib/stores/file.spec.js +21 -34
  152. package/lib/stores/file.spec.js.map +1 -1
  153. package/lib/stores/mapper.d.ts +4 -2
  154. package/lib/stores/mapper.js +18 -11
  155. package/lib/stores/mapper.js.map +1 -1
  156. package/lib/stores/mapper.spec.js +6 -3
  157. package/lib/stores/mapper.spec.js.map +1 -1
  158. package/lib/stores/memory.d.ts +5 -2
  159. package/lib/stores/memory.js +11 -9
  160. package/lib/stores/memory.js.map +1 -1
  161. package/lib/stores/memory.spec.d.ts +3 -0
  162. package/lib/stores/memory.spec.js +100 -11
  163. package/lib/stores/memory.spec.js.map +1 -1
  164. package/lib/stores/store.d.ts +177 -87
  165. package/lib/stores/store.js +312 -141
  166. package/lib/stores/store.js.map +1 -1
  167. package/lib/stores/store.spec.d.ts +2 -2
  168. package/lib/stores/store.spec.js +54 -38
  169. package/lib/stores/store.spec.js.map +1 -1
  170. package/lib/stores/webdaql/WebdaQLLexer.d.ts +14 -13
  171. package/lib/stores/webdaql/WebdaQLLexer.js +121 -112
  172. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
  173. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +14 -13
  174. package/lib/stores/webdaql/WebdaQLParserLexer.js +121 -112
  175. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
  176. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +15 -3
  177. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +23 -13
  178. package/lib/stores/webdaql/WebdaQLParserParser.js +149 -94
  179. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
  180. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +9 -2
  181. package/lib/stores/webdaql/query.d.ts +6 -2
  182. package/lib/stores/webdaql/query.js +14 -1
  183. package/lib/stores/webdaql/query.js.map +1 -1
  184. package/lib/stores/webdaql/query.spec.js +10 -1
  185. package/lib/stores/webdaql/query.spec.js.map +1 -1
  186. package/lib/test.d.ts +48 -19
  187. package/lib/test.js +171 -63
  188. package/lib/test.js.map +1 -1
  189. package/lib/unpackedapplication.d.ts +5 -0
  190. package/lib/unpackedapplication.js +58 -10
  191. package/lib/unpackedapplication.js.map +1 -1
  192. package/lib/utils/context.d.ts +76 -29
  193. package/lib/utils/context.js +91 -55
  194. package/lib/utils/context.js.map +1 -1
  195. package/lib/utils/context.spec.d.ts +9 -1
  196. package/lib/utils/context.spec.js +73 -8
  197. package/lib/utils/context.spec.js.map +1 -1
  198. package/lib/utils/cookie.d.ts +4 -5
  199. package/lib/utils/cookie.js +1 -2
  200. package/lib/utils/cookie.js.map +1 -1
  201. package/lib/utils/cookie.spec.js +5 -3
  202. package/lib/utils/cookie.spec.js.map +1 -1
  203. package/lib/utils/httpcontext.spec.js +9 -3
  204. package/lib/utils/httpcontext.spec.js.map +1 -1
  205. package/lib/utils/serializers.d.ts +46 -17
  206. package/lib/utils/serializers.js +116 -2
  207. package/lib/utils/serializers.js.map +1 -1
  208. package/lib/utils/serializers.spec.js +84 -20
  209. package/lib/utils/serializers.spec.js.map +1 -1
  210. package/lib/utils/session.d.ts +14 -8
  211. package/lib/utils/session.js +14 -3
  212. package/lib/utils/session.js.map +1 -1
  213. package/lib/utils/session.spec.js +6 -1
  214. package/lib/utils/session.spec.js.map +1 -1
  215. package/package.json +16 -10
  216. package/test/cachedapp/webda.config.json +6 -1
  217. package/test/config-cached.json +5 -0
  218. package/test/config-file-missing-file.json +5 -7
  219. package/test/config-file-no-reload.json +5 -7
  220. package/test/config-file-reload.json +5 -7
  221. package/test/config-kube-reload.json +5 -11
  222. package/test/config-reload.json +2 -4
  223. package/test/config.json +12 -2
  224. package/test/moddas/voidstore.js +1 -1
  225. package/test/models/ident.js +6 -4
  226. package/test/models/task.js +4 -4
  227. package/webda.module.json +1587 -1266
@@ -1 +1 @@
1
- {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
package/lib/core.d.ts CHANGED
@@ -6,8 +6,8 @@ import * as events from "events";
6
6
  import { OpenAPIV3 } from "openapi-types";
7
7
  import { Counter, CounterConfiguration, Gauge, GaugeConfiguration, Histogram, HistogramConfiguration } from "prom-client";
8
8
  import { Writable } from "stream";
9
- import { Application, Configuration } from "./application.js";
10
- import { Context, HttpContext, Logger, OperationContext, Service, Store, WebContext } from "./index.js";
9
+ import { Application, Configuration, Modda } from "./application.js";
10
+ import { BinaryService, ContextProvider, ContextProviderInfo, GlobalContext, HttpContext, Logger, OperationContext, Service, Store, WebContext, WebdaQL } from "./index.js";
11
11
  import { Constructor, CoreModel, CoreModelDefinition } from "./models/coremodel.js";
12
12
  import { RouteInfo, Router } from "./router.js";
13
13
  import CryptoService from "./services/cryptoservice.js";
@@ -21,6 +21,14 @@ export declare class ValidationError extends Error {
21
21
  readonly validation: true;
22
22
  constructor(errors: Partial<ErrorObject>[]);
23
23
  }
24
+ /**
25
+ * Operation
26
+ */
27
+ export declare class OperationError extends Error {
28
+ operation: string;
29
+ type: "Unknown" | "PermissionDenied" | "InvalidInput";
30
+ constructor(operation: string, type: "Unknown" | "PermissionDenied" | "InvalidInput");
31
+ }
24
32
  /**
25
33
  * Define an operation within webda app
26
34
  */
@@ -52,52 +60,43 @@ export interface OperationDefinition {
52
60
  method: string;
53
61
  }
54
62
  /**
55
- *
56
- */
57
- export declare class RegistryEntry extends CoreModel {
58
- [key: string]: any;
59
- }
60
- /**
61
- * Error with a code
63
+ * Define an operation within webda app
62
64
  */
63
- export declare class WebdaError extends Error {
64
- code: string;
65
- /**
66
- *
67
- * @param code
68
- * @param message
69
- */
70
- constructor(code: string, message: string);
65
+ export interface OperationDefinitionInfo extends OperationDefinition {
71
66
  /**
72
- * Return error code
67
+ * Contains the parse permission query
73
68
  */
74
- getCode(): string;
69
+ permissionQuery?: WebdaQL.QueryValidator;
75
70
  }
71
+ /**
72
+ *
73
+ */
74
+ export type RegistryEntry<T = any> = CoreModel & T;
76
75
  /**
77
76
  * Ensure all events store the context in the same place
78
77
  */
79
- export interface EventWithContext {
80
- context: Context;
78
+ export interface EventWithContext<T extends OperationContext = OperationContext> {
79
+ context: T;
81
80
  }
82
81
  /**
83
82
  * RequestFilter allow a service which implement it to control incoming request
84
83
  *
85
84
  * If one of the filter replies with "true" then the request will go through
86
85
  */
87
- export interface RequestFilter<T extends Context = Context> {
86
+ export interface RequestFilter<T extends WebContext = WebContext> {
88
87
  /**
89
88
  * Return true if the request should be allowed
90
89
  *
91
90
  * @param context to check for
92
91
  */
93
- checkRequest(context: T): Promise<boolean>;
92
+ checkRequest(context: T, type: "CORS" | "AUTH"): Promise<boolean>;
94
93
  }
95
94
  /**
96
95
  * Filter request based on their origin
97
96
  *
98
97
  * @category CoreFeatures
99
98
  */
100
- export declare class OriginFilter implements RequestFilter<Context> {
99
+ export declare class OriginFilter implements RequestFilter<WebContext> {
101
100
  regexs: RegExp[];
102
101
  constructor(origins: string[]);
103
102
  /**
@@ -105,30 +104,30 @@ export declare class OriginFilter implements RequestFilter<Context> {
105
104
  * @param context
106
105
  * @returns
107
106
  */
108
- checkRequest(context: Context): Promise<boolean>;
107
+ checkRequest(context: WebContext): Promise<boolean>;
109
108
  }
110
109
  /**
111
110
  * Authorize requests based on the website
112
111
  */
113
- export declare class WebsiteOriginFilter implements RequestFilter<Context> {
112
+ export declare class WebsiteOriginFilter implements RequestFilter<WebContext> {
114
113
  websites: string[];
115
114
  constructor(website: any);
116
- checkRequest(context: Context): Promise<boolean>;
115
+ checkRequest(context: WebContext): Promise<boolean>;
117
116
  }
118
117
  export declare function Bean(constructor: Function): void;
119
118
  export type CoreEvents = {
120
119
  /**
121
120
  * Emitted when new result is sent
122
121
  */
123
- "Webda.Result": EventWithContext;
122
+ "Webda.Result": EventWithContext<WebContext>;
124
123
  /**
125
124
  * Emitted when new request comes in
126
125
  */
127
- "Webda.Request": EventWithContext;
126
+ "Webda.Request": EventWithContext<WebContext>;
128
127
  /**
129
128
  * Emitted when a request does not match any route
130
129
  */
131
- "Webda.404": EventWithContext;
130
+ "Webda.404": EventWithContext<WebContext>;
132
131
  /**
133
132
  * Emitted when Services have been initialized
134
133
  */
@@ -148,7 +147,10 @@ export type CoreEvents = {
148
147
  /**
149
148
  * Emitted whenever a new Context is created
150
149
  */
151
- "Webda.NewContext": Context;
150
+ "Webda.NewContext": {
151
+ context: OperationContext;
152
+ info: ContextProviderInfo;
153
+ };
152
154
  [key: string]: unknown;
153
155
  };
154
156
  type NoSchemaResult = null;
@@ -167,6 +169,12 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
167
169
  protected services: {
168
170
  [key: string]: Service;
169
171
  };
172
+ /**
173
+ * Webda Beans
174
+ */
175
+ protected beans: {
176
+ [key: string]: Modda;
177
+ };
170
178
  /**
171
179
  * Application that generates this Core
172
180
  */
@@ -230,14 +238,14 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
230
238
  * Added via [[Webda.registerRequestFilter]]
231
239
  * See [[CorsFilter]]
232
240
  */
233
- protected _requestFilters: RequestFilter<Context>[];
241
+ protected _requestFilters: RequestFilter<WebContext>[];
234
242
  /**
235
243
  * CORS Filter registry
236
244
  *
237
245
  * Added via [[Webda.registerCORSRequestFilter]]
238
246
  * See [[CorsFilter]]
239
247
  */
240
- protected _requestCORSFilters: RequestFilter<Context>[];
248
+ protected _requestCORSFilters: RequestFilter<WebContext>[];
241
249
  /**
242
250
  * Worker output
243
251
  *
@@ -260,12 +268,16 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
260
268
  * Contains all operations defined by services
261
269
  */
262
270
  protected operations: {
263
- [key: string]: OperationDefinition;
271
+ [key: string]: OperationDefinitionInfo;
264
272
  };
265
273
  /**
266
274
  * Cache for model to store resolution
267
275
  */
268
276
  private _modelStoresCache;
277
+ /**
278
+ * Cache for model to store resolution
279
+ */
280
+ private _modelBinariesCache;
269
281
  /**
270
282
  * Store the Core singleton
271
283
  *
@@ -277,6 +289,14 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
277
289
  * True if the dual import warning has been sent
278
290
  */
279
291
  private _dualImportWarn;
292
+ /**
293
+ * Registered context providers
294
+ */
295
+ private _contextProviders;
296
+ /**
297
+ * System context
298
+ */
299
+ protected globalContext: GlobalContext;
280
300
  /**
281
301
  * @params {Object} config - The configuration Object, if undefined will load the configuration file
282
302
  */
@@ -291,7 +311,14 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
291
311
  * @param model
292
312
  * @returns
293
313
  */
294
- getModelStore(model: Constructor<CoreModel> | CoreModel): Store<CoreModel, import("./index").StoreParameters, import("./index").StoreEvents>;
314
+ getModelStore<T extends CoreModel>(modelOrConstructor: Constructor<T> | T): Store<T>;
315
+ /**
316
+ * Get the service that manage a model
317
+ * @param modelOrConstructor
318
+ * @param attribute
319
+ * @returns
320
+ */
321
+ getBinaryStore<T extends CoreModel>(modelOrConstructor: Constructor<T> | T, attribute: string): BinaryService;
295
322
  /**
296
323
  * Return Core instance id
297
324
  *
@@ -347,6 +374,21 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
347
374
  * @param time ms
348
375
  */
349
376
  static sleep(time: any): Promise<void>;
377
+ /**
378
+ * Check if an operation can be executed with the current context
379
+ * Not checking the input use `checkOperation` instead to check everything
380
+ * @param context
381
+ * @param operationId
382
+ * @throws OperationError if operation is unknown
383
+ * @returns true if operation can be executed
384
+ */
385
+ checkOperationPermission(context: OperationContext, operationId: string): boolean;
386
+ /**
387
+ * Check if an operation can be executed with the current context
388
+ * @param context
389
+ * @param operationId
390
+ */
391
+ checkOperation(context: OperationContext, operationId: string): Promise<void>;
350
392
  /**
351
393
  * Call an operation within the framework
352
394
  */
@@ -370,14 +412,19 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
370
412
  * Will apply to all requests regardless of the devMode
371
413
  * @param filter
372
414
  */
373
- registerRequestFilter(filter: RequestFilter<Context>): void;
415
+ registerRequestFilter(filter: RequestFilter<WebContext>): void;
374
416
  /**
375
417
  * Register a CORS request filtering
376
418
  *
377
419
  * Does not apply in devMode
378
420
  * @param filter
379
421
  */
380
- registerCORSFilter(filter: RequestFilter<Context>): void;
422
+ registerCORSFilter(filter: RequestFilter<WebContext>): void;
423
+ /**
424
+ * Register a new context provider
425
+ * @param provider
426
+ */
427
+ registerContextProvider(provider: ContextProvider): void;
381
428
  /**
382
429
  * Validate the object with schema
383
430
  *
@@ -438,7 +485,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
438
485
  * @param type The type of implementation
439
486
  * @returns {{}}
440
487
  */
441
- getServicesOfType<T>(type?: Constructor<T>): {
488
+ getServicesOfType<T extends Service>(type?: Constructor<T, [Core, string, any]>): {
442
489
  [key: string]: T;
443
490
  };
444
491
  getConfiguration(): Configuration;
@@ -461,7 +508,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
461
508
  *
462
509
  * @param {String} name The model name to retrieve
463
510
  */
464
- getModel<T = any>(name: any): Constructor<T> | CoreModelDefinition;
511
+ getModel<T extends CoreModel = CoreModel>(name: any): CoreModelDefinition<T>;
465
512
  /**
466
513
  * Add to context information and executor based on the http context
467
514
  */
@@ -473,11 +520,11 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
473
520
  *
474
521
  * @abstract
475
522
  */
476
- flushHeaders(_context: Context): void;
523
+ flushHeaders(_context: WebContext): void;
477
524
  /**
478
525
  * Flush the entire response to the client
479
526
  */
480
- flush(_context: Context): void;
527
+ flush(_context: WebContext): void;
481
528
  /**
482
529
  * Return if Webda is in debug mode
483
530
  */
@@ -486,6 +533,16 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
486
533
  * Return the global parameters of a domain
487
534
  */
488
535
  getGlobalParams(): any;
536
+ /**
537
+ * Get the system context
538
+ * @returns
539
+ */
540
+ getGlobalContext(): GlobalContext;
541
+ /**
542
+ * Set the system context
543
+ * @param context
544
+ */
545
+ setGlobalContext(context: GlobalContext): void;
489
546
  /**
490
547
  * Reinit one service
491
548
  * @param service
@@ -514,11 +571,6 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
514
571
  *
515
572
  */
516
573
  protected createServices(excludes?: string[]): void;
517
- /**
518
- * Return all methods that are setters (startsWith("set"))
519
- * @param obj service get setter from
520
- */
521
- protected _getSetters(obj: any): any[];
522
574
  /**
523
575
  * A registry is a predefined store
524
576
  * @returns
@@ -529,15 +581,17 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
529
581
  * @returns
530
582
  */
531
583
  getCrypto(): CryptoService;
532
- /**
533
- * Auto connect services with setters
534
- */
535
- protected autoConnectServices(): void;
536
584
  protected jsonFilter(key: string, value: any): any;
537
585
  /**
538
586
  * Init services and Beans along with Routes
539
587
  */
540
588
  initStatics(): void;
589
+ /**
590
+ * Get a context based on the info
591
+ * @param info
592
+ * @returns
593
+ */
594
+ newContext<T extends OperationContext>(info: ContextProviderInfo, noInit?: boolean): Promise<OperationContext>;
541
595
  /**
542
596
  * Create a new context for a request
543
597
  *
@@ -546,7 +600,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
546
600
  * @param stream - The request output stream if any
547
601
  * @return A new context object to pass along
548
602
  */
549
- newContext<T extends Context>(httpContext: HttpContext, stream?: Writable, noInit?: boolean): Promise<T>;
603
+ newWebContext<T extends WebContext>(httpContext: HttpContext, stream?: Writable, noInit?: boolean): Promise<T>;
550
604
  /**
551
605
  * Convert an object to JSON using the Webda json filter
552
606
  *
@@ -593,13 +647,18 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
593
647
  *
594
648
  * @param context Context of the request
595
649
  */
596
- protected checkRequest(ctx: Context): Promise<boolean>;
650
+ protected checkRequest(ctx: WebContext): Promise<boolean>;
597
651
  /**
598
652
  * Verify if an origin is allowed to do request on the API
599
653
  *
600
654
  * @param context Context of the request
601
655
  */
602
- protected checkCORSRequest(ctx: Context): Promise<boolean>;
656
+ protected checkCORSRequest(ctx: WebContext): Promise<boolean>;
657
+ /**
658
+ * Export OpenAPI
659
+ * @param skipHidden
660
+ * @returns
661
+ */
603
662
  exportOpenAPI(skipHidden?: boolean): OpenAPIV3.Document;
604
663
  /**
605
664
  * Get a metric object
@@ -614,7 +673,7 @@ export declare class Core<E extends CoreEvents = CoreEvents> extends events.Even
614
673
  * @param configuration
615
674
  * @returns
616
675
  */
617
- getMetric<T = Gauge | Counter | Histogram>(type: Constructor<T>, configuration: MetricConfiguration<T>): T;
676
+ getMetric<T = Gauge | Counter | Histogram>(type: Constructor<T, [MetricConfiguration<T>]>, configuration: MetricConfiguration<T>): T;
618
677
  }
619
678
  /**
620
679
  * Generic type for metric