@loopback/docs 6.0.0 → 6.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 (105) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/bin/copy-changelogs.js +44 -33
  3. package/bin/copy-readmes.js +13 -7
  4. package/package.json +4 -5
  5. package/site/Authentication-component-options.md +1 -1
  6. package/site/CHANGELOG.md +0 -1
  7. package/site/Component.md +3 -1
  8. package/site/DEVELOPING.md +4 -0
  9. package/site/Getting-started.md +4 -1
  10. package/site/Using-Sequelize-with-LoopBack.md +10 -0
  11. package/site/apidocs/boot.bootmixin.md +26 -26
  12. package/site/apidocs/express.middlewaremixin.md +21 -21
  13. package/site/apidocs/graphql.graphqlbindings.graphql_auth_checker.md +1 -1
  14. package/site/apidocs/graphql.graphqlbindings.graphql_context_resolver.md +1 -1
  15. package/site/apidocs/repository.defaultcrudrepository.entitytodata.md +2 -2
  16. package/site/apidocs/repository.repositorymixin.md +26 -26
  17. package/site/apidocs/sequelize.sequelizecrudrepository.defaultfnregistry.md +25 -0
  18. package/site/apidocs/sequelize.sequelizecrudrepository.excludehiddenprops.md +7 -0
  19. package/site/apidocs/sequelize.sequelizecrudrepository.execute.md +27 -2
  20. package/site/apidocs/sequelize.sequelizecrudrepository.getdefaultfnregistry.md +25 -0
  21. package/site/apidocs/sequelize.sequelizecrudrepository.getsequelizemodel.md +2 -2
  22. package/site/apidocs/sequelize.sequelizecrudrepository.gettablename.md +40 -0
  23. package/site/apidocs/sequelize.sequelizecrudrepository.isinclusionallowed.md +34 -0
  24. package/site/apidocs/sequelize.sequelizecrudrepository.md +6 -1
  25. package/site/apidocs/sequelize.sequelizecrudrepository.nano_id_length.md +23 -0
  26. package/site/apidocs/sequelize.sequelizedatasource.execute.md +57 -0
  27. package/site/apidocs/sequelize.sequelizedatasource.md +2 -1
  28. package/site/apidocs/sequelize.sequelizedatasource.sequelizeconfig.md +1 -1
  29. package/site/apidocs/sequelize.sequelizedatasourceconfig.md +2 -1
  30. package/site/apidocs/service-proxy.servicemixin.md +26 -26
  31. package/site/apidocs/service-proxy.serviceproxy.md +2 -2
  32. package/site/apidocs/tsdocs.getpackages.md +2 -2
  33. package/site/apidocs/tsdocs.lernapackage.md +1 -1
  34. package/site/apidocs/tsdocs.md +2 -2
  35. package/site/apidocs/typeorm.typeormmixin.md +27 -27
  36. package/site/changelogs/bodyparsers/rest-msgpack/CHANGELOG.md +31 -0
  37. package/site/changelogs/examples/access-control-migration/CHANGELOG.md +31 -0
  38. package/site/changelogs/examples/binding-resolution/CHANGELOG.md +31 -0
  39. package/site/changelogs/examples/context/CHANGELOG.md +31 -0
  40. package/site/changelogs/examples/express-composition/CHANGELOG.md +31 -0
  41. package/site/changelogs/examples/file-transfer/CHANGELOG.md +31 -0
  42. package/site/changelogs/examples/graphql/CHANGELOG.md +31 -0
  43. package/site/changelogs/examples/greeter-extension/CHANGELOG.md +31 -0
  44. package/site/changelogs/examples/greeting-app/CHANGELOG.md +31 -0
  45. package/site/changelogs/examples/hello-world/CHANGELOG.md +31 -0
  46. package/site/changelogs/examples/lb3-application/CHANGELOG.md +31 -0
  47. package/site/changelogs/examples/log-extension/CHANGELOG.md +31 -0
  48. package/site/changelogs/examples/metrics-prometheus/CHANGELOG.md +31 -0
  49. package/site/changelogs/examples/multi-tenancy/CHANGELOG.md +31 -0
  50. package/site/changelogs/examples/passport-login/CHANGELOG.md +31 -0
  51. package/site/changelogs/examples/references-many/CHANGELOG.md +31 -0
  52. package/site/changelogs/examples/rest-crud/CHANGELOG.md +31 -0
  53. package/site/changelogs/examples/rpc-server/CHANGELOG.md +31 -0
  54. package/site/changelogs/examples/soap-calculator/CHANGELOG.md +31 -0
  55. package/site/changelogs/examples/socketio/CHANGELOG.md +31 -0
  56. package/site/changelogs/examples/todo/CHANGELOG.md +31 -0
  57. package/site/changelogs/examples/todo-jwt/CHANGELOG.md +31 -0
  58. package/site/changelogs/examples/todo-list/CHANGELOG.md +31 -0
  59. package/site/changelogs/examples/validation-app/CHANGELOG.md +31 -0
  60. package/site/changelogs/examples/webpack/CHANGELOG.md +31 -0
  61. package/site/changelogs/extensions/apiconnect/CHANGELOG.md +31 -0
  62. package/site/changelogs/extensions/authentication-jwt/CHANGELOG.md +31 -0
  63. package/site/changelogs/extensions/authentication-passport/CHANGELOG.md +31 -0
  64. package/site/changelogs/extensions/context-explorer/CHANGELOG.md +31 -0
  65. package/site/changelogs/extensions/cron/CHANGELOG.md +31 -0
  66. package/site/changelogs/extensions/graphql/CHANGELOG.md +31 -0
  67. package/site/changelogs/extensions/health/CHANGELOG.md +31 -0
  68. package/site/changelogs/extensions/logging/CHANGELOG.md +31 -0
  69. package/site/changelogs/extensions/metrics/CHANGELOG.md +31 -0
  70. package/site/changelogs/extensions/pooling/CHANGELOG.md +31 -0
  71. package/site/changelogs/extensions/sequelize/CHANGELOG.md +42 -0
  72. package/site/changelogs/extensions/socketio/CHANGELOG.md +28 -0
  73. package/site/changelogs/extensions/typeorm/CHANGELOG.md +36 -0
  74. package/site/changelogs/fixtures/mock-oauth2-provider/CHANGELOG.md +31 -0
  75. package/site/changelogs/packages/authentication/CHANGELOG.md +31 -0
  76. package/site/changelogs/packages/authorization/CHANGELOG.md +31 -0
  77. package/site/changelogs/packages/boot/CHANGELOG.md +31 -0
  78. package/site/changelogs/packages/booter-lb3app/CHANGELOG.md +31 -0
  79. package/site/changelogs/packages/build/CHANGELOG.md +19 -0
  80. package/site/changelogs/packages/cli/CHANGELOG.md +67 -0
  81. package/site/changelogs/packages/context/CHANGELOG.md +31 -0
  82. package/site/changelogs/packages/core/CHANGELOG.md +31 -0
  83. package/site/changelogs/packages/eslint-config/CHANGELOG.md +16 -0
  84. package/site/changelogs/packages/express/CHANGELOG.md +31 -0
  85. package/site/changelogs/packages/filter/CHANGELOG.md +39 -0
  86. package/site/changelogs/packages/http-caching-proxy/CHANGELOG.md +16 -0
  87. package/site/changelogs/packages/http-server/CHANGELOG.md +31 -0
  88. package/site/changelogs/packages/metadata/CHANGELOG.md +36 -0
  89. package/site/changelogs/packages/model-api-builder/CHANGELOG.md +31 -0
  90. package/site/changelogs/packages/openapi-spec-builder/CHANGELOG.md +31 -0
  91. package/site/changelogs/packages/openapi-v3/CHANGELOG.md +31 -0
  92. package/site/changelogs/packages/repository/CHANGELOG.md +36 -0
  93. package/site/changelogs/packages/repository-json-schema/CHANGELOG.md +36 -0
  94. package/site/changelogs/packages/repository-tests/CHANGELOG.md +31 -0
  95. package/site/changelogs/packages/rest/CHANGELOG.md +31 -0
  96. package/site/changelogs/packages/rest-crud/CHANGELOG.md +31 -0
  97. package/site/changelogs/packages/rest-explorer/CHANGELOG.md +31 -0
  98. package/site/changelogs/packages/security/CHANGELOG.md +31 -0
  99. package/site/changelogs/packages/service-proxy/CHANGELOG.md +36 -0
  100. package/site/changelogs/packages/testlab/CHANGELOG.md +19 -0
  101. package/site/changelogs/packages/tsdocs/CHANGELOG.md +36 -0
  102. package/site/readmes/loopback-next/extensions/sequelize/README.md +28 -2
  103. package/site/sidebars/lb4_sidebar.yml +7 -0
  104. package/site/changelogs/packages/monorepo/CHANGELOG.md +0 -223
  105. package/site/readmes/loopback-next/packages/monorepo/README.md +0 -94
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [6.0.2](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@6.0.1...@loopback/docs@6.0.2) (2023-07-17)
7
+
8
+ **Note:** Version bump only for package @loopback/docs
9
+
10
+
11
+
12
+
13
+
14
+ ## [6.0.1](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@6.0.0...@loopback/docs@6.0.1) (2023-06-28)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * migrate Lerna to NPM Workspaces ([d5c4994](https://github.com/loopbackio/loopback-next/commit/d5c4994d28f1741427b427d99ca4df03936547e6))
20
+
21
+
22
+
23
+
24
+
6
25
  # [6.0.0](https://github.com/loopbackio/loopback-next/compare/@loopback/docs@5.2.1...@loopback/docs@6.0.0) (2023-05-15)
