kuzzle 2.19.2 → 2.19.3

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 (289) hide show
  1. package/lib/api/controllers/adminController.js +94 -80
  2. package/lib/api/controllers/authController.js +239 -212
  3. package/lib/api/controllers/baseController.js +89 -51
  4. package/lib/api/controllers/bulkController.js +62 -49
  5. package/lib/api/controllers/clusterController.js +6 -8
  6. package/lib/api/controllers/collectionController.js +140 -129
  7. package/lib/api/controllers/debugController.d.ts +2 -2
  8. package/lib/api/controllers/debugController.js +33 -31
  9. package/lib/api/controllers/documentController.js +365 -274
  10. package/lib/api/controllers/index.js +13 -13
  11. package/lib/api/controllers/indexController.js +46 -50
  12. package/lib/api/controllers/memoryStorageController.js +410 -360
  13. package/lib/api/controllers/realtimeController.js +37 -36
  14. package/lib/api/controllers/securityController.js +553 -412
  15. package/lib/api/controllers/serverController.js +111 -104
  16. package/lib/api/documentExtractor.js +75 -68
  17. package/lib/api/funnel.js +411 -312
  18. package/lib/api/httpRoutes.js +1493 -324
  19. package/lib/api/openapi/OpenApiManager.d.ts +1 -1
  20. package/lib/api/openapi/OpenApiManager.js +22 -22
  21. package/lib/api/openapi/components/document/count.yaml +1 -1
  22. package/lib/api/openapi/components/document/create.yaml +2 -2
  23. package/lib/api/openapi/components/document/delete.yaml +1 -1
  24. package/lib/api/openapi/components/document/deleteByQuery.yaml +1 -1
  25. package/lib/api/openapi/components/document/exists.yaml +1 -1
  26. package/lib/api/openapi/components/document/get.yaml +2 -2
  27. package/lib/api/openapi/components/document/index.js +12 -12
  28. package/lib/api/openapi/components/document/replace.yaml +1 -1
  29. package/lib/api/openapi/components/document/scroll.yaml +1 -1
  30. package/lib/api/openapi/components/document/validate.yaml +1 -1
  31. package/lib/api/openapi/components/index.d.ts +2 -2
  32. package/lib/api/openapi/components/index.js +1 -1
  33. package/lib/api/openapi/components/security/index.js +1 -1
  34. package/lib/api/openapi/components/security/upsertUser.yaml +2 -3
  35. package/lib/api/openapi/index.d.ts +1 -1
  36. package/lib/api/openapi/openApiGenerator.d.ts +1 -1
  37. package/lib/api/openapi/openApiGenerator.js +7 -7
  38. package/lib/api/rateLimiter.js +12 -13
  39. package/lib/api/request/index.d.ts +4 -4
  40. package/lib/api/request/kuzzleRequest.d.ts +9 -9
  41. package/lib/api/request/kuzzleRequest.js +89 -87
  42. package/lib/api/request/requestContext.d.ts +2 -2
  43. package/lib/api/request/requestContext.js +17 -17
  44. package/lib/api/request/requestInput.d.ts +1 -1
  45. package/lib/api/request/requestInput.js +19 -19
  46. package/lib/api/request/requestResponse.d.ts +4 -4
  47. package/lib/api/request/requestResponse.js +31 -33
  48. package/lib/cluster/command.js +48 -44
  49. package/lib/cluster/idCardHandler.d.ts +1 -1
  50. package/lib/cluster/idCardHandler.js +15 -15
  51. package/lib/cluster/index.js +2 -2
  52. package/lib/cluster/node.js +301 -269
  53. package/lib/cluster/publisher.js +45 -46
  54. package/lib/cluster/state.d.ts +5 -5
  55. package/lib/cluster/state.js +8 -8
  56. package/lib/cluster/subscriber.js +163 -113
  57. package/lib/cluster/workers/IDCardRenewer.js +33 -32
  58. package/lib/config/default.config.d.ts +1 -1
  59. package/lib/config/default.config.js +212 -171
  60. package/lib/config/documentEventAliases.js +6 -6
  61. package/lib/config/index.js +161 -98
  62. package/lib/config/sdkCompatibility.json +8 -8
  63. package/lib/core/auth/formatProcessing.js +7 -7
  64. package/lib/core/auth/passportResponse.js +7 -7
  65. package/lib/core/auth/passportWrapper.js +34 -30
  66. package/lib/core/auth/tokenManager.d.ts +2 -2
  67. package/lib/core/auth/tokenManager.js +11 -10
  68. package/lib/core/backend/applicationManager.d.ts +1 -1
  69. package/lib/core/backend/applicationManager.js +2 -2
  70. package/lib/core/backend/backend.d.ts +3 -3
  71. package/lib/core/backend/backend.js +34 -31
  72. package/lib/core/backend/backendCluster.d.ts +2 -2
  73. package/lib/core/backend/backendCluster.js +5 -5
  74. package/lib/core/backend/backendConfig.d.ts +2 -2
  75. package/lib/core/backend/backendConfig.js +3 -3
  76. package/lib/core/backend/backendController.d.ts +2 -2
  77. package/lib/core/backend/backendController.js +9 -10
  78. package/lib/core/backend/backendErrors.d.ts +3 -3
  79. package/lib/core/backend/backendErrors.js +2 -1
  80. package/lib/core/backend/backendHook.d.ts +2 -2
  81. package/lib/core/backend/backendHook.js +5 -5
  82. package/lib/core/backend/backendImport.d.ts +3 -3
  83. package/lib/core/backend/backendImport.js +23 -23
  84. package/lib/core/backend/backendOpenApi.d.ts +2 -2
  85. package/lib/core/backend/backendOpenApi.js +16 -16
  86. package/lib/core/backend/backendPipe.d.ts +2 -2
  87. package/lib/core/backend/backendPipe.js +6 -6
  88. package/lib/core/backend/backendPlugin.d.ts +4 -4
  89. package/lib/core/backend/backendPlugin.js +14 -14
  90. package/lib/core/backend/backendStorage.d.ts +2 -2
  91. package/lib/core/backend/backendStorage.js +1 -2
  92. package/lib/core/backend/backendVault.d.ts +2 -2
  93. package/lib/core/backend/backendVault.js +3 -3
  94. package/lib/core/backend/index.d.ts +14 -14
  95. package/lib/core/backend/internalLogger.d.ts +1 -1
  96. package/lib/core/backend/internalLogger.js +5 -5
  97. package/lib/core/cache/cacheDbEnum.js +4 -4
  98. package/lib/core/cache/cacheEngine.js +79 -85
  99. package/lib/core/network/accessLogger.js +126 -120
  100. package/lib/core/network/clientConnection.js +5 -5
  101. package/lib/core/network/context.js +8 -8
  102. package/lib/core/network/entryPoint.js +100 -85
  103. package/lib/core/network/httpRouter/index.js +63 -60
  104. package/lib/core/network/httpRouter/routeHandler.js +18 -19
  105. package/lib/core/network/httpRouter/routePart.js +23 -19
  106. package/lib/core/network/protocolManifest.js +3 -3
  107. package/lib/core/network/protocols/httpMessage.js +8 -10
  108. package/lib/core/network/protocols/httpwsProtocol.js +305 -250
  109. package/lib/core/network/protocols/internalProtocol.js +27 -24
  110. package/lib/core/network/protocols/mqttProtocol.js +106 -96
  111. package/lib/core/network/protocols/protocol.js +20 -17
  112. package/lib/core/network/router.js +56 -46
  113. package/lib/core/plugin/plugin.js +151 -120
  114. package/lib/core/plugin/pluginContext.d.ts +7 -7
  115. package/lib/core/plugin/pluginContext.js +48 -44
  116. package/lib/core/plugin/pluginManifest.js +13 -12
  117. package/lib/core/plugin/pluginRepository.js +26 -27
  118. package/lib/core/plugin/pluginsManager.js +425 -304
  119. package/lib/core/plugin/privilegedContext.js +3 -3
  120. package/lib/core/realtime/actionEnum.js +1 -1
  121. package/lib/core/realtime/channel.d.ts +1 -1
  122. package/lib/core/realtime/channel.js +22 -22
  123. package/lib/core/realtime/connectionRooms.d.ts +1 -1
  124. package/lib/core/realtime/hotelClerk.d.ts +2 -2
  125. package/lib/core/realtime/hotelClerk.js +53 -50
  126. package/lib/core/realtime/index.js +5 -5
  127. package/lib/core/realtime/notification/document.js +25 -25
  128. package/lib/core/realtime/notification/index.js +4 -4
  129. package/lib/core/realtime/notification/server.js +3 -3
  130. package/lib/core/realtime/notification/user.js +4 -4
  131. package/lib/core/realtime/notifier.js +113 -75
  132. package/lib/core/realtime/room.d.ts +1 -1
  133. package/lib/core/realtime/subscription.d.ts +1 -1
  134. package/lib/core/realtime/subscription.js +1 -1
  135. package/lib/core/security/index.js +8 -8
  136. package/lib/core/security/profileRepository.d.ts +6 -6
  137. package/lib/core/security/profileRepository.js +48 -45
  138. package/lib/core/security/roleRepository.js +127 -115
  139. package/lib/core/security/securityLoader.js +70 -63
  140. package/lib/core/security/tokenRepository.js +132 -118
  141. package/lib/core/security/userRepository.js +104 -88
  142. package/lib/core/shared/KoncordeWrapper.d.ts +1 -1
  143. package/lib/core/shared/KoncordeWrapper.js +3 -1
  144. package/lib/core/shared/abstractManifest.js +22 -23
  145. package/lib/core/shared/repository.js +69 -67
  146. package/lib/core/shared/sdk/embeddedSdk.d.ts +2 -2
  147. package/lib/core/shared/sdk/embeddedSdk.js +36 -32
  148. package/lib/core/shared/sdk/funnelProtocol.d.ts +1 -1
  149. package/lib/core/shared/sdk/funnelProtocol.js +11 -11
  150. package/lib/core/shared/sdk/impersonatedSdk.js +19 -18
  151. package/lib/core/shared/store.js +127 -32
  152. package/lib/core/statistics/index.js +2 -2
  153. package/lib/core/statistics/statistics.js +99 -85
  154. package/lib/core/storage/clientAdapter.js +219 -136
  155. package/lib/core/storage/indexCache.js +3 -3
  156. package/lib/core/storage/storageEngine.js +10 -13
  157. package/lib/core/storage/storeScopeEnum.js +3 -3
  158. package/lib/core/validation/baseType.js +12 -10
  159. package/lib/core/validation/index.js +2 -2
  160. package/lib/core/validation/types/anything.js +4 -4
  161. package/lib/core/validation/types/boolean.js +7 -7
  162. package/lib/core/validation/types/date.js +165 -131
  163. package/lib/core/validation/types/email.js +18 -21
  164. package/lib/core/validation/types/enum.js +34 -21
  165. package/lib/core/validation/types/geoPoint.js +7 -7
  166. package/lib/core/validation/types/geoShape.js +148 -125
  167. package/lib/core/validation/types/integer.js +9 -9
  168. package/lib/core/validation/types/ipAddress.js +17 -19
  169. package/lib/core/validation/types/numeric.js +36 -29
  170. package/lib/core/validation/types/object.js +19 -19
  171. package/lib/core/validation/types/string.js +36 -29
  172. package/lib/core/validation/types/url.js +17 -19
  173. package/lib/core/validation/validation.js +422 -378
  174. package/lib/kerror/codes/1-services.json +7 -1
  175. package/lib/kerror/codes/4-plugin.json +2 -2
  176. package/lib/kerror/codes/index.js +85 -63
  177. package/lib/kerror/errors/badRequestError.d.ts +1 -1
  178. package/lib/kerror/errors/externalServiceError.d.ts +1 -1
  179. package/lib/kerror/errors/forbiddenError.d.ts +1 -1
  180. package/lib/kerror/errors/gatewayTimeoutError.d.ts +1 -1
  181. package/lib/kerror/errors/index.d.ts +15 -15
  182. package/lib/kerror/errors/internalError.d.ts +1 -1
  183. package/lib/kerror/errors/kuzzleError.d.ts +1 -1
  184. package/lib/kerror/errors/multipleErrorsError.d.ts +1 -1
  185. package/lib/kerror/errors/multipleErrorsError.js +1 -1
  186. package/lib/kerror/errors/notFoundError.d.ts +1 -1
  187. package/lib/kerror/errors/partialError.d.ts +1 -1
  188. package/lib/kerror/errors/partialError.js +1 -1
  189. package/lib/kerror/errors/pluginImplementationError.d.ts +1 -1
  190. package/lib/kerror/errors/pluginImplementationError.js +2 -1
  191. package/lib/kerror/errors/preconditionError.d.ts +1 -1
  192. package/lib/kerror/errors/serviceUnavailableError.d.ts +1 -1
  193. package/lib/kerror/errors/sizeLimitError.d.ts +1 -1
  194. package/lib/kerror/errors/tooManyRequestsError.d.ts +1 -1
  195. package/lib/kerror/errors/unauthorizedError.d.ts +1 -1
  196. package/lib/kerror/index.d.ts +3 -3
  197. package/lib/kerror/index.js +17 -16
  198. package/lib/kuzzle/dumpGenerator.js +130 -114
  199. package/lib/kuzzle/event/kuzzleEventEmitter.js +96 -70
  200. package/lib/kuzzle/event/pipeRunner.js +25 -24
  201. package/lib/kuzzle/event/waterfall.js +13 -15
  202. package/lib/kuzzle/index.js +2 -2
  203. package/lib/kuzzle/internalIndexHandler.js +80 -59
  204. package/lib/kuzzle/kuzzle.js +99 -99
  205. package/lib/kuzzle/kuzzleStateEnum.js +1 -1
  206. package/lib/kuzzle/log.js +23 -18
  207. package/lib/kuzzle/vault.js +34 -19
  208. package/lib/model/security/profile.d.ts +3 -3
  209. package/lib/model/security/profile.js +38 -37
  210. package/lib/model/security/rights.js +5 -5
  211. package/lib/model/security/role.d.ts +3 -3
  212. package/lib/model/security/role.js +25 -26
  213. package/lib/model/security/token.d.ts +1 -1
  214. package/lib/model/security/token.js +4 -4
  215. package/lib/model/security/user.d.ts +2 -2
  216. package/lib/model/security/user.js +9 -9
  217. package/lib/model/storage/apiKey.js +43 -33
  218. package/lib/model/storage/baseModel.js +49 -45
  219. package/lib/service/cache/redis.js +60 -55
  220. package/lib/service/service.js +17 -17
  221. package/lib/service/storage/elasticsearch.js +839 -755
  222. package/lib/service/storage/esWrapper.js +103 -86
  223. package/lib/service/storage/queryTranslator.js +52 -59
  224. package/lib/types/Controller.d.ts +3 -3
  225. package/lib/types/ControllerDefinition.d.ts +3 -3
  226. package/lib/types/DebugModule.d.ts +2 -2
  227. package/lib/types/DebugModule.js +1 -1
  228. package/lib/types/Global.d.ts +1 -1
  229. package/lib/types/HttpStream.d.ts +2 -1
  230. package/lib/types/HttpStream.js +7 -5
  231. package/lib/types/Kuzzle.d.ts +1 -1
  232. package/lib/types/KuzzleDocument.d.ts +1 -1
  233. package/lib/types/OpenApiDefinition.d.ts +1 -1
  234. package/lib/types/PasswordPolicy.d.ts +1 -1
  235. package/lib/types/Plugin.d.ts +6 -6
  236. package/lib/types/Plugin.js +2 -2
  237. package/lib/types/Policy.d.ts +1 -1
  238. package/lib/types/RequestPayload.d.ts +1 -1
  239. package/lib/types/ResponsePayload.d.ts +1 -1
  240. package/lib/types/Token.d.ts +1 -1
  241. package/lib/types/User.d.ts +1 -1
  242. package/lib/types/config/DumpConfiguration.d.ts +8 -8
  243. package/lib/types/config/HttpConfiguration.d.ts +1 -1
  244. package/lib/types/config/KuzzleConfiguration.d.ts +1 -1
  245. package/lib/types/config/LimitsConfiguration.d.ts +8 -8
  246. package/lib/types/config/PluginsConfiguration.d.ts +4 -4
  247. package/lib/types/config/SecurityConfiguration.d.ts +62 -62
  248. package/lib/types/config/ServerConfiguration.d.ts +55 -55
  249. package/lib/types/config/ServicesConfiguration.d.ts +2 -2
  250. package/lib/types/config/internalCache/InternalCacheRedisConfiguration.d.ts +10 -10
  251. package/lib/types/config/publicCache/PublicCacheRedisConfiguration.d.ts +3 -3
  252. package/lib/types/config/storageEngine/StorageEngineElasticsearchConfiguration.d.ts +194 -110
  253. package/lib/types/errors/ErrorDefinition.d.ts +1 -1
  254. package/lib/types/errors/ErrorDomains.d.ts +1 -1
  255. package/lib/types/index.d.ts +38 -38
  256. package/lib/types/realtime/RealtimeScope.d.ts +1 -1
  257. package/lib/types/realtime/RealtimeUsers.d.ts +1 -1
  258. package/lib/util/assertType.js +13 -11
  259. package/lib/util/async.d.ts +1 -0
  260. package/lib/util/async.js +61 -0
  261. package/lib/util/asyncStore.js +19 -21
  262. package/lib/util/bufferedPassThrough.d.ts +2 -2
  263. package/lib/util/bufferedPassThrough.js +4 -4
  264. package/lib/util/bytes.js +9 -13
  265. package/lib/util/crypto.js +1 -1
  266. package/lib/util/debug.js +5 -5
  267. package/lib/util/deprecate.js +24 -21
  268. package/lib/util/didYouMean.js +7 -7
  269. package/lib/util/dump-collection.d.ts +2 -2
  270. package/lib/util/dump-collection.js +26 -26
  271. package/lib/util/esRequest.d.ts +1 -0
  272. package/lib/util/esRequest.js +62 -0
  273. package/lib/util/extractFields.js +24 -25
  274. package/lib/util/inflector.js +5 -5
  275. package/lib/util/koncordeCompat.d.ts +2 -2
  276. package/lib/util/koncordeCompat.js +5 -5
  277. package/lib/util/memoize.js +3 -5
  278. package/lib/util/mutex.d.ts +19 -1
  279. package/lib/util/mutex.js +39 -12
  280. package/lib/util/name-generator.js +1331 -1331
  281. package/lib/util/promback.js +8 -10
  282. package/lib/util/readYamlFile.d.ts +1 -1
  283. package/lib/util/readYamlFile.js +1 -1
  284. package/lib/util/requestAssertions.js +34 -34
  285. package/lib/util/safeObject.js +5 -5
  286. package/lib/util/stackTrace.js +20 -22
  287. package/lib/util/wildcard.js +15 -15
  288. package/package.json +6 -6
  289. package/npm-shrinkwrap.json +0 -19422