7
26
 
8
27
 
@@ -12,44 +12,48 @@
12
12
  * from the docs. It also generates Jekyll friendly pages for CHANGELOG files.
13
13
  */
14
14
 
15
- const {getPackages} = require('@lerna/project');
16
- const fs = require('fs-extra');
17
- const path = require('path');
15
+ const path = require('node:path');
16
+ const fse = require('fs-extra');
17
+ const pkgJson = require('@npmcli/package-json');
18
+ const mapWorkspaces = require('@npmcli/map-workspaces');
18
19
 
19
20
  const REPO_ROOT = path.resolve(__dirname, '../..');
20
21
  const DEST_ROOT = path.resolve(__dirname, '../site/changelogs');
21
22
  const SITE_ROOT = path.resolve(__dirname, '../site');
22
23
 
23
- if (require.main === module) {
24
- copyChangelogs().catch(err => {
25
- console.error('Unhandled error.', err);
26
- process.exit(1);
27
- });
28
- }
29
-
30
24
  async function copyChangelogs() {
31
25
  // Remove the original folder so we remove files from deleted packages
32
- await fs.remove(DEST_ROOT);
33
-
34
- const allPackages = await getPackages(REPO_ROOT);
35
- const packages = allPackages
36
- .filter(shouldCopyChangelog)
37
- .map(pkg => {
38
- let shortName = pkg.name;
39
- if (pkg.name.startsWith('@loopback/')) {
40
- shortName = pkg.name.substring('@loopback/'.length);
41
- }
42
-
43
- const location = path.relative(REPO_ROOT, pkg.location);
44
- const meta = {
45
- name: pkg.name,
46
- shortName,
47
- private: pkg.private,
26
+ await fse.remove(DEST_ROOT);
27
+
28
+ const {content: rootPkg} = await pkgJson.load(REPO_ROOT);
29
+ const workspaces = await mapWorkspaces({cwd: REPO_ROOT, pkg: rootPkg});
30
+ const allPackages = await Promise.all(
31
+ Array.from(workspaces, async ([name, location]) => {
32
+ const {content: pkg} = await pkgJson.load(location);
33
+ return {
34
+ name,
48
35
  location,
49
- dir: path.dirname(location),
36
+ private: pkg.private ?? false,
37
+ version: pkg.version,
50
38
  };
51
- return meta;
52
- })
39
+ }),
40
+ );
41
+ const packages = allPackages
42
+ .filter(shouldCopyChangelog)
43
+ .map(pkg => ({
44
+ name: pkg.name,
45
+ get shortName() {
46
+ if (this.name.startsWith('@loopback/')) {
47
+ return this.name.substring('@loopback/'.length);
48
+ }
49
+ return this.name;
50
+ },
51
+ private: pkg.private,
52
+ location: path.relative(REPO_ROOT, pkg.location),
53
+ get dir() {
54
+ return path.dirname(this.location);
55
+ },
56
+ }))
53
57
  .sort((a, b) => b.location.localeCompare(a.location));
54
58
 
55
59
  const packagesByDir = {};
@@ -85,10 +89,10 @@ permalink: /doc/en/lb4/changelog.index.html
85
89
  }
86
90
  for (const {location, name, shortName} of arr) {
87
91
  const src = path.join(REPO_ROOT, location, 'CHANGELOG.md');
88
- const exists = await fs.exists(src);
92
+ const exists = await fse.exists(src);
89
93
  if (!exists) continue;
90
94
 
91
- const content = await fs.readFile(src, 'utf-8');
95
+ const content = await fse.readFile(src, 'utf-8');
92
96
  const md = `---
93
97
  lang: en
94
98
  title: 'CHANGELOG - ${name}'
@@ -102,7 +106,7 @@ permalink: /doc/en/lb4/changelog.${shortName}.html
102
106
  ${content}
103
107
  `;
104
108
  const dest = path.join(DEST_ROOT, location, 'CHANGELOG.md');
105
- await fs.outputFile(dest, md, 'utf-8');
109
+ await fse.outputFile(dest, md, 'utf-8');
106
110
 
107
111
  // Add an entry to the index
108
112
  changelogIndexPage.push(
@@ -112,7 +116,7 @@ ${content}
112
116
  }
113
117
 
114
118
  // Write `site/CHANGELOG.md`
115
- await fs.outputFile(
119
+ await fse.outputFile(
116
120
  path.join(SITE_ROOT, 'CHANGELOG.md'),
117
121
  changelogIndexPage.join('\n'),
118
122
  'utf-8',
@@ -139,3 +143,10 @@ function shouldCopyChangelog(pkg) {
139
143
  function shouldPublishChangelog(pkg) {
140
144
  return !pkg.private;
141
145
  }
146
+
147
+ if (require.main === module) {
148
+ copyChangelogs().catch(err => {
149
+ console.error('Unhandled error.', err);
150
+ process.exit(1);
151
+ });
152
+ }
@@ -12,9 +12,10 @@
12
12
  * from the docs.
13
13
  */
14
14
 
15
- const {getPackages} = require('@lerna/project');
16
- const fs = require('fs-extra');
17
- const path = require('path');
15
+ const path = require('node:path');
16
+ const fse = require('fs-extra');
17
+ const pkgJson = require('@npmcli/package-json');
18
+ const mapWorkspaces = require('@npmcli/map-workspaces');
18
19
 
19
20
  const REPO_ROOT = path.resolve(__dirname, '../..');
20
21
  const DEST_ROOT = path.resolve(__dirname, '../site/readmes/loopback-next');
@@ -26,16 +27,21 @@ copyReadmes().catch(err => {
26
27
 
27
28
  async function copyReadmes() {
28
29
  // Remove the original folder so we remove files from deleted packages
29
- fs.removeSync(DEST_ROOT);
30
+ fse.removeSync(DEST_ROOT);
30
31
 
31
- const allPackages = await getPackages(REPO_ROOT);
32
+ const {content: rootPkg} = await pkgJson.load(REPO_ROOT);
33
+ const workspaces = await mapWorkspaces({cwd: REPO_ROOT, pkg: rootPkg});
34
+ const allPackages = Array.from(workspaces, ([name, location]) => ({
35
+ name,
36
+ location,
37
+ }));
32
38
  const packages = allPackages.filter(isDocumented).map(pkg => ({
33
39
  name: pkg.name,
34
40
  location: path.relative(REPO_ROOT, pkg.location),
35
41
  }));
36
42
 
37
43
  for (const {location} of packages) {
38
- let files = await fs.readdir(path.join(REPO_ROOT, location));
44
+ let files = await fse.readdir(path.join(REPO_ROOT, location));
39
45
  files = files.filter(
40
46
  // Copy README.md and image files
41
47
  f =>
@@ -43,7 +49,7 @@ async function copyReadmes() {
43
49
  ['.png', '.jpg', 'jpeg'].includes(path.extname(f).toLowerCase()),
44
50
  );
45
51
  for (const f of files) {
46
- await fs.copy(
52
+ await fse.copy(
47
53
  path.join(REPO_ROOT, location, f),
48
54
  path.join(DEST_ROOT, location, f),
49
55
  {overwrite: true},
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@loopback/docs",
3
3
  "description": "Documentation files rendered at [https://loopback.io](https://loopback.io)",
4
- "version": "6.0.0",
4
+ "version": "6.0.2",
5
5
  "keywords": [
6
6
  "LoopBack",
7
7
  "docs"
@@ -33,11 +33,10 @@
33
33
  ],
34
34
  "dependencies": {
35
35
  "fs-extra": "^11.1.1",
36
- "tslib": "^2.5.0"
36
+ "tslib": "^2.6.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@lerna/project": "^6.4.1",
40
- "@loopback/build": "^10.0.0"
39
+ "@loopback/build": "^10.1.1"
41
40
  },
42
- "gitHead": "97a26bd5973830a1d5f28aa2f58040f953995c17"
41
+ "gitHead": "be0c53e30bbe9edf7753c4fcd7ab3199f7cd3b8c"
43
42
  }
@@ -31,7 +31,7 @@ simply configure the authentication component with `defaultMetadata` as follows:
31
31
  ```ts
32
32
  app
33
33
  .configure(AuthenticationBindings.COMPONENT)
34
- .to({defaultMetadata: {strategy: 'xyz'}});
34
+ .to({defaultMetadata: [{strategy: 'xyz'}]});
35
35
  ```
36
36
 
37
37
  If multiple strategies are used for a given method, we can configure the
package/site/CHANGELOG.md CHANGED
@@ -25,7 +25,6 @@ permalink: /doc/en/lb4/changelog.index.html
25
25
  - [@loopback/http-server](changelogs/packages/http-server/CHANGELOG.md)
26
26
  - [@loopback/metadata](changelogs/packages/metadata/CHANGELOG.md)
27
27
  - [@loopback/model-api-builder](changelogs/packages/model-api-builder/CHANGELOG.md)
28
- - [@loopback/monorepo](changelogs/packages/monorepo/CHANGELOG.md)
29
28
  - [@loopback/openapi-spec-builder](changelogs/packages/openapi-spec-builder/CHANGELOG.md)
30
29
  - [@loopback/openapi-v3](changelogs/packages/openapi-v3/CHANGELOG.md)
31
30
  - [@loopback/repository](changelogs/packages/repository/CHANGELOG.md)
package/site/Component.md CHANGED
@@ -197,11 +197,13 @@ These components add additional capabilities to LoopBack.
197
197
  Resource pooling service for LoopBack 4
198
198
  - [@loopback/typeorm](https://github.com/loopbackio/loopback-next/tree/master/extensions/typeorm) -
199
199
  Adds support for TypeORM in LoopBack
200
+ - [@loopback/sequelize](https://github.com/loopbackio/loopback-next/tree/master/extensions/sequelize) -
201
+ Adds support for Sequelize in LoopBack
200
202
 
201
203
  ### Community extensions
202
204
 
203
205
  For a list of components created by community members, refer to
204
- [Community extensions](./Community-extensions.html).
206
+ [Community extensions](./Community-extensions.md).
205
207
 
206
208
  ## Creating components
207
209
 
@@ -453,6 +453,10 @@ LoopBack 4 content only. This provides the fastest feedback loop possible, at
453
453
  the cost of occasional breakage when the script is not updated to accommodate
454
454
  changes made in the `loopback.io` repository.
455
455
 
456
+ Building the preview site will need Jekyll installed on your system which
457
+ requires a proper Ruby development environment, follow the installation steps
458
+ here for your OS: https://jekyllrb.com/docs/installation/#guides.
459
+
456
460
  As the initial setup, run the following command once, before you start making
457
461
  documentation changes:
458
462
 
@@ -9,7 +9,7 @@ summary: Write and run a LoopBack 4 "Hello World" project in TypeScript.
9
9
 
10
10
  ## Prerequisites
11
11
 
12
- Install [Node.js](https://nodejs.org/en/download/) (version 10 or higher) if it
12
+ Install [Node.js](https://nodejs.org/en/download/) (version 16 or higher) if it
13
13
  is not already installed on your machine.
14
14
 
15
15
  ## Install LoopBack 4 CLI
@@ -30,6 +30,9 @@ The CLI tool will scaffold the project, configure the TypeScript compiler, and
30
30
  install all the required dependencies. To create a new project, run the CLI as
31
31
  follows and answer the prompts.
32
32
 
33
+ > We also have a specific generator to generate LoopBack projects. Run
34
+ > `npm create loopback`
35
+
33
36
  ```sh
34
37
  lb4 app
35
38
  ```
@@ -0,0 +1,10 @@
1
+ ---
2
+ lang: en
3
+ title: 'How to use Sequelize with LoopBack'
4
+ keywords: LoopBack 4.0, LoopBack 4, Sequelize
5
+ sidebar: lb4_sidebar
6
+ layout: readme
7
+ source: loopback-next
8
+ file: extensions/sequelize/README.md
9
+ permalink: /doc/en/lb4/Using-sequelize-with-loopback.html
10
+ ---
@@ -31,40 +31,40 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
31
31
  mountComponentBooters(componentInstanceOrClass: Constructor<unknown> | InstanceWithBooters): void;
32
32
  readonly options: import("@loopback/core").ApplicationConfig;
33
33
  readonly state: string;
34
- controller: <T_1>(controllerCtor: import("@loopback/core").ControllerClass<T_1>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_1>;
35
- server: <T_2 extends import("@loopback/core").Server>(ctor: Constructor<T_2>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_2>;
36
- servers: <T_3 extends import("@loopback/core").Server>(ctors: Constructor<T_3>[]) => Binding<any>[];
37
- getServer: <T_4 extends import("@loopback/core").Server>(target: string | Constructor<T_4>) => Promise<T_4>;
34
+ controller: <T>(controllerCtor: import("@loopback/core").ControllerClass<T>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T>;
35
+ server: <T_1 extends import("@loopback/core").Server>(ctor: Constructor<T_1>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_1>;
36
+ servers: <T_2 extends import("@loopback/core").Server>(ctors: Constructor<T_2>[]) => Binding<any>[];
37
+ getServer: <T_3 extends import("@loopback/core").Server>(target: string | Constructor<T_3>) => Promise<T_3>;
38
38
  init: () => Promise<void>;
39
39
  onInit: (fn: () => import("@loopback/core").ValueOrPromise<void>) => Binding<import("@loopback/core").LifeCycleObserver>;
40
40
  onStart: (fn: () => import("@loopback/core").ValueOrPromise<void>) => Binding<import("@loopback/core").LifeCycleObserver>;
41
41
  stop: () => Promise<void>;
42
42
  onStop: (fn: () => import("@loopback/core").ValueOrPromise<void>) => Binding<import("@loopback/core").LifeCycleObserver>;
43
43
  setMetadata: (metadata: import("@loopback/core").ApplicationMetadata) => void;
44
- lifeCycleObserver: <T_5 extends import("@loopback/core").LifeCycleObserver>(ctor: Constructor<T_5>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_5>;
44
+ lifeCycleObserver: <T_4 extends import("@loopback/core").LifeCycleObserver>(ctor: Constructor<T_4>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_4>;
45
45
  service: <S>(cls: import("@loopback/core").ServiceOrProviderClass<S>, nameOrOptions?: string | import("@loopback/core").ServiceOptions | undefined) => Binding<S>;
46
46
  interceptor: (interceptor: import("@loopback/core").Interceptor | Constructor<import("@loopback/core").Provider<import("@loopback/core").Interceptor>>, nameOrOptions?: string | import("@loopback/core").InterceptorBindingOptions | undefined) => Binding<import("@loopback/core").Interceptor>;
47
47
  readonly name: string;
48
48
  readonly subscriptionManager: import("@loopback/core").ContextSubscriptionManager;
49
49
  scope: BindingScope;
50
50
  readonly parent: Context | undefined;
51
- emitEvent: <T_6 extends import("@loopback/core").ContextEvent>(type: string, event: T_6) => void;
51
+ emitEvent: <T_5 extends import("@loopback/core").ContextEvent>(type: string, event: T_5) => void;
52
52
  emitError: (err: unknown) => void;
53
53
  bind: <ValueType = any>(key: import("@loopback/core").BindingAddress<ValueType>) => Binding<ValueType>;
54
54
  add: (binding: Binding<unknown>) => Application;
55
- configure: <ConfigValueType = any>(key?: import("@loopback/core").BindingAddress<unknown> | undefined) => Binding<ConfigValueType>;
56
- getConfigAsValueOrPromise: <ConfigValueType_1>(key: import("@loopback/core").BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => import("@loopback/core").ValueOrPromise<ConfigValueType_1 | undefined>;
57
- getConfig: <ConfigValueType_2>(key: import("@loopback/core").BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => Promise<ConfigValueType_2 | undefined>;
58
- getConfigSync: <ConfigValueType_3>(key: import("@loopback/core").BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => ConfigValueType_3 | undefined;
59
- unbind: (key: import("@loopback/core").BindingAddress<unknown>) => boolean;
55
+ configure: <ConfigValueType = any>(key?: import("@loopback/core").BindingAddress | undefined) => Binding<ConfigValueType>;
56
+ getConfigAsValueOrPromise: <ConfigValueType_1>(key: import("@loopback/core").BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => import("@loopback/core").ValueOrPromise<ConfigValueType_1 | undefined>;
57
+ getConfig: <ConfigValueType_2>(key: import("@loopback/core").BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => Promise<ConfigValueType_2 | undefined>;
58
+ getConfigSync: <ConfigValueType_3>(key: import("@loopback/core").BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => ConfigValueType_3 | undefined;
59
+ unbind: (key: import("@loopback/core").BindingAddress) => boolean;
60
60
  subscribe: (observer: import("@loopback/core").ContextEventObserver) => import("@loopback/core").Subscription;
61
61
  unsubscribe: (observer: import("@loopback/core").ContextEventObserver) => boolean;
62
62
  close: () => void;
63
63
  isSubscribed: (observer: import("@loopback/core").ContextObserver) => boolean;
64
- createView: <T_7 = unknown>(filter: BindingFilter, comparator?: import("@loopback/core").BindingComparator | undefined, options?: Omit<import("@loopback/core").ResolutionOptions, "session"> | undefined) => import("@loopback/core").ContextView<T_7>;
65
- contains: (key: import("@loopback/core").BindingAddress<unknown>) => boolean;
66
- isBound: (key: import("@loopback/core").BindingAddress<unknown>) => boolean;
67
- getOwnerContext: (keyOrBinding: Readonly<Binding<unknown>> | import("@loopback/core").BindingAddress<unknown>) => Context | undefined;
64
+ createView: <T_6 = unknown>(filter: BindingFilter, comparator?: import("@loopback/core").BindingComparator | undefined, options?: Omit<import("@loopback/core").ResolutionOptions, "session"> | undefined) => import("@loopback/core").ContextView<T_6>;
65
+ contains: (key: import("@loopback/core").BindingAddress) => boolean;
66
+ isBound: (key: import("@loopback/core").BindingAddress) => boolean;
67
+ getOwnerContext: (keyOrBinding: Readonly<Binding<unknown>> | import("@loopback/core").BindingAddress) => Context | undefined;
68
68
  getScopedContext: (scope: BindingScope.APPLICATION | BindingScope.SERVER | BindingScope.REQUEST) => Context | undefined;
69
69
  getResolutionContext: (binding: Readonly<Binding<unknown>>) => Context | undefined;
70
70
  isVisibleTo: (ctx: Context) => boolean;
@@ -84,7 +84,7 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
84
84
  optional?: boolean | undefined;
85
85
  } | undefined): Binding<ValueType_8> | undefined;
86
86
  };
87
- findOrCreateBinding: <T_8>(key: import("@loopback/core").BindingAddress<T_8>, policy?: import("@loopback/core").BindingCreationPolicy | undefined) => Binding<T_8>;
87
+ findOrCreateBinding: <T_7>(key: import("@loopback/core").BindingAddress<T_7>, policy?: import("@loopback/core").BindingCreationPolicy | undefined) => Binding<T_7>;
88
88
  getValueOrPromise: <ValueType_9>(keyWithPath: import("@loopback/core").BindingAddress<ValueType_9>, optionsOrSession?: import("@loopback/core").ResolutionOptionsOrSession | undefined) => import("@loopback/core").ValueOrPromise<ValueType_9 | undefined>;
89
89
  toJSON: () => import("@loopback/core").JSONObject;
90
90
  inspect: (options?: import("@loopback/core").ContextInspectOptions | undefined) => import("@loopback/core").JSONObject;
@@ -96,18 +96,18 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
96
96
  (eventName: "bind" | "unbind", listener: import("@loopback/core").ContextEventListener): Application;
97
97
  (event: string | symbol, listener: (...args: any[]) => void): Application;
98
98
  };
99
- addListener: (event: string | symbol, listener: (...args: any[]) => void) => Application;
100
- removeListener: (event: string | symbol, listener: (...args: any[]) => void) => Application;
101
- off: (event: string | symbol, listener: (...args: any[]) => void) => Application;
99
+ addListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Application;
100
+ removeListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Application;
101
+ off: (eventName: string | symbol, listener: (...args: any[]) => void) => Application;
102
102
  removeAllListeners: (event?: string | symbol | undefined) => Application;
103
103
  setMaxListeners: (n: number) => Application;
104
104
  getMaxListeners: () => number;
105
- listeners: (event: string | symbol) => Function[];
106
- rawListeners: (event: string | symbol) => Function[];
107
- emit: (event: string | symbol, ...args: any[]) => boolean;
108
- listenerCount: (event: string | symbol) => number;
109
- prependListener: (event: string | symbol, listener: (...args: any[]) => void) => Application;
110
- prependOnceListener: (event: string | symbol, listener: (...args: any[]) => void) => Application;
105
+ listeners: (eventName: string | symbol) => Function[];
106
+ rawListeners: (eventName: string | symbol) => Function[];
107
+ emit: (eventName: string | symbol, ...args: any[]) => boolean;
108
+ listenerCount: (eventName: string | symbol) => number;
109
+ prependListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Application;
110
+ prependOnceListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Application;
111
111
  eventNames: () => (string | symbol)[];
112
112
  };
113
113
  } & T;
@@ -121,7 +121,7 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
121
121
 
122
122
  **Returns:**
123
123
 
124
- { new (...args: any\[\]): { projectRoot: string; bootOptions?: [BootOptions](./boot.bootoptions.md) \| undefined; booted: boolean; start(): Promise&lt;void&gt;; boot(): Promise&lt;void&gt;; booters(...booterCls: [Constructor](./context.constructor.md)<!-- -->&lt;[Booter](./boot.booter.md)<!-- -->&gt;\[\]): [Binding](./context.binding.md)<!-- -->\[\]; applicationBooter(subApp: [Application](./core.application.md) &amp; [Bootable](./boot.bootable.md)<!-- -->, filter?: [BindingFilter](./context.bindingfilter.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Booter](./boot.booter.md)<!-- -->&gt;; component&lt;C extends [Component](./core.component.md) = [Component](./core.component.md)<!-- -->&gt;(componentCtor: [Constructor](./context.constructor.md)<!-- -->&lt;C&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;C&gt;; mountComponentBooters(componentInstanceOrClass: [Constructor](./context.constructor.md)<!-- -->&lt;unknown&gt; \| [InstanceWithBooters](./boot.instancewithbooters.md)<!-- -->): void; readonly options: import("@loopback/core").[ApplicationConfig](./core.applicationconfig.md)<!-- -->; readonly state: string; controller: &lt;T\_1&gt;(controllerCtor: import("@loopback/core").[ControllerClass](./core.controllerclass.md)<!-- -->&lt;T\_1&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_1&gt;; server: &lt;T\_2 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(ctor: [Constructor](./context.constructor.md)<!-- -->&lt;T\_2&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_2&gt;; servers: &lt;T\_3 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(ctors: [Constructor](./context.constructor.md)<!-- -->&lt;T\_3&gt;\[\]) =&gt; [Binding](./context.binding.md)<!-- -->&lt;any&gt;\[\]; getServer: &lt;T\_4 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(target: string \| [Constructor](./context.constructor.md)<!-- -->&lt;T\_4&gt;) =&gt; Promise&lt;T\_4&gt;; init: () =&gt; Promise&lt;void&gt;; onInit: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; onStart: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; stop: () =&gt; Promise&lt;void&gt;; onStop: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; setMetadata: (metadata: import("@loopback/core").[ApplicationMetadata](./core.applicationmetadata.md)<!-- -->) =&gt; void; lifeCycleObserver: &lt;T\_5 extends import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;(ctor: [Constructor](./context.constructor.md)<!-- -->&lt;T\_5&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_5&gt;; service: &lt;S&gt;(cls: import("@loopback/core").[ServiceOrProviderClass](./core.serviceorproviderclass.md)<!-- -->&lt;S&gt;, nameOrOptions?: string \| import("@loopback/core").[ServiceOptions](./core.serviceoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;S&gt;; interceptor: (interceptor: import("@loopback/core").[Interceptor](./context.interceptor.md) \| [Constructor](./context.constructor.md)<!-- -->&lt;import("@loopback/core").[Provider](./context.provider.md)<!-- -->&lt;import("@loopback/core").[Interceptor](./context.interceptor.md)<!-- -->&gt;&gt;, nameOrOptions?: string \| import("@loopback/core").[InterceptorBindingOptions](./context.interceptorbindingoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[Interceptor](./context.interceptor.md)<!-- -->&gt;; readonly name: string; readonly subscriptionManager: import("@loopback/core").[ContextSubscriptionManager](./context.contextsubscriptionmanager.md)<!-- -->; scope: [BindingScope](./context.bindingscope.md)<!-- -->; readonly parent: [Context](./context.context.md) \| undefined; emitEvent: &lt;T\_6 extends import("@loopback/core").[ContextEvent](./context.contextevent.md)<!-- -->&gt;(type: string, event: T\_6) =&gt; void; emitError: (err: unknown) =&gt; void; bind: &lt;ValueType = any&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ValueType&gt;; add: (binding: [Binding](./context.binding.md)<!-- -->&lt;unknown&gt;) =&gt; [Application](./core.application.md)<!-- -->; configure: &lt;ConfigValueType = any&gt;(key?: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt; \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ConfigValueType&gt;; getConfigAsValueOrPromise: &lt;ConfigValueType\_1&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ConfigValueType\_1 \| undefined&gt;; getConfig: &lt;ConfigValueType\_2&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; Promise&lt;ConfigValueType\_2 \| undefined&gt;; getConfigSync: &lt;ConfigValueType\_3&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; ConfigValueType\_3 \| undefined; unbind: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; subscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; import("@loopback/core").[Subscription](./context.subscription.md)<!-- -->; unsubscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; boolean; close: () =&gt; void; isSubscribed: (observer: import("@loopback/core").[ContextObserver](./context.contextobserver.md)<!-- -->) =&gt; boolean; createView: &lt;T\_7 = unknown&gt;(filter: [BindingFilter](./context.bindingfilter.md)<!-- -->, comparator?: import("@loopback/core").[BindingComparator](./context.bindingcomparator.md) \| undefined, options?: Omit&lt;import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->, "session"&gt; \| undefined) =&gt; import("@loopback/core").[ContextView](./context.contextview.md)<!-- -->&lt;T\_7&gt;; contains: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; isBound: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; getOwnerContext: (keyOrBinding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt; \| import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; [Context](./context.context.md) \| undefined; getScopedContext: (scope: [BindingScope.APPLICATION](./context.bindingscope.md) \| [BindingScope.SERVER](./context.bindingscope.md) \| [BindingScope.REQUEST](./context.bindingscope.md)<!-- -->) =&gt; [Context](./context.context.md) \| undefined; getResolutionContext: (binding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; isVisibleTo: (ctx: [Context](./context.context.md)<!-- -->) =&gt; boolean; find: &lt;ValueType\_1 = any&gt;(pattern?: string \| RegExp \| [BindingFilter](./context.bindingfilter.md) \| undefined) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_1&gt;&gt;\[\]; findByTag: &lt;ValueType\_2 = any&gt;(tagFilter: RegExp \| import("@loopback/core").[BindingTag](./context.bindingtag.md)<!-- -->) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_2&gt;&gt;\[\]; get: { &lt;ValueType\_3&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_3&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): Promise&lt;ValueType\_3&gt;; &lt;ValueType\_4&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_4&gt;, options: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->): Promise&lt;ValueType\_4 \| undefined&gt;; }; getSync: { &lt;ValueType\_5&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_5&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): ValueType\_5; &lt;ValueType\_6&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_6&gt;, options?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined): ValueType\_6 \| undefined; }; getBinding: { &lt;ValueType\_7 = any&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_7&gt;): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_7&gt;; &lt;ValueType\_8&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_8&gt;, options?: { optional?: boolean \| undefined; } \| undefined): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_8&gt; \| undefined; }; findOrCreateBinding: &lt;T\_8&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;T\_8&gt;, policy?: import("@loopback/core").[BindingCreationPolicy](./context.bindingcreationpolicy.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_8&gt;; getValueOrPromise: &lt;ValueType\_9&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_9&gt;, optionsOrSession?: import("@loopback/core").[ResolutionOptionsOrSession](./context.resolutionoptionsorsession.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ValueType\_9 \| undefined&gt;; toJSON: () =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; inspect: (options?: import("@loopback/core").[ContextInspectOptions](./context.contextinspectoptions.md) \| undefined) =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; on: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Application](./core.application.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Application](./core.application.md)<!-- -->; }; once: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Application](./core.application.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Application](./core.application.md)<!-- -->; }; addListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; removeListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; off: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; removeAllListeners: (event?: string \| symbol \| undefined) =&gt; [Application](./core.application.md)<!-- -->; setMaxListeners: (n: number) =&gt; [Application](./core.application.md)<!-- -->; getMaxListeners: () =&gt; number; listeners: (event: string \| symbol) =&gt; Function\[\]; rawListeners: (event: string \| symbol) =&gt; Function\[\]; emit: (event: string \| symbol, ...args: any\[\]) =&gt; boolean; listenerCount: (event: string \| symbol) =&gt; number; prependListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; prependOnceListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; eventNames: () =&gt; (string \| symbol)\[\]; }; } &amp; T
124
+ { new (...args: any\[\]): { projectRoot: string; bootOptions?: [BootOptions](./boot.bootoptions.md) \| undefined; booted: boolean; start(): Promise&lt;void&gt;; boot(): Promise&lt;void&gt;; booters(...booterCls: [Constructor](./context.constructor.md)<!-- -->&lt;[Booter](./boot.booter.md)<!-- -->&gt;\[\]): [Binding](./context.binding.md)<!-- -->\[\]; applicationBooter(subApp: [Application](./core.application.md) &amp; [Bootable](./boot.bootable.md)<!-- -->, filter?: [BindingFilter](./context.bindingfilter.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Booter](./boot.booter.md)<!-- -->&gt;; component&lt;C extends [Component](./core.component.md) = [Component](./core.component.md)<!-- -->&gt;(componentCtor: [Constructor](./context.constructor.md)<!-- -->&lt;C&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;C&gt;; mountComponentBooters(componentInstanceOrClass: [Constructor](./context.constructor.md)<!-- -->&lt;unknown&gt; \| [InstanceWithBooters](./boot.instancewithbooters.md)<!-- -->): void; readonly options: import("@loopback/core").[ApplicationConfig](./core.applicationconfig.md)<!-- -->; readonly state: string; controller: &lt;T&gt;(controllerCtor: import("@loopback/core").[ControllerClass](./core.controllerclass.md)<!-- -->&lt;T&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T&gt;; server: &lt;T\_1 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(ctor: [Constructor](./context.constructor.md)<!-- -->&lt;T\_1&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_1&gt;; servers: &lt;T\_2 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(ctors: [Constructor](./context.constructor.md)<!-- -->&lt;T\_2&gt;\[\]) =&gt; [Binding](./context.binding.md)<!-- -->&lt;any&gt;\[\]; getServer: &lt;T\_3 extends import("@loopback/core").[Server](./core.server.md)<!-- -->&gt;(target: string \| [Constructor](./context.constructor.md)<!-- -->&lt;T\_3&gt;) =&gt; Promise&lt;T\_3&gt;; init: () =&gt; Promise&lt;void&gt;; onInit: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; onStart: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; stop: () =&gt; Promise&lt;void&gt;; onStop: (fn: () =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;void&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;; setMetadata: (metadata: import("@loopback/core").[ApplicationMetadata](./core.applicationmetadata.md)<!-- -->) =&gt; void; lifeCycleObserver: &lt;T\_4 extends import("@loopback/core").[LifeCycleObserver](./core.lifecycleobserver.md)<!-- -->&gt;(ctor: [Constructor](./context.constructor.md)<!-- -->&lt;T\_4&gt;, nameOrOptions?: string \| [BindingFromClassOptions](./context.bindingfromclassoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_4&gt;; service: &lt;S&gt;(cls: import("@loopback/core").[ServiceOrProviderClass](./core.serviceorproviderclass.md)<!-- -->&lt;S&gt;, nameOrOptions?: string \| import("@loopback/core").[ServiceOptions](./core.serviceoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;S&gt;; interceptor: (interceptor: import("@loopback/core").[Interceptor](./context.interceptor.md) \| [Constructor](./context.constructor.md)<!-- -->&lt;import("@loopback/core").[Provider](./context.provider.md)<!-- -->&lt;import("@loopback/core").[Interceptor](./context.interceptor.md)<!-- -->&gt;&gt;, nameOrOptions?: string \| import("@loopback/core").[InterceptorBindingOptions](./context.interceptorbindingoptions.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;import("@loopback/core").[Interceptor](./context.interceptor.md)<!-- -->&gt;; readonly name: string; readonly subscriptionManager: import("@loopback/core").[ContextSubscriptionManager](./context.contextsubscriptionmanager.md)<!-- -->; scope: [BindingScope](./context.bindingscope.md)<!-- -->; readonly parent: [Context](./context.context.md) \| undefined; emitEvent: &lt;T\_5 extends import("@loopback/core").[ContextEvent](./context.contextevent.md)<!-- -->&gt;(type: string, event: T\_5) =&gt; void; emitError: (err: unknown) =&gt; void; bind: &lt;ValueType = any&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ValueType&gt;; add: (binding: [Binding](./context.binding.md)<!-- -->&lt;unknown&gt;) =&gt; [Application](./core.application.md)<!-- -->; configure: &lt;ConfigValueType = any&gt;(key?: import("@loopback/core").[BindingAddress](./context.bindingaddress.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ConfigValueType&gt;; getConfigAsValueOrPromise: &lt;ConfigValueType\_1&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ConfigValueType\_1 \| undefined&gt;; getConfig: &lt;ConfigValueType\_2&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; Promise&lt;ConfigValueType\_2 \| undefined&gt;; getConfigSync: &lt;ConfigValueType\_3&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; ConfigValueType\_3 \| undefined; unbind: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; subscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; import("@loopback/core").[Subscription](./context.subscription.md)<!-- -->; unsubscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; boolean; close: () =&gt; void; isSubscribed: (observer: import("@loopback/core").[ContextObserver](./context.contextobserver.md)<!-- -->) =&gt; boolean; createView: &lt;T\_6 = unknown&gt;(filter: [BindingFilter](./context.bindingfilter.md)<!-- -->, comparator?: import("@loopback/core").[BindingComparator](./context.bindingcomparator.md) \| undefined, options?: Omit&lt;import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->, "session"&gt; \| undefined) =&gt; import("@loopback/core").[ContextView](./context.contextview.md)<!-- -->&lt;T\_6&gt;; contains: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; isBound: (key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; getOwnerContext: (keyOrBinding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt; \| import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; [Context](./context.context.md) \| undefined; getScopedContext: (scope: [BindingScope.APPLICATION](./context.bindingscope.md) \| [BindingScope.SERVER](./context.bindingscope.md) \| [BindingScope.REQUEST](./context.bindingscope.md)<!-- -->) =&gt; [Context](./context.context.md) \| undefined; getResolutionContext: (binding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; isVisibleTo: (ctx: [Context](./context.context.md)<!-- -->) =&gt; boolean; find: &lt;ValueType\_1 = any&gt;(pattern?: string \| RegExp \| [BindingFilter](./context.bindingfilter.md) \| undefined) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_1&gt;&gt;\[\]; findByTag: &lt;ValueType\_2 = any&gt;(tagFilter: RegExp \| import("@loopback/core").[BindingTag](./context.bindingtag.md)<!-- -->) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_2&gt;&gt;\[\]; get: { &lt;ValueType\_3&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_3&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): Promise&lt;ValueType\_3&gt;; &lt;ValueType\_4&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_4&gt;, options: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->): Promise&lt;ValueType\_4 \| undefined&gt;; }; getSync: { &lt;ValueType\_5&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_5&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): ValueType\_5; &lt;ValueType\_6&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_6&gt;, options?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined): ValueType\_6 \| undefined; }; getBinding: { &lt;ValueType\_7 = any&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_7&gt;): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_7&gt;; &lt;ValueType\_8&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_8&gt;, options?: { optional?: boolean \| undefined; } \| undefined): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_8&gt; \| undefined; }; findOrCreateBinding: &lt;T\_7&gt;(key: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;T\_7&gt;, policy?: import("@loopback/core").[BindingCreationPolicy](./context.bindingcreationpolicy.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_7&gt;; getValueOrPromise: &lt;ValueType\_9&gt;(keyWithPath: import("@loopback/core").[BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_9&gt;, optionsOrSession?: import("@loopback/core").[ResolutionOptionsOrSession](./context.resolutionoptionsorsession.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ValueType\_9 \| undefined&gt;; toJSON: () =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; inspect: (options?: import("@loopback/core").[ContextInspectOptions](./context.contextinspectoptions.md) \| undefined) =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; on: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Application](./core.application.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Application](./core.application.md)<!-- -->; }; once: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Application](./core.application.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Application](./core.application.md)<!-- -->; }; addListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; removeListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; off: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; removeAllListeners: (event?: string \| symbol \| undefined) =&gt; [Application](./core.application.md)<!-- -->; setMaxListeners: (n: number) =&gt; [Application](./core.application.md)<!-- -->; getMaxListeners: () =&gt; number; listeners: (eventName: string \| symbol) =&gt; Function\[\]; rawListeners: (eventName: string \| symbol) =&gt; Function\[\]; emit: (eventName: string \| symbol, ...args: any\[\]) =&gt; boolean; listenerCount: (eventName: string \| symbol) =&gt; number; prependListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; prependOnceListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Application](./core.application.md)<!-- -->; eventNames: () =&gt; (string \| symbol)\[\]; }; } &amp; T
125
125
 
126
126
  A new class that extends the super class with boot related methods
127
127
 
@@ -26,23 +26,23 @@ export declare function MiddlewareMixin<T extends MixinTarget<Context>>(superCla
26
26
  readonly subscriptionManager: import("@loopback/core").ContextSubscriptionManager;
27
27
  scope: import("@loopback/core").BindingScope;
28
28
  readonly parent: Context | undefined;
29
- emitEvent: <T_1 extends import("@loopback/core").ContextEvent>(type: string, event: T_1) => void;
29
+ emitEvent: <T extends import("@loopback/core").ContextEvent>(type: string, event: T) => void;
30
30
  emitError: (err: unknown) => void;
31
31
  bind: <ValueType = any>(key: BindingAddress<ValueType>) => Binding<ValueType>;
32
32
  add: (binding: Binding<unknown>) => Context;
33
- configure: <ConfigValueType = any>(key?: BindingAddress<unknown> | undefined) => Binding<ConfigValueType>;
34
- getConfigAsValueOrPromise: <ConfigValueType_1>(key: BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => import("@loopback/core").ValueOrPromise<ConfigValueType_1 | undefined>;
35
- getConfig: <ConfigValueType_2>(key: BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => Promise<ConfigValueType_2 | undefined>;
36
- getConfigSync: <ConfigValueType_3>(key: BindingAddress<unknown>, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => ConfigValueType_3 | undefined;
37
- unbind: (key: BindingAddress<unknown>) => boolean;
33
+ configure: <ConfigValueType = any>(key?: BindingAddress | undefined) => Binding<ConfigValueType>;
34
+ getConfigAsValueOrPromise: <ConfigValueType_1>(key: BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => import("@loopback/core").ValueOrPromise<ConfigValueType_1 | undefined>;
35
+ getConfig: <ConfigValueType_2>(key: BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => Promise<ConfigValueType_2 | undefined>;
36
+ getConfigSync: <ConfigValueType_3>(key: BindingAddress, propertyPath?: string | undefined, resolutionOptions?: import("@loopback/core").ResolutionOptions | undefined) => ConfigValueType_3 | undefined;
37
+ unbind: (key: BindingAddress) => boolean;
38
38
  subscribe: (observer: import("@loopback/core").ContextEventObserver) => import("@loopback/core").Subscription;
39
39
  unsubscribe: (observer: import("@loopback/core").ContextEventObserver) => boolean;
40
40
  close: () => void;
41
41
  isSubscribed: (observer: import("@loopback/core").ContextObserver) => boolean;
42
- createView: <T_2 = unknown>(filter: import("@loopback/core").BindingFilter, comparator?: import("@loopback/core").BindingComparator | undefined, options?: Omit<import("@loopback/core").ResolutionOptions, "session"> | undefined) => import("@loopback/core").ContextView<T_2>;
43
- contains: (key: BindingAddress<unknown>) => boolean;
44
- isBound: (key: BindingAddress<unknown>) => boolean;
45
- getOwnerContext: (keyOrBinding: BindingAddress<unknown> | Readonly<Binding<unknown>>) => Context | undefined;
42
+ createView: <T_1 = unknown>(filter: import("@loopback/core").BindingFilter, comparator?: import("@loopback/core").BindingComparator | undefined, options?: Omit<import("@loopback/core").ResolutionOptions, "session"> | undefined) => import("@loopback/core").ContextView<T_1>;
43
+ contains: (key: BindingAddress) => boolean;
44
+ isBound: (key: BindingAddress) => boolean;
45
+ getOwnerContext: (keyOrBinding: BindingAddress | Readonly<Binding<unknown>>) => Context | undefined;
46
46
  getScopedContext: (scope: import("@loopback/core").BindingScope.APPLICATION | import("@loopback/core").BindingScope.SERVER | import("@loopback/core").BindingScope.REQUEST) => Context | undefined;
47
47
  getResolutionContext: (binding: Readonly<Binding<unknown>>) => Context | undefined;
48
48
  isVisibleTo: (ctx: Context) => boolean;
@@ -62,7 +62,7 @@ export declare function MiddlewareMixin<T extends MixinTarget<Context>>(superCla
62
62
  optional?: boolean | undefined;
63
63
  } | undefined): Binding<ValueType_8> | undefined;
64
64
  };
65
- findOrCreateBinding: <T_3>(key: BindingAddress<T_3>, policy?: import("@loopback/core").BindingCreationPolicy | undefined) => Binding<T_3>;
65
+ findOrCreateBinding: <T_2>(key: BindingAddress<T_2>, policy?: import("@loopback/core").BindingCreationPolicy | undefined) => Binding<T_2>;
66
66
  getValueOrPromise: <ValueType_9>(keyWithPath: BindingAddress<ValueType_9>, optionsOrSession?: import("@loopback/core").ResolutionOptionsOrSession | undefined) => import("@loopback/core").ValueOrPromise<ValueType_9 | undefined>;
67
67
  toJSON: () => import("@loopback/core").JSONObject;
68
68
  inspect: (options?: import("@loopback/core").ContextInspectOptions | undefined) => import("@loopback/core").JSONObject;
@@ -74,18 +74,18 @@ export declare function MiddlewareMixin<T extends MixinTarget<Context>>(superCla
74
74
  (eventName: "bind" | "unbind", listener: import("@loopback/core").ContextEventListener): Context;
75
75
  (event: string | symbol, listener: (...args: any[]) => void): Context;
76
76
  };
77
- addListener: (event: string | symbol, listener: (...args: any[]) => void) => Context;
78
- removeListener: (event: string | symbol, listener: (...args: any[]) => void) => Context;
79
- off: (event: string | symbol, listener: (...args: any[]) => void) => Context;
77
+ addListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Context;
78
+ removeListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Context;
79
+ off: (eventName: string | symbol, listener: (...args: any[]) => void) => Context;
80
80
  removeAllListeners: (event?: string | symbol | undefined) => Context;
81
81
  setMaxListeners: (n: number) => Context;
82
82
  getMaxListeners: () => number;
83
- listeners: (event: string | symbol) => Function[];
84
- rawListeners: (event: string | symbol) => Function[];
85
- emit: (event: string | symbol, ...args: any[]) => boolean;
86
- listenerCount: (event: string | symbol) => number;
87
- prependListener: (event: string | symbol, listener: (...args: any[]) => void) => Context;
88
- prependOnceListener: (event: string | symbol, listener: (...args: any[]) => void) => Context;
83
+ listeners: (eventName: string | symbol) => Function[];
84
+ rawListeners: (eventName: string | symbol) => Function[];
85
+ emit: (eventName: string | symbol, ...args: any[]) => boolean;
86
+ listenerCount: (eventName: string | symbol) => number;
87
+ prependListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Context;
88
+ prependOnceListener: (eventName: string | symbol, listener: (...args: any[]) => void) => Context;
89
89
  eventNames: () => (string | symbol)[];
90
90
  };
91
91
  } & T;
@@ -99,6 +99,6 @@ export declare function MiddlewareMixin<T extends MixinTarget<Context>>(superCla
99
99
 
100
100
  **Returns:**
101
101
 
102
- { new (...args: any\[\]): { expressMiddleware(key: [BindingAddress](./context.bindingaddress.md)<!-- -->, middleware: [ExpressRequestHandler](./express.expressrequesthandler.md) \| [ExpressRequestHandler](./express.expressrequesthandler.md)<!-- -->\[\], options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; expressMiddleware&lt;CFG&gt;(middlewareFactory: [ExpressMiddlewareFactory](./express.expressmiddlewarefactory.md)<!-- -->&lt;CFG&gt;, middlewareConfig?: CFG \| undefined, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; expressMiddleware&lt;CFG\_1&gt;(factoryOrKey: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt; \| [ExpressMiddlewareFactory](./express.expressmiddlewarefactory.md)<!-- -->&lt;CFG\_1&gt;, configOrHandler: [ExpressRequestHandler](./express.expressrequesthandler.md) \| [ExpressRequestHandler](./express.expressrequesthandler.md)<!-- -->\[\] \| CFG\_1, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; middleware(middleware: [Middleware](./express.middleware.md) \| [Constructor](./context.constructor.md)<!-- -->&lt;[Provider](./context.provider.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;&gt;, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; readonly name: string; readonly subscriptionManager: import("@loopback/core").[ContextSubscriptionManager](./context.contextsubscriptionmanager.md)<!-- -->; scope: import("@loopback/core").[BindingScope](./context.bindingscope.md)<!-- -->; readonly parent: [Context](./context.context.md) \| undefined; emitEvent: &lt;T\_1 extends import("@loopback/core").[ContextEvent](./context.contextevent.md)<!-- -->&gt;(type: string, event: T\_1) =&gt; void; emitError: (err: unknown) =&gt; void; bind: &lt;ValueType = any&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ValueType&gt;; add: (binding: [Binding](./context.binding.md)<!-- -->&lt;unknown&gt;) =&gt; [Context](./context.context.md)<!-- -->; configure: &lt;ConfigValueType = any&gt;(key?: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt; \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ConfigValueType&gt;; getConfigAsValueOrPromise: &lt;ConfigValueType\_1&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ConfigValueType\_1 \| undefined&gt;; getConfig: &lt;ConfigValueType\_2&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; Promise&lt;ConfigValueType\_2 \| undefined&gt;; getConfigSync: &lt;ConfigValueType\_3&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; ConfigValueType\_3 \| undefined; unbind: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; subscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; import("@loopback/core").[Subscription](./context.subscription.md)<!-- -->; unsubscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; boolean; close: () =&gt; void; isSubscribed: (observer: import("@loopback/core").[ContextObserver](./context.contextobserver.md)<!-- -->) =&gt; boolean; createView: &lt;T\_2 = unknown&gt;(filter: import("@loopback/core").[BindingFilter](./context.bindingfilter.md)<!-- -->, comparator?: import("@loopback/core").[BindingComparator](./context.bindingcomparator.md) \| undefined, options?: Omit&lt;import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->, "session"&gt; \| undefined) =&gt; import("@loopback/core").[ContextView](./context.contextview.md)<!-- -->&lt;T\_2&gt;; contains: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; isBound: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt;) =&gt; boolean; getOwnerContext: (keyOrBinding: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;unknown&gt; \| Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; getScopedContext: (scope: import("@loopback/core").[BindingScope.APPLICATION](./context.bindingscope.md) \| import("@loopback/core").[BindingScope.SERVER](./context.bindingscope.md) \| import("@loopback/core").[BindingScope.REQUEST](./context.bindingscope.md)<!-- -->) =&gt; [Context](./context.context.md) \| undefined; getResolutionContext: (binding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; isVisibleTo: (ctx: [Context](./context.context.md)<!-- -->) =&gt; boolean; find: &lt;ValueType\_1 = any&gt;(pattern?: string \| RegExp \| import("@loopback/core").[BindingFilter](./context.bindingfilter.md) \| undefined) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_1&gt;&gt;\[\]; findByTag: &lt;ValueType\_2 = any&gt;(tagFilter: RegExp \| import("@loopback/core").[BindingTag](./context.bindingtag.md)<!-- -->) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_2&gt;&gt;\[\]; get: { &lt;ValueType\_3&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_3&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): Promise&lt;ValueType\_3&gt;; &lt;ValueType\_4&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_4&gt;, options: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->): Promise&lt;ValueType\_4 \| undefined&gt;; }; getSync: { &lt;ValueType\_5&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_5&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): ValueType\_5; &lt;ValueType\_6&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_6&gt;, options?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined): ValueType\_6 \| undefined; }; getBinding: { &lt;ValueType\_7 = any&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_7&gt;): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_7&gt;; &lt;ValueType\_8&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_8&gt;, options?: { optional?: boolean \| undefined; } \| undefined): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_8&gt; \| undefined; }; findOrCreateBinding: &lt;T\_3&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;T\_3&gt;, policy?: import("@loopback/core").[BindingCreationPolicy](./context.bindingcreationpolicy.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_3&gt;; getValueOrPromise: &lt;ValueType\_9&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_9&gt;, optionsOrSession?: import("@loopback/core").[ResolutionOptionsOrSession](./context.resolutionoptionsorsession.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ValueType\_9 \| undefined&gt;; toJSON: () =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; inspect: (options?: import("@loopback/core").[ContextInspectOptions](./context.contextinspectoptions.md) \| undefined) =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; on: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Context](./context.context.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Context](./context.context.md)<!-- -->; }; once: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Context](./context.context.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Context](./context.context.md)<!-- -->; }; addListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; removeListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; off: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; removeAllListeners: (event?: string \| symbol \| undefined) =&gt; [Context](./context.context.md)<!-- -->; setMaxListeners: (n: number) =&gt; [Context](./context.context.md)<!-- -->; getMaxListeners: () =&gt; number; listeners: (event: string \| symbol) =&gt; Function\[\]; rawListeners: (event: string \| symbol) =&gt; Function\[\]; emit: (event: string \| symbol, ...args: any\[\]) =&gt; boolean; listenerCount: (event: string \| symbol) =&gt; number; prependListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; prependOnceListener: (event: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; eventNames: () =&gt; (string \| symbol)\[\]; }; } &amp; T
102
+ { new (...args: any\[\]): { expressMiddleware(key: [BindingAddress](./context.bindingaddress.md)<!-- -->, middleware: [ExpressRequestHandler](./express.expressrequesthandler.md) \| [ExpressRequestHandler](./express.expressrequesthandler.md)<!-- -->\[\], options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; expressMiddleware&lt;CFG&gt;(middlewareFactory: [ExpressMiddlewareFactory](./express.expressmiddlewarefactory.md)<!-- -->&lt;CFG&gt;, middlewareConfig?: CFG \| undefined, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; expressMiddleware&lt;CFG\_1&gt;(factoryOrKey: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt; \| [ExpressMiddlewareFactory](./express.expressmiddlewarefactory.md)<!-- -->&lt;CFG\_1&gt;, configOrHandler: [ExpressRequestHandler](./express.expressrequesthandler.md) \| [ExpressRequestHandler](./express.expressrequesthandler.md)<!-- -->\[\] \| CFG\_1, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; middleware(middleware: [Middleware](./express.middleware.md) \| [Constructor](./context.constructor.md)<!-- -->&lt;[Provider](./context.provider.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;&gt;, options?: [MiddlewareBindingOptions](./express.middlewarebindingoptions.md)<!-- -->): [Binding](./context.binding.md)<!-- -->&lt;[Middleware](./express.middleware.md)<!-- -->&gt;; readonly name: string; readonly subscriptionManager: import("@loopback/core").[ContextSubscriptionManager](./context.contextsubscriptionmanager.md)<!-- -->; scope: import("@loopback/core").[BindingScope](./context.bindingscope.md)<!-- -->; readonly parent: [Context](./context.context.md) \| undefined; emitEvent: &lt;T extends import("@loopback/core").[ContextEvent](./context.contextevent.md)<!-- -->&gt;(type: string, event: T) =&gt; void; emitError: (err: unknown) =&gt; void; bind: &lt;ValueType = any&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType&gt;) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ValueType&gt;; add: (binding: [Binding](./context.binding.md)<!-- -->&lt;unknown&gt;) =&gt; [Context](./context.context.md)<!-- -->; configure: &lt;ConfigValueType = any&gt;(key?: [BindingAddress](./context.bindingaddress.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;ConfigValueType&gt;; getConfigAsValueOrPromise: &lt;ConfigValueType\_1&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ConfigValueType\_1 \| undefined&gt;; getConfig: &lt;ConfigValueType\_2&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; Promise&lt;ConfigValueType\_2 \| undefined&gt;; getConfigSync: &lt;ConfigValueType\_3&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->, propertyPath?: string \| undefined, resolutionOptions?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined) =&gt; ConfigValueType\_3 \| undefined; unbind: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; subscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; import("@loopback/core").[Subscription](./context.subscription.md)<!-- -->; unsubscribe: (observer: import("@loopback/core").[ContextEventObserver](./context.contexteventobserver.md)<!-- -->) =&gt; boolean; close: () =&gt; void; isSubscribed: (observer: import("@loopback/core").[ContextObserver](./context.contextobserver.md)<!-- -->) =&gt; boolean; createView: &lt;T\_1 = unknown&gt;(filter: import("@loopback/core").[BindingFilter](./context.bindingfilter.md)<!-- -->, comparator?: import("@loopback/core").[BindingComparator](./context.bindingcomparator.md) \| undefined, options?: Omit&lt;import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->, "session"&gt; \| undefined) =&gt; import("@loopback/core").[ContextView](./context.contextview.md)<!-- -->&lt;T\_1&gt;; contains: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; isBound: (key: [BindingAddress](./context.bindingaddress.md)<!-- -->) =&gt; boolean; getOwnerContext: (keyOrBinding: [BindingAddress](./context.bindingaddress.md) \| Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; getScopedContext: (scope: import("@loopback/core").[BindingScope.APPLICATION](./context.bindingscope.md) \| import("@loopback/core").[BindingScope.SERVER](./context.bindingscope.md) \| import("@loopback/core").[BindingScope.REQUEST](./context.bindingscope.md)<!-- -->) =&gt; [Context](./context.context.md) \| undefined; getResolutionContext: (binding: Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;unknown&gt;&gt;) =&gt; [Context](./context.context.md) \| undefined; isVisibleTo: (ctx: [Context](./context.context.md)<!-- -->) =&gt; boolean; find: &lt;ValueType\_1 = any&gt;(pattern?: string \| RegExp \| import("@loopback/core").[BindingFilter](./context.bindingfilter.md) \| undefined) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_1&gt;&gt;\[\]; findByTag: &lt;ValueType\_2 = any&gt;(tagFilter: RegExp \| import("@loopback/core").[BindingTag](./context.bindingtag.md)<!-- -->) =&gt; Readonly&lt;[Binding](./context.binding.md)<!-- -->&lt;ValueType\_2&gt;&gt;\[\]; get: { &lt;ValueType\_3&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_3&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): Promise&lt;ValueType\_3&gt;; &lt;ValueType\_4&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_4&gt;, options: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md)<!-- -->): Promise&lt;ValueType\_4 \| undefined&gt;; }; getSync: { &lt;ValueType\_5&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_5&gt;, session?: import("@loopback/core").[ResolutionSession](./context.resolutionsession.md) \| undefined): ValueType\_5; &lt;ValueType\_6&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_6&gt;, options?: import("@loopback/core").[ResolutionOptions](./context.resolutionoptions.md) \| undefined): ValueType\_6 \| undefined; }; getBinding: { &lt;ValueType\_7 = any&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_7&gt;): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_7&gt;; &lt;ValueType\_8&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_8&gt;, options?: { optional?: boolean \| undefined; } \| undefined): [Binding](./context.binding.md)<!-- -->&lt;ValueType\_8&gt; \| undefined; }; findOrCreateBinding: &lt;T\_2&gt;(key: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;T\_2&gt;, policy?: import("@loopback/core").[BindingCreationPolicy](./context.bindingcreationpolicy.md) \| undefined) =&gt; [Binding](./context.binding.md)<!-- -->&lt;T\_2&gt;; getValueOrPromise: &lt;ValueType\_9&gt;(keyWithPath: [BindingAddress](./context.bindingaddress.md)<!-- -->&lt;ValueType\_9&gt;, optionsOrSession?: import("@loopback/core").[ResolutionOptionsOrSession](./context.resolutionoptionsorsession.md) \| undefined) =&gt; import("@loopback/core").[ValueOrPromise](./context.valueorpromise.md)<!-- -->&lt;ValueType\_9 \| undefined&gt;; toJSON: () =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; inspect: (options?: import("@loopback/core").[ContextInspectOptions](./context.contextinspectoptions.md) \| undefined) =&gt; import("@loopback/core").[JSONObject](./context.jsonobject.md)<!-- -->; on: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Context](./context.context.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Context](./context.context.md)<!-- -->; }; once: { (eventName: "bind" \| "unbind", listener: import("@loopback/core").[ContextEventListener](./context.contexteventlistener.md)<!-- -->): [Context](./context.context.md)<!-- -->; (event: string \| symbol, listener: (...args: any\[\]) =&gt; void): [Context](./context.context.md)<!-- -->; }; addListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; removeListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; off: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; removeAllListeners: (event?: string \| symbol \| undefined) =&gt; [Context](./context.context.md)<!-- -->; setMaxListeners: (n: number) =&gt; [Context](./context.context.md)<!-- -->; getMaxListeners: () =&gt; number; listeners: (eventName: string \| symbol) =&gt; Function\[\]; rawListeners: (eventName: string \| symbol) =&gt; Function\[\]; emit: (eventName: string \| symbol, ...args: any\[\]) =&gt; boolean; listenerCount: (eventName: string \| symbol) =&gt; number; prependListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; prependOnceListener: (eventName: string \| symbol, listener: (...args: any\[\]) =&gt; void) =&gt; [Context](./context.context.md)<!-- -->; eventNames: () =&gt; (string \| symbol)\[\]; }; } &amp; T
103
103
 
104
104