@@ -22,7 +22,7 @@ export declare type PasswordPolicy = {
22
22
  * Can be either set to a wildcar (`"*""`) to match all users or to an
23
23
  * object containing at least of the following property.
24
24
  */
25
- appliesTo: '*' | {
25
+ appliesTo: "*" | {
26
26
  /**
27
27
  * Array of user kuids the policy applies to.
28
28
  */
@@ -1,9 +1,9 @@
1
- import { PluginContext } from '../core/plugin/pluginContext';
2
- import { ControllerDefinition } from './ControllerDefinition';
3
- import { PluginManifest } from './PluginManifest';
4
- import { StrategyDefinition } from './StrategyDefinition';
5
- import { EventHandler } from './EventHandler';
6
- import { JSONObject } from '../../index';
1
+ import { PluginContext } from "../core/plugin/pluginContext";
2
+ import { ControllerDefinition } from "./ControllerDefinition";
3
+ import { PluginManifest } from "./PluginManifest";
4
+ import { StrategyDefinition } from "./StrategyDefinition";
5
+ import { EventHandler } from "./EventHandler";
6
+ import { JSONObject } from "../../index";
7
7
  /**
8
8
  * Allows to define plugins controllers and actions
9
9
  */
@@ -54,9 +54,9 @@ class Plugin {
54
54
  * @param manifest Manifest containing the required kuzzleVersion number
55
55
  */
56
56
  constructor(manifest) {
57
- if (!(0, safeObject_1.has)(manifest, 'kuzzleVersion')) {
57
+ if (!(0, safeObject_1.has)(manifest, "kuzzleVersion")) {
58
58
  // eslint-disable-next-line new-cap
59
- throw kerror.get('plugin', 'manifest', 'missing_version');
59
+ throw kerror.get("plugin", "manifest", "missing_version");
60
60
  }
61
61
  this._manifest = manifest;
62
62
  }
@@ -1,4 +1,4 @@
1
- import { PolicyRestrictions, OptimizedPolicyRestrictions } from './PolicyRestrictions';
1
+ import { PolicyRestrictions, OptimizedPolicyRestrictions } from "./PolicyRestrictions";
2
2
  /**
3
3
  * Policy definition for a role
4
4
  * and its restrictions
@@ -1,4 +1,4 @@
1
- import { JSONObject } from '../../index';
1
+ import { JSONObject } from "../../index";
2
2
  /**
3
3
  * Kuzzle API request payload
4
4
  *
@@ -1,4 +1,4 @@
1
- import { JSONObject } from '../../index';
1
+ import { JSONObject } from "../../index";
2
2
  export declare type ResponseErrorPayload = {
3
3
  /**
4
4
  * Error human readable identifier
@@ -1,4 +1,4 @@
1
- import { JSONObject } from 'kuzzle-sdk';
1
+ import { JSONObject } from "kuzzle-sdk";
2
2
  /**
3
3
  * Kuzzle authentication token.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { JSONObject } from 'kuzzle-sdk';
1
+ import { JSONObject } from "kuzzle-sdk";
2
2
  /**
3
3
  * Kuzzle user.
4
4
  */
@@ -5,25 +5,25 @@ export declare type DumpConfiguration = {
5
5
  enabled: boolean;
6
6
  history: {
7
7
  /**
8
- * @default 3
9
- */
8
+ * @default 3
9
+ */
10
10
  coredump: number;
11
11
  /**
12
- * @default 5
13
- */
12
+ * @default 5
13
+ */
14
14
  reports: number;
15
15
  };
16
16
  /**
17
17
  * @default './dump/'
18
- */
18
+ */
19
19
  path: string;
20
20
  /**
21
21
  * @default 'gcore'
22
- */
22
+ */
23
23
  gcore: string;
24
24
  /**
25
25
  * @default 'YYYYMMDD-HHmmss'
26
- */
26
+ */
27
27
  dateFormat: string;
28
28
  handledErrors: {
29
29
  /**
@@ -32,7 +32,7 @@ export declare type DumpConfiguration = {
32
32
  enabled: boolean;
33
33
  /**
34
34
  * @default ['RangeError','TypeError','KuzzleError','InternalError'],
35
- */
35
+ */
36
36
  whitelist: string[];
37
37
  /**
38
38
  * @default 600000
@@ -38,6 +38,6 @@ export declare type HttpConfiguration = {
38
38
  * configuration contains a wildcard ("*").
39
39
  *
40
40
  * @default true
41
- */
41
+ */
42
42
  cookieAuthentication: boolean;
43
43
  };
@@ -1,4 +1,4 @@
1
- import { ServerConfiguration, ServicesConfiguration, SecurityConfiguration, HttpConfiguration, PluginsConfiguration, LimitsConfiguration, DumpConfiguration } from '../index';
1
+ import { ServerConfiguration, ServicesConfiguration, SecurityConfiguration, HttpConfiguration, PluginsConfiguration, LimitsConfiguration, DumpConfiguration } from "../index";
2
2
  export interface IKuzzleConfiguration {
3
3
  realtime: {
4
4
  /**
@@ -77,14 +77,14 @@ export declare type LimitsConfiguration = {
77
77
  */
78
78
  subscriptionMinterms: number;
79
79
  /**
80
- * Maximum number of different subscription rooms.
81
- * (i.e. different index+collection+filters subscription configurations)
82
- *
83
- * Depends primarily on available memory.
84
- *
85
- * If set to 0, an unlimited number of rooms can be created.
86
- *
87
- * @default 1000000
80
+ * Maximum number of different subscription rooms.
81
+ * (i.e. different index+collection+filters subscription configurations)
82
+ *
83
+ * Depends primarily on available memory.
84
+ *
85
+ * If set to 0, an unlimited number of rooms can be created.
86
+ *
87
+ * @default 1000000
88
88
  */
89
89
  subscriptionRooms: number;
90
90
  /**
@@ -1,5 +1,5 @@
1
- import { JSONObject } from '../../../index';
2
- import { PasswordPolicy } from '../index';
1
+ import { JSONObject } from "../../../index";
2
+ import { PasswordPolicy } from "../index";
3
3
  export declare type PluginsConfiguration = {
4
4
  /**
5
5
  * Common configuration for all plugins.
@@ -73,7 +73,7 @@ export declare type PluginsConfiguration = {
73
73
  *
74
74
  * @see https://github.com/kuzzleio/kuzzle-plugin-logger
75
75
  */
76
- 'kuzzle-plugin-logger': {
76
+ "kuzzle-plugin-logger": {
77
77
  /**
78
78
  * Winston transport services declaration
79
79
  */
@@ -113,7 +113,7 @@ export declare type PluginsConfiguration = {
113
113
  *
114
114
  * @see https://github.com/kuzzleio/kuzzle-plugin-auth-passport-local/
115
115
  */
116
- 'kuzzle-plugin-auth-passport-local': {
116
+ "kuzzle-plugin-auth-passport-local": {
117
117
  /**
118
118
  * One of the supported encryption algorithms
119
119
  * (run crypto.getHashes() to get the complete list).
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
- import { JSONObject } from '../../../index';
3
- import { RoleDefinition, ProfileDefinition } from '../index';
2
+ import { JSONObject } from "../../../index";
3
+ import { RoleDefinition, ProfileDefinition } from "../index";
4
4
  export declare type SecurityConfiguration = {
5
5
  /**
6
6
  * Debugger configuration
@@ -20,85 +20,85 @@ export declare type SecurityConfiguration = {
20
20
  */
21
21
  restrictedProfileIds: string[];
22
22
  /**
23
- * @deprecated Use `security.authToken` instead.
24
- */
23
+ * @deprecated Use `security.authToken` instead.
24
+ */
25
25
  jwt?: JSONObject;
26
26
  /**
27
- * Configuration for the npm package jsonwebtoken
28
- * who handle Kuzzle Authentication Token.
29
- *
30
- * @see https://github.com/auth0/node-jsonwebtoken
31
- */
27
+ * Configuration for the npm package jsonwebtoken
28
+ * who handle Kuzzle Authentication Token.
29
+ *
30
+ * @see https://github.com/auth0/node-jsonwebtoken
31
+ */
32
32
  authToken: {
33
33
  /**
34
- * Hash/encryption method used to sign the token.
35
- *
36
- * @default "HS256"
37
- */
34
+ * Hash/encryption method used to sign the token.
35
+ *
36
+ * @default "HS256"
37
+ */
38
38
  algorithm: string;
39
39
  /**
40
- * Token default expiration time.
41
- *
42
- * @see https://www.npmjs.com/package/ms
43
- *
44
- * @default "1h"
45
- */
40
+ * Token default expiration time.
41
+ *
42
+ * @see https://www.npmjs.com/package/ms
43
+ *
44
+ * @default "1h"
45
+ */
46
46
  expiresIn: string;
47
47
  /**
48
- * Duration in ms during which a renewed token is still considered valid.
49
- *
50
- * @default 1000
51
- */
48
+ * Duration in ms during which a renewed token is still considered valid.
49
+ *
50
+ * @default 1000
51
+ */
52
52
  gracePeriod: number;
53
53
  /**
54
- * Maximum duration in milliseconds a token can be requested to be valid.
55
- *
56
- * If set to -1, no maximum duration is set.
57
- *
58
- * @default -1
59
- */
54
+ * Maximum duration in milliseconds a token can be requested to be valid.
55
+ *
56
+ * If set to -1, no maximum duration is set.
57
+ *
58
+ * @default -1
59
+ */
60
60
  maxTTL: number;
61
61
  /**
62
- * String or buffer data containing either the secret for HMAC
63
- * algorithms, or the PEM encoded private key for RSA and ECDSA.
64
- *
65
- * If left to null, Kuzzle will autogenerate a random
66
- * seed (can only be used with HMAC algorithms).
67
- *
68
- * @default null
69
- */
62
+ * String or buffer data containing either the secret for HMAC
63
+ * algorithms, or the PEM encoded private key for RSA and ECDSA.
64
+ *
65
+ * If left to null, Kuzzle will autogenerate a random
66
+ * seed (can only be used with HMAC algorithms).
67
+ *
68
+ * @default null
69
+ */
70
70
  secret: string | Buffer;
71
71
  };
72
72
  apiKey: {
73
73
  /**
74
- * Maximum duration in milliseconds a token can be requested to be valid.
75
- *
76
- * If set to -1, no maximum duration is set.
77
- *
78
- * @default -1
79
- */
74
+ * Maximum duration in milliseconds a token can be requested to be valid.
75
+ *
76
+ * If set to -1, no maximum duration is set.
77
+ *
78
+ * @default -1
79
+ */
80
80
  maxTTL: number;
81
81
  };
82
82
  /**
83
- * The default role defines permissions for all users,
84
- * until an administrator configures the backend rights.
85
- *
86
- * By default, all users are granted all permissions.
87
- *
88
- * @default
89
- *
90
- * {
91
- * "role": {
92
- * "controllers": {
93
- * "*": {
94
- * "actions": {
95
- * "*": true
96
- * }
97
- * }
98
- * }
99
- * }
100
- * }
101
- */
83
+ * The default role defines permissions for all users,
84
+ * until an administrator configures the backend rights.
85
+ *
86
+ * By default, all users are granted all permissions.
87
+ *
88
+ * @default
89
+ *
90
+ * {
91
+ * "role": {
92
+ * "controllers": {
93
+ * "*": {
94
+ * "actions": {
95
+ * "*": true
96
+ * }
97
+ * }
98
+ * }
99
+ * }
100
+ * }
101
+ */
102
102
  default: {
103
103
  role: RoleDefinition;
104
104
  };
@@ -1,4 +1,4 @@
1
- import { JSONObject } from '../../../index';
1
+ import { JSONObject } from "../../../index";
2
2
  export declare type ServerConfiguration = {
3
3
  /**
4
4
  * The maximum size of an incoming request.
@@ -10,14 +10,14 @@ export declare type ServerConfiguration = {
10
10
  */
11
11
  maxRequestSize: string;
12
12
  /**
13
- * The listening port for HTTP and WebSocket protocols.
14
- *
15
- * @default 7512
16
- */
13
+ * The listening port for HTTP and WebSocket protocols.
14
+ *
15
+ * @default 7512
16
+ */
17
17
  port: number;
18
18
  /**
19
- * Configuration section for Kuzzle access logs.
20
- */
19
+ * Configuration section for Kuzzle access logs.
20
+ */
21
21
  logs: {
22
22
  /**
23
23
  * An array of Winston transports configurations to output access
@@ -42,39 +42,39 @@ export declare type ServerConfiguration = {
42
42
  */
43
43
  transports: JSONObject[];
44
44
  /**
45
- * Access log format.
46
- *
47
- * Currently supported are "combined" (=Apache combined logs format)
48
- * and "logstash".
49
- *
50
- * "logstash" will output the whole request input to JSON, ready to
51
- * be consumed by logstash agent.
52
- *
53
- * @default "combined"
54
- */
55
- accessLogFormat: 'combined' | 'logstash';
45
+ * Access log format.
46
+ *
47
+ * Currently supported are "combined" (=Apache combined logs format)
48
+ * and "logstash".
49
+ *
50
+ * "logstash" will output the whole request input to JSON, ready to
51
+ * be consumed by logstash agent.
52
+ *
53
+ * @default "combined"
54
+ */
55
+ accessLogFormat: "combined" | "logstash";
56
56
  /**
57
- * The offset to use as the client ip, from the FORWARDED-FOR chain,
58
- * beginning from the right (0 = the ip address of the last
59
- * client|proxy which connected to Kuzzle.
60
- *
61
- * @default 0
62
- */
57
+ * The offset to use as the client ip, from the FORWARDED-FOR chain,
58
+ * beginning from the right (0 = the ip address of the last
59
+ * client|proxy which connected to Kuzzle.
60
+ *
61
+ * @default 0
62
+ */
63
63
  accessLogIpOffset: number;
64
64
  };
65
65
  /**
66
- * protocols accepted by Kuzzle.
67
- * protocols can be extended and configured in this section.
68
- */
66
+ * protocols accepted by Kuzzle.
67
+ * protocols can be extended and configured in this section.
68
+ */
69
69
  protocols: {
70
70
  http: {
71
71
  /**
72
- * Enable support for compressed requests, using the Content-Encoding header
73
- * Currently supported compression algorithms: gzip, deflate, identity
74
- * Note: "identity" is always an accepted value, even if compression support is disabled
75
- *
76
- * @default true
77
- */
72
+ * Enable support for compressed requests, using the Content-Encoding header
73
+ * Currently supported compression algorithms: gzip, deflate, identity
74
+ * Note: "identity" is always an accepted value, even if compression support is disabled
75
+ *
76
+ * @default true
77
+ */
78
78
  allowCompression: boolean;
79
79
  /**
80
80
  * Set to "false" to disable HTTP support
@@ -99,16 +99,16 @@ export declare type ServerConfiguration = {
99
99
  };
100
100
  mqtt: {
101
101
  /**
102
- * Set to true to enable MQTT support
103
- *
104
- * @default false
105
- */
102
+ * Set to true to enable MQTT support
103
+ *
104
+ * @default false
105
+ */
106
106
  enabled: boolean;
107
107
  /**
108
- * Allow MQTT pub/sub capabilities or restrict to Kuzzle requests only
109
- *
110
- * @default false
111
- */
108
+ * Allow MQTT pub/sub capabilities or restrict to Kuzzle requests only
109
+ *
110
+ * @default false
111
+ */
112
112
  allowPubSub: boolean;
113
113
  /**
114
114
  * Switches responseTopic back to a regular public topic
@@ -136,9 +136,9 @@ export declare type ServerConfiguration = {
136
136
  */
137
137
  responseTopic: string;
138
138
  /**
139
- * Constructor options passed to underlying MQTT server.
140
- * See aedes documentation for further reference: https://github.com/moscajs/aedes
141
- */
139
+ * Constructor options passed to underlying MQTT server.
140
+ * See aedes documentation for further reference: https://github.com/moscajs/aedes
141
+ */
142
142
  server: {
143
143
  /**
144
144
  * @default 1883
@@ -160,13 +160,13 @@ export declare type ServerConfiguration = {
160
160
  */
161
161
  enabled: boolean;
162
162
  /**
163
- * The maximum time (in milliseconds) without sending or receiving a message from a client.
164
- * Once reached, the client's socket is forcibly closed.
165
- * If a client socket is inactive for too long, the server will send a PING request before closing the socket.
166
- * Minimum value: 1000 (but it's strongly advised to not set a value this low to forcibly close idle client sockets)
167
- *
168
- * @default 60000
169
- */
163
+ * The maximum time (in milliseconds) without sending or receiving a message from a client.
164
+ * Once reached, the client's socket is forcibly closed.
165
+ * If a client socket is inactive for too long, the server will send a PING request before closing the socket.
166
+ * Minimum value: 1000 (but it's strongly advised to not set a value this low to forcibly close idle client sockets)
167
+ *
168
+ * @default 60000
169
+ */
170
170
  idleTimeout: number;
171
171
  /**
172
172
  * Enable/Disable per message compression
@@ -175,10 +175,10 @@ export declare type ServerConfiguration = {
175
175
  */
176
176
  compression: boolean;
177
177
  /**
178
- * The maximum number of messages per second a single socket can
179
- * submit to the server.
180
- * @default 0
181
- */
178
+ * The maximum number of messages per second a single socket can
179
+ * submit to the server.
180
+ * @default 0
181
+ */
182
182
  rateLimit: number;
183
183
  /**
184
184
  * Set to "true" to enable realtime notifications like "TokenExpired" notifications
@@ -1,4 +1,4 @@
1
- import { PublicCacheRedisConfiguration, InternalCacheConfiguration, StorageEngineElasticsearch } from '../index';
1
+ import { PublicCacheRedisConfiguration, InternalCacheConfiguration, StorageEngineElasticsearch } from "../index";
2
2
  export declare type ServicesConfiguration = {
3
3
  common: {
4
4
  /**
@@ -23,7 +23,7 @@ export declare type ServicesConfiguration = {
23
23
  memoryStorage: PublicCacheRedisConfiguration;
24
24
  /**
25
25
  * The database engine used for Kuzzle internal index
26
- */
26
+ */
27
27
  internalIndex: {
28
28
  /**
29
29
  * Maximum amount of time (in milliseconds)
@@ -70,8 +70,8 @@ export declare type InternalCacheConfiguration = {
70
70
  */
71
71
  /**
72
72
  * @default 'redis'
73
- */
74
- backend: 'redis';
73
+ */
74
+ backend: "redis";
75
75
  clusterOptions: {
76
76
  /**
77
77
  * @default true
@@ -80,7 +80,7 @@ export declare type InternalCacheConfiguration = {
80
80
  };
81
81
  /**
82
82
  * @default 0
83
- */
83
+ */
84
84
  database: number;
85
85
  node: {
86
86
  /**
@@ -98,14 +98,14 @@ export declare type InternalCacheConfiguration = {
98
98
  * See Redis client constructor available options:
99
99
  * https://github.com/luin/ioredis/blob/master/API.md#new-redisport-host-options
100
100
  *
101
- */
101
+ */
102
102
  options?: Record<string, unknown>;
103
103
  /**
104
- * Only available when using a Redis Cluster config.
105
- * Use with caution: if set to true, it makes Kuzzle skip DNS validation for TLS certificates
106
- * This is the only way to connect to an AWS Elasticache Cluster with TLS encryption.
107
- * See: https://github.com/luin/ioredis#special-note-aws-elasticache-clusters-with-tls
108
- * @default false
109
- */
104
+ * Only available when using a Redis Cluster config.
105
+ * Use with caution: if set to true, it makes Kuzzle skip DNS validation for TLS certificates
106
+ * This is the only way to connect to an AWS Elasticache Cluster with TLS encryption.
107
+ * See: https://github.com/luin/ioredis#special-note-aws-elasticache-clusters-with-tls
108
+ * @default false
109
+ */
110
110
  overrideDnsLookup: boolean;
111
111
  };
@@ -2,7 +2,7 @@ export declare type PublicCacheRedisConfiguration = {
2
2
  /**
3
3
  * @default 'redis'
4
4
  */
5
- backend: 'redis';
5
+ backend: "redis";
6
6
  clusterOptions: {
7
7
  /**
8
8
  * @default true
@@ -10,8 +10,8 @@ export declare type PublicCacheRedisConfiguration = {
10
10
  enableReadyCheck: boolean;
11
11
  };
12
12
  /**
13
- * @default 5
14
- */
13
+ * @default 5
14
+ */
15
15
  database: number;
16
16
  node: {
17
17
  /**