@dyanet/nestjs-config-aws 1.2.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +60 -43
- package/dist/cjs/aws-config-loader.js +57 -0
- package/dist/cjs/build-loaders.js +58 -0
- package/dist/cjs/config.module.js +138 -0
- package/dist/cjs/index.js +46 -0
- package/dist/cjs/interfaces/config-service.interface.js +11 -0
- package/dist/cjs/interfaces/default-schema.interface.js +63 -0
- package/dist/cjs/{nestjs-config-aws/src/interfaces → interfaces}/index.js +1 -1
- package/dist/cjs/interfaces/module-options.interface.js +3 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/services/config.service.js +142 -0
- package/dist/esm/aws-config-loader.js +54 -0
- package/dist/esm/build-loaders.js +55 -0
- package/dist/esm/config.module.js +135 -0
- package/dist/esm/index.js +18 -0
- package/dist/esm/interfaces/config-service.interface.js +7 -0
- package/dist/esm/interfaces/default-schema.interface.js +59 -0
- package/dist/esm/interfaces/index.js +8 -0
- package/dist/esm/interfaces/module-options.interface.js +2 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/services/config.service.js +139 -0
- package/dist/types/aws-config-loader.d.ts +74 -0
- package/dist/types/aws-config-loader.d.ts.map +1 -0
- package/dist/types/build-loaders.d.ts +30 -0
- package/dist/types/build-loaders.d.ts.map +1 -0
- package/dist/types/{nestjs-config-aws/src/config.module.d.ts → config.module.d.ts} +2 -8
- package/dist/types/config.module.d.ts.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/interfaces/config-service.interface.d.ts.map +1 -0
- package/dist/types/{nestjs-config-aws/src/interfaces → interfaces}/default-schema.interface.d.ts +14 -14
- package/dist/types/interfaces/default-schema.interface.d.ts.map +1 -0
- package/dist/types/interfaces/index.d.ts.map +1 -0
- package/dist/types/{nestjs-config-aws/src/interfaces → interfaces}/module-options.interface.d.ts +22 -3
- package/dist/types/interfaces/module-options.interface.d.ts.map +1 -0
- package/dist/types/services/config.service.d.ts.map +1 -0
- package/package.json +12 -6
- package/dist/cjs/config-aws/src/config-manager.js +0 -366
- package/dist/cjs/config-aws/src/errors/index.js +0 -77
- package/dist/cjs/config-aws/src/index.js +0 -37
- package/dist/cjs/config-aws/src/interfaces/config-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/config-manager.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/env-file-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/environment-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/s3-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/secrets-manager-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/interfaces/ssm-parameter-store-loader.interface.js +0 -3
- package/dist/cjs/config-aws/src/loaders/env-file.loader.js +0 -169
- package/dist/cjs/config-aws/src/loaders/environment.loader.js +0 -85
- package/dist/cjs/config-aws/src/loaders/s3.loader.js +0 -145
- package/dist/cjs/config-aws/src/loaders/secrets-manager.loader.js +0 -169
- package/dist/cjs/config-aws/src/loaders/ssm-parameter-store.loader.js +0 -199
- package/dist/cjs/config-aws/src/utils/env-file-parser.util.js +0 -98
- package/dist/cjs/config-aws/src/utils/validation.util.js +0 -116
- package/dist/cjs/nestjs-config-aws/src/config.module.js +0 -175
- package/dist/cjs/nestjs-config-aws/src/index.js +0 -61
- package/dist/cjs/nestjs-config-aws/src/integration/index.js +0 -23
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/index.js +0 -26
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/integration-options.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/integration-state.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.js +0 -73
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.js +0 -4
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/utility-types.interface.js +0 -52
- package/dist/cjs/nestjs-config-aws/src/integration/nestjs-config-integration.module.js +0 -124
- package/dist/cjs/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.js +0 -592
- package/dist/cjs/nestjs-config-aws/src/integration/providers/configuration-factory.provider.js +0 -385
- package/dist/cjs/nestjs-config-aws/src/integration/providers/index.js +0 -20
- package/dist/cjs/nestjs-config-aws/src/integration/services/async-config-helper.service.js +0 -366
- package/dist/cjs/nestjs-config-aws/src/integration/services/error-handler.service.js +0 -267
- package/dist/cjs/nestjs-config-aws/src/integration/services/factory-registration.service.js +0 -517
- package/dist/cjs/nestjs-config-aws/src/integration/services/index.js +0 -26
- package/dist/cjs/nestjs-config-aws/src/integration/services/integration-state.service.js +0 -81
- package/dist/cjs/nestjs-config-aws/src/integration/services/namespace-handler.service.js +0 -465
- package/dist/cjs/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.js +0 -318
- package/dist/cjs/nestjs-config-aws/src/integration/services/precedence-handler.service.js +0 -292
- package/dist/cjs/nestjs-config-aws/src/integration/services/validation-integration.service.js +0 -595
- package/dist/cjs/nestjs-config-aws/src/integration/utils/config-integration.util.js +0 -283
- package/dist/cjs/nestjs-config-aws/src/integration/utils/index.js +0 -19
- package/dist/cjs/nestjs-config-aws/src/interfaces/config-service.interface.js +0 -11
- package/dist/cjs/nestjs-config-aws/src/interfaces/default-schema.interface.js +0 -63
- package/dist/cjs/nestjs-config-aws/src/interfaces/module-options.interface.js +0 -3
- package/dist/cjs/nestjs-config-aws/src/services/config.service.js +0 -142
- package/dist/esm/config-aws/src/config-manager.js +0 -362
- package/dist/esm/config-aws/src/errors/index.js +0 -69
- package/dist/esm/config-aws/src/index.js +0 -21
- package/dist/esm/config-aws/src/interfaces/config-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/config-manager.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/env-file-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/environment-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/s3-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/secrets-manager-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/interfaces/ssm-parameter-store-loader.interface.js +0 -2
- package/dist/esm/config-aws/src/loaders/env-file.loader.js +0 -132
- package/dist/esm/config-aws/src/loaders/environment.loader.js +0 -81
- package/dist/esm/config-aws/src/loaders/s3.loader.js +0 -141
- package/dist/esm/config-aws/src/loaders/secrets-manager.loader.js +0 -165
- package/dist/esm/config-aws/src/loaders/ssm-parameter-store.loader.js +0 -195
- package/dist/esm/config-aws/src/utils/env-file-parser.util.js +0 -94
- package/dist/esm/config-aws/src/utils/validation.util.js +0 -112
- package/dist/esm/nestjs-config-aws/src/config.module.js +0 -172
- package/dist/esm/nestjs-config-aws/src/index.js +0 -23
- package/dist/esm/nestjs-config-aws/src/integration/index.js +0 -7
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/index.js +0 -10
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/integration-options.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/integration-state.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.js +0 -64
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.js +0 -3
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/utility-types.interface.js +0 -44
- package/dist/esm/nestjs-config-aws/src/integration/nestjs-config-integration.module.js +0 -121
- package/dist/esm/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.js +0 -589
- package/dist/esm/nestjs-config-aws/src/integration/providers/configuration-factory.provider.js +0 -382
- package/dist/esm/nestjs-config-aws/src/integration/providers/index.js +0 -4
- package/dist/esm/nestjs-config-aws/src/integration/services/async-config-helper.service.js +0 -363
- package/dist/esm/nestjs-config-aws/src/integration/services/error-handler.service.js +0 -264
- package/dist/esm/nestjs-config-aws/src/integration/services/factory-registration.service.js +0 -514
- package/dist/esm/nestjs-config-aws/src/integration/services/index.js +0 -10
- package/dist/esm/nestjs-config-aws/src/integration/services/integration-state.service.js +0 -78
- package/dist/esm/nestjs-config-aws/src/integration/services/namespace-handler.service.js +0 -462
- package/dist/esm/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.js +0 -315
- package/dist/esm/nestjs-config-aws/src/integration/services/precedence-handler.service.js +0 -289
- package/dist/esm/nestjs-config-aws/src/integration/services/validation-integration.service.js +0 -589
- package/dist/esm/nestjs-config-aws/src/integration/utils/config-integration.util.js +0 -240
- package/dist/esm/nestjs-config-aws/src/integration/utils/index.js +0 -3
- package/dist/esm/nestjs-config-aws/src/interfaces/config-service.interface.js +0 -7
- package/dist/esm/nestjs-config-aws/src/interfaces/default-schema.interface.js +0 -59
- package/dist/esm/nestjs-config-aws/src/interfaces/index.js +0 -8
- package/dist/esm/nestjs-config-aws/src/interfaces/module-options.interface.js +0 -2
- package/dist/esm/nestjs-config-aws/src/services/config.service.js +0 -139
- package/dist/types/config-aws/src/config-manager.d.ts +0 -119
- package/dist/types/config-aws/src/config-manager.d.ts.map +0 -1
- package/dist/types/config-aws/src/errors/index.d.ts +0 -43
- package/dist/types/config-aws/src/errors/index.d.ts.map +0 -1
- package/dist/types/config-aws/src/index.d.ts +0 -24
- package/dist/types/config-aws/src/index.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/config-loader.interface.d.ts +0 -33
- package/dist/types/config-aws/src/interfaces/config-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/config-manager.interface.d.ts +0 -86
- package/dist/types/config-aws/src/interfaces/config-manager.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/env-file-loader.interface.d.ts +0 -12
- package/dist/types/config-aws/src/interfaces/env-file-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/environment-loader.interface.d.ts +0 -10
- package/dist/types/config-aws/src/interfaces/environment-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/s3-loader.interface.d.ts +0 -14
- package/dist/types/config-aws/src/interfaces/s3-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/secrets-manager-loader.interface.d.ts +0 -12
- package/dist/types/config-aws/src/interfaces/secrets-manager-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/interfaces/ssm-parameter-store-loader.interface.d.ts +0 -14
- package/dist/types/config-aws/src/interfaces/ssm-parameter-store-loader.interface.d.ts.map +0 -1
- package/dist/types/config-aws/src/loaders/env-file.loader.d.ts +0 -69
- package/dist/types/config-aws/src/loaders/env-file.loader.d.ts.map +0 -1
- package/dist/types/config-aws/src/loaders/environment.loader.d.ts +0 -46
- package/dist/types/config-aws/src/loaders/environment.loader.d.ts.map +0 -1
- package/dist/types/config-aws/src/loaders/s3.loader.d.ts +0 -62
- package/dist/types/config-aws/src/loaders/s3.loader.d.ts.map +0 -1
- package/dist/types/config-aws/src/loaders/secrets-manager.loader.d.ts +0 -68
- package/dist/types/config-aws/src/loaders/secrets-manager.loader.d.ts.map +0 -1
- package/dist/types/config-aws/src/loaders/ssm-parameter-store.loader.d.ts +0 -78
- package/dist/types/config-aws/src/loaders/ssm-parameter-store.loader.d.ts.map +0 -1
- package/dist/types/config-aws/src/utils/env-file-parser.util.d.ts +0 -45
- package/dist/types/config-aws/src/utils/env-file-parser.util.d.ts.map +0 -1
- package/dist/types/config-aws/src/utils/validation.util.d.ts +0 -53
- package/dist/types/config-aws/src/utils/validation.util.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/config.module.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/index.d.ts +0 -11
- package/dist/types/nestjs-config-aws/src/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/index.d.ts +0 -6
- package/dist/types/nestjs-config-aws/src/integration/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.d.ts +0 -71
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.d.ts +0 -24
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/index.d.ts +0 -9
- package/dist/types/nestjs-config-aws/src/integration/interfaces/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-options.interface.d.ts +0 -66
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-options.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-state.interface.d.ts +0 -17
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-state.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.d.ts +0 -332
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.d.ts +0 -259
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.d.ts +0 -209
- package/dist/types/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/interfaces/utility-types.interface.d.ts +0 -249
- package/dist/types/nestjs-config-aws/src/integration/interfaces/utility-types.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/nestjs-config-integration.module.d.ts +0 -36
- package/dist/types/nestjs-config-aws/src/integration/nestjs-config-integration.module.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.d.ts +0 -134
- package/dist/types/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/providers/configuration-factory.provider.d.ts +0 -119
- package/dist/types/nestjs-config-aws/src/integration/providers/configuration-factory.provider.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/providers/index.d.ts +0 -3
- package/dist/types/nestjs-config-aws/src/integration/providers/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/async-config-helper.service.d.ts +0 -84
- package/dist/types/nestjs-config-aws/src/integration/services/async-config-helper.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/error-handler.service.d.ts +0 -84
- package/dist/types/nestjs-config-aws/src/integration/services/error-handler.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/factory-registration.service.d.ts +0 -158
- package/dist/types/nestjs-config-aws/src/integration/services/factory-registration.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/index.d.ts +0 -9
- package/dist/types/nestjs-config-aws/src/integration/services/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/integration-state.service.d.ts +0 -41
- package/dist/types/nestjs-config-aws/src/integration/services/integration-state.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/namespace-handler.service.d.ts +0 -192
- package/dist/types/nestjs-config-aws/src/integration/services/namespace-handler.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.d.ts +0 -87
- package/dist/types/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/precedence-handler.service.d.ts +0 -103
- package/dist/types/nestjs-config-aws/src/integration/services/precedence-handler.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/services/validation-integration.service.d.ts +0 -222
- package/dist/types/nestjs-config-aws/src/integration/services/validation-integration.service.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/utils/config-integration.util.d.ts +0 -81
- package/dist/types/nestjs-config-aws/src/integration/utils/config-integration.util.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/integration/utils/index.d.ts +0 -2
- package/dist/types/nestjs-config-aws/src/integration/utils/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/interfaces/config-service.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/interfaces/default-schema.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/interfaces/index.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/interfaces/module-options.interface.d.ts.map +0 -1
- package/dist/types/nestjs-config-aws/src/services/config.service.d.ts.map +0 -1
- /package/dist/types/{nestjs-config-aws/src/interfaces → interfaces}/config-service.interface.d.ts +0 -0
- /package/dist/types/{nestjs-config-aws/src/interfaces → interfaces}/index.d.ts +0 -0
- /package/dist/types/{nestjs-config-aws/src/services → services}/config.service.d.ts +0 -0
package/dist/types/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.d.ts
DELETED
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generic type for typed configuration access.
|
|
3
|
-
* Provides type safety for configuration values loaded from AWS sources.
|
|
4
|
-
*/
|
|
5
|
-
export interface TypedConfiguration<T = any> {
|
|
6
|
-
/** The configuration data with proper typing */
|
|
7
|
-
data: T;
|
|
8
|
-
/** Namespace for this configuration */
|
|
9
|
-
namespace?: string;
|
|
10
|
-
/** Whether this configuration was loaded from AWS sources */
|
|
11
|
-
fromAws: boolean;
|
|
12
|
-
/** Timestamp when this configuration was loaded */
|
|
13
|
-
loadedAt: Date;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Generic configuration factory with type safety.
|
|
17
|
-
*/
|
|
18
|
-
export interface TypedConfigurationFactory<T = any> {
|
|
19
|
-
/** Type-safe configuration data */
|
|
20
|
-
(): T;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Configuration accessor with type safety for AWS-sourced values.
|
|
24
|
-
*/
|
|
25
|
-
export interface TypedConfigurationAccessor {
|
|
26
|
-
/**
|
|
27
|
-
* Get typed configuration value with type safety.
|
|
28
|
-
* @param key - Configuration key (supports dot notation)
|
|
29
|
-
* @returns Typed configuration value
|
|
30
|
-
*/
|
|
31
|
-
get<T = any>(key: string): T | undefined;
|
|
32
|
-
/**
|
|
33
|
-
* Get typed configuration value or throw if not found.
|
|
34
|
-
* @param key - Configuration key (supports dot notation)
|
|
35
|
-
* @returns Typed configuration value
|
|
36
|
-
* @throws Error if key is not found
|
|
37
|
-
*/
|
|
38
|
-
getOrThrow<T = any>(key: string): T;
|
|
39
|
-
/**
|
|
40
|
-
* Get namespaced typed configuration.
|
|
41
|
-
* @param namespace - Configuration namespace
|
|
42
|
-
* @returns Typed configuration for the namespace
|
|
43
|
-
*/
|
|
44
|
-
getNamespaced<T = any>(namespace: string): TypedConfiguration<T> | undefined;
|
|
45
|
-
/**
|
|
46
|
-
* Get namespaced typed configuration or throw if not found.
|
|
47
|
-
* @param namespace - Configuration namespace
|
|
48
|
-
* @returns Typed configuration for the namespace
|
|
49
|
-
* @throws Error if namespace is not found
|
|
50
|
-
*/
|
|
51
|
-
getNamespacedOrThrow<T = any>(namespace: string): TypedConfiguration<T>;
|
|
52
|
-
/**
|
|
53
|
-
* Check if a configuration key exists.
|
|
54
|
-
* @param key - Configuration key (supports dot notation)
|
|
55
|
-
* @returns True if key exists, false otherwise
|
|
56
|
-
*/
|
|
57
|
-
has(key: string): boolean;
|
|
58
|
-
/**
|
|
59
|
-
* Check if a namespace exists.
|
|
60
|
-
* @param namespace - Configuration namespace
|
|
61
|
-
* @returns True if namespace exists, false otherwise
|
|
62
|
-
*/
|
|
63
|
-
hasNamespace(namespace: string): boolean;
|
|
64
|
-
/**
|
|
65
|
-
* Get all configuration keys.
|
|
66
|
-
* @returns Array of all configuration keys
|
|
67
|
-
*/
|
|
68
|
-
getKeys(): string[];
|
|
69
|
-
/**
|
|
70
|
-
* Get all namespaces.
|
|
71
|
-
* @returns Array of all namespaces
|
|
72
|
-
*/
|
|
73
|
-
getNamespaces(): string[];
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Type-safe configuration schema definition.
|
|
77
|
-
*/
|
|
78
|
-
export interface ConfigurationSchema<T = any> {
|
|
79
|
-
/** Schema name/identifier */
|
|
80
|
-
name: string;
|
|
81
|
-
/** Optional namespace for this schema */
|
|
82
|
-
namespace?: string;
|
|
83
|
-
/** Type definition for the configuration */
|
|
84
|
-
type: new () => T;
|
|
85
|
-
/** Optional validation function */
|
|
86
|
-
validate?: (config: any) => config is T;
|
|
87
|
-
/** Optional default values */
|
|
88
|
-
defaults?: Partial<T>;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Configuration registry for managing typed configurations.
|
|
92
|
-
*/
|
|
93
|
-
export interface TypedConfigurationRegistry {
|
|
94
|
-
/**
|
|
95
|
-
* Register a typed configuration schema.
|
|
96
|
-
* @param schema - Configuration schema to register
|
|
97
|
-
*/
|
|
98
|
-
register<T>(schema: ConfigurationSchema<T>): void;
|
|
99
|
-
/**
|
|
100
|
-
* Get a typed configuration by name.
|
|
101
|
-
* @param name - Schema name
|
|
102
|
-
* @returns Typed configuration or undefined
|
|
103
|
-
*/
|
|
104
|
-
get<T = any>(name: string): TypedConfiguration<T> | undefined;
|
|
105
|
-
/**
|
|
106
|
-
* Get a typed configuration by name or throw if not found.
|
|
107
|
-
* @param name - Schema name
|
|
108
|
-
* @returns Typed configuration
|
|
109
|
-
* @throws Error if schema is not found
|
|
110
|
-
*/
|
|
111
|
-
getOrThrow<T = any>(name: string): TypedConfiguration<T>;
|
|
112
|
-
/**
|
|
113
|
-
* Check if a schema is registered.
|
|
114
|
-
* @param name - Schema name
|
|
115
|
-
* @returns True if schema is registered, false otherwise
|
|
116
|
-
*/
|
|
117
|
-
has(name: string): boolean;
|
|
118
|
-
/**
|
|
119
|
-
* Get all registered schema names.
|
|
120
|
-
* @returns Array of schema names
|
|
121
|
-
*/
|
|
122
|
-
getSchemaNames(): string[];
|
|
123
|
-
/**
|
|
124
|
-
* Unregister a schema.
|
|
125
|
-
* @param name - Schema name to unregister
|
|
126
|
-
*/
|
|
127
|
-
unregister(name: string): void;
|
|
128
|
-
/**
|
|
129
|
-
* Clear all registered schemas.
|
|
130
|
-
*/
|
|
131
|
-
clear(): void;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Options for typed configuration access.
|
|
135
|
-
*/
|
|
136
|
-
export interface TypedConfigurationOptions {
|
|
137
|
-
/** Whether to enable strict type checking */
|
|
138
|
-
strictTypes?: boolean;
|
|
139
|
-
/** Whether to cache typed configurations */
|
|
140
|
-
cache?: boolean;
|
|
141
|
-
/** Default namespace for unnamespaced configurations */
|
|
142
|
-
defaultNamespace?: string;
|
|
143
|
-
/** Whether to throw on type validation failures */
|
|
144
|
-
throwOnValidationError?: boolean;
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Utility type for extracting configuration type from a factory.
|
|
148
|
-
*/
|
|
149
|
-
export type ConfigurationType<T> = T extends TypedConfigurationFactory<infer U> ? U : never;
|
|
150
|
-
/**
|
|
151
|
-
* Utility type for creating strongly typed configuration objects.
|
|
152
|
-
*/
|
|
153
|
-
export type StronglyTypedConfig<T extends Record<string, any>> = {
|
|
154
|
-
readonly [K in keyof T]: T[K];
|
|
155
|
-
};
|
|
156
|
-
/**
|
|
157
|
-
* Configuration value with metadata about its source and type.
|
|
158
|
-
*/
|
|
159
|
-
export interface ConfigurationValue<T = any> {
|
|
160
|
-
/** The actual configuration value */
|
|
161
|
-
value: T;
|
|
162
|
-
/** Source of this configuration value */
|
|
163
|
-
source: 'environment' | 'secrets-manager' | 'ssm' | 'local-file';
|
|
164
|
-
/** Whether this value came from AWS */
|
|
165
|
-
fromAws: boolean;
|
|
166
|
-
/** Namespace this value belongs to */
|
|
167
|
-
namespace?: string;
|
|
168
|
-
/** Original key used to access this value */
|
|
169
|
-
key: string;
|
|
170
|
-
/** Type of the value */
|
|
171
|
-
type: string;
|
|
172
|
-
/** Whether this value was validated */
|
|
173
|
-
validated: boolean;
|
|
174
|
-
/** Timestamp when this value was loaded */
|
|
175
|
-
loadedAt: Date;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Configuration path resolver for nested configuration access.
|
|
179
|
-
*/
|
|
180
|
-
export interface ConfigurationPathResolver {
|
|
181
|
-
/**
|
|
182
|
-
* Resolve a configuration path to its value.
|
|
183
|
-
* @param path - Configuration path (supports dot notation)
|
|
184
|
-
* @param config - Configuration object to resolve against
|
|
185
|
-
* @returns Resolved value or undefined
|
|
186
|
-
*/
|
|
187
|
-
resolve<T = any>(path: string, config: Record<string, any>): T | undefined;
|
|
188
|
-
/**
|
|
189
|
-
* Set a value at a configuration path.
|
|
190
|
-
* @param path - Configuration path (supports dot notation)
|
|
191
|
-
* @param value - Value to set
|
|
192
|
-
* @param config - Configuration object to modify
|
|
193
|
-
*/
|
|
194
|
-
set<T = any>(path: string, value: T, config: Record<string, any>): void;
|
|
195
|
-
/**
|
|
196
|
-
* Check if a configuration path exists.
|
|
197
|
-
* @param path - Configuration path (supports dot notation)
|
|
198
|
-
* @param config - Configuration object to check
|
|
199
|
-
* @returns True if path exists, false otherwise
|
|
200
|
-
*/
|
|
201
|
-
exists(path: string, config: Record<string, any>): boolean;
|
|
202
|
-
/**
|
|
203
|
-
* Get all paths in a configuration object.
|
|
204
|
-
* @param config - Configuration object to analyze
|
|
205
|
-
* @returns Array of all configuration paths
|
|
206
|
-
*/
|
|
207
|
-
getAllPaths(config: Record<string, any>): string[];
|
|
208
|
-
}
|
|
209
|
-
//# sourceMappingURL=typed-configuration.interface.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typed-configuration.interface.d.ts","sourceRoot":"","sources":["../../../../../../src/integration/interfaces/typed-configuration.interface.ts"],"names":[],"mappings":"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"}
|
package/dist/types/nestjs-config-aws/src/integration/interfaces/utility-types.interface.d.ts
DELETED
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility types for enhanced TypeScript support in nest-config-aws integration.
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Deep readonly type for configuration objects.
|
|
6
|
-
*/
|
|
7
|
-
export type DeepReadonly<T> = {
|
|
8
|
-
readonly [P in keyof T]: T[P] extends (infer U)[] ? DeepReadonlyArray<U> : T[P] extends object ? DeepReadonly<T[P]> : T[P];
|
|
9
|
-
};
|
|
10
|
-
/**
|
|
11
|
-
* Deep readonly array type.
|
|
12
|
-
*/
|
|
13
|
-
export interface DeepReadonlyArray<T> extends ReadonlyArray<DeepReadonly<T>> {
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Partial deep type for configuration objects.
|
|
17
|
-
*/
|
|
18
|
-
export type PartialDeep<T> = {
|
|
19
|
-
[P in keyof T]?: T[P] extends (infer U)[] ? PartialDeepArray<U> : T[P] extends object ? PartialDeep<T[P]> : T[P];
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Partial deep array type.
|
|
23
|
-
*/
|
|
24
|
-
export interface PartialDeepArray<T> extends Array<PartialDeep<T>> {
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Required deep type for configuration objects.
|
|
28
|
-
*/
|
|
29
|
-
export type RequiredDeep<T> = {
|
|
30
|
-
[P in keyof T]-?: T[P] extends (infer U)[] ? RequiredDeepArray<U> : T[P] extends object ? RequiredDeep<T[P]> : T[P];
|
|
31
|
-
};
|
|
32
|
-
/**
|
|
33
|
-
* Required deep array type.
|
|
34
|
-
*/
|
|
35
|
-
export interface RequiredDeepArray<T> extends Array<RequiredDeep<T>> {
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Configuration path type for dot notation access.
|
|
39
|
-
*/
|
|
40
|
-
export type ConfigPath<T, K extends keyof T = keyof T> = K extends string ? T[K] extends Record<string, any> ? `${K}` | `${K}.${ConfigPath<T[K]>}` : `${K}` : never;
|
|
41
|
-
/**
|
|
42
|
-
* Configuration value type for a given path.
|
|
43
|
-
*/
|
|
44
|
-
export type ConfigValue<T, P extends string> = P extends `${infer K}.${infer Rest}` ? K extends keyof T ? ConfigValue<T[K], Rest> : never : P extends keyof T ? T[P] : never;
|
|
45
|
-
/**
|
|
46
|
-
* AWS configuration source union type.
|
|
47
|
-
*/
|
|
48
|
-
export type AwsConfigSource = 'secrets-manager' | 'ssm';
|
|
49
|
-
/**
|
|
50
|
-
* Local configuration source union type.
|
|
51
|
-
*/
|
|
52
|
-
export type LocalConfigSource = 'environment' | 'local-file';
|
|
53
|
-
/**
|
|
54
|
-
* All configuration source union type.
|
|
55
|
-
*/
|
|
56
|
-
export type AllConfigSource = AwsConfigSource | LocalConfigSource;
|
|
57
|
-
/**
|
|
58
|
-
* Configuration source metadata.
|
|
59
|
-
*/
|
|
60
|
-
export type ConfigSourceMetadata<T extends AllConfigSource> = {
|
|
61
|
-
source: T;
|
|
62
|
-
isAws: T extends AwsConfigSource ? true : false;
|
|
63
|
-
priority: number;
|
|
64
|
-
loadedAt: Date;
|
|
65
|
-
};
|
|
66
|
-
/**
|
|
67
|
-
* Configuration with source metadata.
|
|
68
|
-
*/
|
|
69
|
-
export type ConfigWithSource<T, S extends AllConfigSource> = T & {
|
|
70
|
-
__metadata: ConfigSourceMetadata<S>;
|
|
71
|
-
};
|
|
72
|
-
/**
|
|
73
|
-
* Extract configuration type from a configuration factory.
|
|
74
|
-
*/
|
|
75
|
-
export type ExtractConfig<T> = T extends () => infer U ? U : never;
|
|
76
|
-
/**
|
|
77
|
-
* Configuration factory map type.
|
|
78
|
-
*/
|
|
79
|
-
export type ConfigFactoryMap = Record<string, () => any>;
|
|
80
|
-
/**
|
|
81
|
-
* Extract all configuration types from a factory map.
|
|
82
|
-
*/
|
|
83
|
-
export type ExtractConfigMap<T extends ConfigFactoryMap> = {
|
|
84
|
-
[K in keyof T]: ExtractConfig<T[K]>;
|
|
85
|
-
};
|
|
86
|
-
/**
|
|
87
|
-
* Namespace configuration type.
|
|
88
|
-
*/
|
|
89
|
-
export type NamespaceConfig<T extends Record<string, any>> = {
|
|
90
|
-
[K in keyof T]: T[K];
|
|
91
|
-
};
|
|
92
|
-
/**
|
|
93
|
-
* Multi-namespace configuration type.
|
|
94
|
-
*/
|
|
95
|
-
export type MultiNamespaceConfig<T extends Record<string, Record<string, any>>> = {
|
|
96
|
-
[K in keyof T]: NamespaceConfig<T[K]>;
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* Configuration validation result.
|
|
100
|
-
*/
|
|
101
|
-
export type ValidationResult<T = any> = {
|
|
102
|
-
isValid: boolean;
|
|
103
|
-
data?: T;
|
|
104
|
-
errors: string[];
|
|
105
|
-
};
|
|
106
|
-
/**
|
|
107
|
-
* Async configuration validation result.
|
|
108
|
-
*/
|
|
109
|
-
export type AsyncValidationResult<T = any> = Promise<ValidationResult<T>>;
|
|
110
|
-
/**
|
|
111
|
-
* Configuration transformer function type.
|
|
112
|
-
*/
|
|
113
|
-
export type ConfigTransformerFn<TInput, TOutput> = (input: TInput) => TOutput;
|
|
114
|
-
/**
|
|
115
|
-
* Async configuration transformer function type.
|
|
116
|
-
*/
|
|
117
|
-
export type AsyncConfigTransformerFn<TInput, TOutput> = (input: TInput) => Promise<TOutput>;
|
|
118
|
-
/**
|
|
119
|
-
* Configuration predicate function type.
|
|
120
|
-
*/
|
|
121
|
-
export type ConfigPredicate<T> = (config: T) => boolean;
|
|
122
|
-
/**
|
|
123
|
-
* Async configuration predicate function type.
|
|
124
|
-
*/
|
|
125
|
-
export type AsyncConfigPredicate<T> = (config: T) => Promise<boolean>;
|
|
126
|
-
/**
|
|
127
|
-
* Configuration key extractor type.
|
|
128
|
-
*/
|
|
129
|
-
export type ConfigKeyExtractor<T> = (config: T) => string[];
|
|
130
|
-
/**
|
|
131
|
-
* Configuration value extractor type.
|
|
132
|
-
*/
|
|
133
|
-
export type ConfigValueExtractor<T, U> = (config: T, key: string) => U | undefined;
|
|
134
|
-
/**
|
|
135
|
-
* Configuration merger function type.
|
|
136
|
-
*/
|
|
137
|
-
export type ConfigMerger<T> = (primary: T, secondary: T) => T;
|
|
138
|
-
/**
|
|
139
|
-
* Configuration serializer function type.
|
|
140
|
-
*/
|
|
141
|
-
export type ConfigSerializer<T> = (config: T) => string;
|
|
142
|
-
/**
|
|
143
|
-
* Configuration deserializer function type.
|
|
144
|
-
*/
|
|
145
|
-
export type ConfigDeserializer<T> = (serialized: string) => T;
|
|
146
|
-
/**
|
|
147
|
-
* Configuration cache key generator type.
|
|
148
|
-
*/
|
|
149
|
-
export type CacheKeyGenerator<T> = (config: T) => string;
|
|
150
|
-
/**
|
|
151
|
-
* Configuration cache entry type.
|
|
152
|
-
*/
|
|
153
|
-
export type CacheEntry<T> = {
|
|
154
|
-
key: string;
|
|
155
|
-
value: T;
|
|
156
|
-
timestamp: Date;
|
|
157
|
-
ttl?: number;
|
|
158
|
-
};
|
|
159
|
-
/**
|
|
160
|
-
* Configuration cache type.
|
|
161
|
-
*/
|
|
162
|
-
export type ConfigCache<T> = Map<string, CacheEntry<T>>;
|
|
163
|
-
/**
|
|
164
|
-
* Configuration event type.
|
|
165
|
-
*/
|
|
166
|
-
export type ConfigEventType = 'loaded' | 'updated' | 'error' | 'validated';
|
|
167
|
-
/**
|
|
168
|
-
* Configuration event handler type.
|
|
169
|
-
*/
|
|
170
|
-
export type ConfigEventHandler<T = any> = (event: ConfigEventType, data: T) => void;
|
|
171
|
-
/**
|
|
172
|
-
* Async configuration event handler type.
|
|
173
|
-
*/
|
|
174
|
-
export type AsyncConfigEventHandler<T = any> = (event: ConfigEventType, data: T) => Promise<void>;
|
|
175
|
-
/**
|
|
176
|
-
* Configuration watcher type.
|
|
177
|
-
*/
|
|
178
|
-
export type ConfigWatcher<T> = {
|
|
179
|
-
watch: (handler: ConfigEventHandler<T>) => void;
|
|
180
|
-
unwatch: (handler: ConfigEventHandler<T>) => void;
|
|
181
|
-
stop: () => void;
|
|
182
|
-
};
|
|
183
|
-
/**
|
|
184
|
-
* Configuration builder pattern interface.
|
|
185
|
-
*/
|
|
186
|
-
export interface ConfigBuilder<T> {
|
|
187
|
-
/**
|
|
188
|
-
* Add a configuration source.
|
|
189
|
-
*/
|
|
190
|
-
addSource(source: AllConfigSource, config: any): ConfigBuilder<T>;
|
|
191
|
-
/**
|
|
192
|
-
* Set precedence rule.
|
|
193
|
-
*/
|
|
194
|
-
setPrecedence(rule: 'aws-first' | 'local-first' | 'merge'): ConfigBuilder<T>;
|
|
195
|
-
/**
|
|
196
|
-
* Add namespace.
|
|
197
|
-
*/
|
|
198
|
-
addNamespace(namespace: string): ConfigBuilder<T>;
|
|
199
|
-
/**
|
|
200
|
-
* Add validation.
|
|
201
|
-
*/
|
|
202
|
-
addValidation(validator: (config: any) => boolean): ConfigBuilder<T>;
|
|
203
|
-
/**
|
|
204
|
-
* Build the configuration.
|
|
205
|
-
*/
|
|
206
|
-
build(): T;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Configuration fluent API interface.
|
|
210
|
-
*/
|
|
211
|
-
export interface ConfigFluentAPI<T> {
|
|
212
|
-
/**
|
|
213
|
-
* Filter configuration by predicate.
|
|
214
|
-
*/
|
|
215
|
-
filter(predicate: ConfigPredicate<T>): ConfigFluentAPI<T>;
|
|
216
|
-
/**
|
|
217
|
-
* Transform configuration.
|
|
218
|
-
*/
|
|
219
|
-
map<U>(transformer: ConfigTransformerFn<T, U>): ConfigFluentAPI<U>;
|
|
220
|
-
/**
|
|
221
|
-
* Validate configuration.
|
|
222
|
-
*/
|
|
223
|
-
validate(validator: ConfigPredicate<T>): ConfigFluentAPI<T>;
|
|
224
|
-
/**
|
|
225
|
-
* Get the final configuration.
|
|
226
|
-
*/
|
|
227
|
-
get(): T;
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* Type guard for AWS configuration sources.
|
|
231
|
-
*/
|
|
232
|
-
export declare const isAwsSource: (source: AllConfigSource) => source is AwsConfigSource;
|
|
233
|
-
/**
|
|
234
|
-
* Type guard for local configuration sources.
|
|
235
|
-
*/
|
|
236
|
-
export declare const isLocalSource: (source: AllConfigSource) => source is LocalConfigSource;
|
|
237
|
-
/**
|
|
238
|
-
* Type guard for configuration with metadata.
|
|
239
|
-
*/
|
|
240
|
-
export declare const hasMetadata: <T, S extends AllConfigSource>(config: any) => config is ConfigWithSource<T, S>;
|
|
241
|
-
/**
|
|
242
|
-
* Type guard for validation result.
|
|
243
|
-
*/
|
|
244
|
-
export declare const isValidationResult: <T>(result: any) => result is ValidationResult<T>;
|
|
245
|
-
/**
|
|
246
|
-
* Type guard for cache entry.
|
|
247
|
-
*/
|
|
248
|
-
export declare const isCacheEntry: <T>(entry: any) => entry is CacheEntry<T>;
|
|
249
|
-
//# sourceMappingURL=utility-types.interface.d.ts.map
|
package/dist/types/nestjs-config-aws/src/integration/interfaces/utility-types.interface.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utility-types.interface.d.ts","sourceRoot":"","sources":["../../../../../../src/integration/interfaces/utility-types.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { DynamicModule } from '@nestjs/common';
|
|
2
|
-
import { IntegrationOptions, AsyncIntegrationOptions } from './interfaces/integration-options.interface';
|
|
3
|
-
/**
|
|
4
|
-
* Token for injecting integration options
|
|
5
|
-
*/
|
|
6
|
-
export declare const NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS = "NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS";
|
|
7
|
-
/**
|
|
8
|
-
* NestJS module for integrating nestjs-config-aws with @nestjs/config.
|
|
9
|
-
* This module provides AWS-sourced configuration values to the standard @nestjs/config module.
|
|
10
|
-
*/
|
|
11
|
-
export declare class NestConfigAwsIntegrationModule {
|
|
12
|
-
/**
|
|
13
|
-
* Create a synchronous integration module with provided options.
|
|
14
|
-
*
|
|
15
|
-
* @param options - Integration options for the module
|
|
16
|
-
* @returns Dynamic module configuration
|
|
17
|
-
*/
|
|
18
|
-
static forRoot(options?: IntegrationOptions): DynamicModule;
|
|
19
|
-
/**
|
|
20
|
-
* Create an asynchronous integration module with factory-based options.
|
|
21
|
-
* Useful when integration options depend on other services or async operations.
|
|
22
|
-
*
|
|
23
|
-
* @param options - Async integration options with factory function
|
|
24
|
-
* @returns Dynamic module configuration
|
|
25
|
-
*/
|
|
26
|
-
static forRootAsync(options: AsyncIntegrationOptions): DynamicModule;
|
|
27
|
-
/**
|
|
28
|
-
* Create the standard providers for the integration module.
|
|
29
|
-
*/
|
|
30
|
-
private static createProviders;
|
|
31
|
-
/**
|
|
32
|
-
* Create providers for asynchronous module registration.
|
|
33
|
-
*/
|
|
34
|
-
private static createAsyncProviders;
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=nestjs-config-integration.module.d.ts.map
|
package/dist/types/nestjs-config-aws/src/integration/nestjs-config-integration.module.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nestjs-config-integration.module.d.ts","sourceRoot":"","sources":["../../../../../src/integration/nestjs-config-integration.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA4B,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAWzG;;GAEG;AACH,eAAO,MAAM,qCAAqC,0CAA0C,CAAC;AAE7F;;;GAGG;AACH,qBAEa,8BAA8B;IACzC;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,aAAa;IA0B/D;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAyBpE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAc9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;CASpC"}
|
package/dist/types/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.d.ts
DELETED
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { IntegrationOptions } from '../interfaces/integration-options.interface';
|
|
2
|
-
import { ConfigurationSource } from '../interfaces/configuration-source.interface';
|
|
3
|
-
/**
|
|
4
|
-
* Service for loading configuration from AWS sources for integration with @nestjs/config.
|
|
5
|
-
* Uses existing AWS loaders to fetch configuration and provides namespace-aware loading capabilities.
|
|
6
|
-
*/
|
|
7
|
-
export declare class AwsConfigurationLoaderService {
|
|
8
|
-
private readonly logger;
|
|
9
|
-
private readonly loaders;
|
|
10
|
-
private readonly options;
|
|
11
|
-
private readonly errorHandler;
|
|
12
|
-
constructor(options?: IntegrationOptions);
|
|
13
|
-
/**
|
|
14
|
-
* Load configuration from AWS sources.
|
|
15
|
-
* @returns Promise resolving to configuration data
|
|
16
|
-
*/
|
|
17
|
-
loadConfiguration(): Promise<Record<string, any>>;
|
|
18
|
-
/**
|
|
19
|
-
* Load configuration for specific namespaces from AWS sources.
|
|
20
|
-
* @param namespaces - Array of namespace names to load
|
|
21
|
-
* @returns Promise resolving to namespaced configuration data
|
|
22
|
-
*/
|
|
23
|
-
loadNamespacedConfiguration(namespaces: string[]): Promise<Record<string, Record<string, any>>>;
|
|
24
|
-
/**
|
|
25
|
-
* Check if AWS services are available.
|
|
26
|
-
* @returns Promise resolving to availability status
|
|
27
|
-
*/
|
|
28
|
-
isAvailable(): Promise<boolean>;
|
|
29
|
-
/**
|
|
30
|
-
* Get all available configuration sources with their metadata.
|
|
31
|
-
* @returns Promise resolving to array of configuration sources
|
|
32
|
-
*/
|
|
33
|
-
getAvailableSources(): Promise<ConfigurationSource[]>;
|
|
34
|
-
/**
|
|
35
|
-
* Create configuration loaders based on integration options.
|
|
36
|
-
* @returns Array of configuration loaders
|
|
37
|
-
*/
|
|
38
|
-
private createLoaders;
|
|
39
|
-
/**
|
|
40
|
-
* Get the source type for a given loader.
|
|
41
|
-
* @param loader - The configuration loader
|
|
42
|
-
* @returns The configuration source type
|
|
43
|
-
*/
|
|
44
|
-
private getSourceType;
|
|
45
|
-
/**
|
|
46
|
-
* Get the priority for a given loader based on precedence rules.
|
|
47
|
-
* @param loader - The configuration loader
|
|
48
|
-
* @returns The priority number (higher = higher priority)
|
|
49
|
-
*/
|
|
50
|
-
private getSourcePriority;
|
|
51
|
-
/**
|
|
52
|
-
* Extract configuration for a specific namespace from loaded configuration.
|
|
53
|
-
* @param config - The loaded configuration
|
|
54
|
-
* @param namespace - The namespace to extract
|
|
55
|
-
* @returns Configuration values for the namespace
|
|
56
|
-
*/
|
|
57
|
-
private extractNamespaceConfig;
|
|
58
|
-
/**
|
|
59
|
-
* Extract nested namespace configuration from hierarchical keys.
|
|
60
|
-
* @param config - The loaded configuration
|
|
61
|
-
* @param namespace - The namespace to extract
|
|
62
|
-
* @returns Configuration values for the namespace
|
|
63
|
-
*/
|
|
64
|
-
private extractNestedNamespaceConfig;
|
|
65
|
-
/**
|
|
66
|
-
* Convert snake_case or kebab-case to camelCase.
|
|
67
|
-
* @param str - String to convert
|
|
68
|
-
* @returns camelCase string
|
|
69
|
-
*/
|
|
70
|
-
private toCamelCase;
|
|
71
|
-
/**
|
|
72
|
-
* Convert path segments to nested key structure.
|
|
73
|
-
* @param path - Path string (e.g., "host/port")
|
|
74
|
-
* @returns Nested key structure
|
|
75
|
-
*/
|
|
76
|
-
private pathToNestedKey;
|
|
77
|
-
/**
|
|
78
|
-
* Set a nested value in an object using dot notation.
|
|
79
|
-
* @param obj - Target object
|
|
80
|
-
* @param path - Dot notation path
|
|
81
|
-
* @param value - Value to set
|
|
82
|
-
*/
|
|
83
|
-
private setNestedValue;
|
|
84
|
-
/**
|
|
85
|
-
* Get the Secrets Manager path based on configuration.
|
|
86
|
-
* @returns The secrets manager path
|
|
87
|
-
*/
|
|
88
|
-
private getSecretsManagerPath;
|
|
89
|
-
/**
|
|
90
|
-
* Get the SSM Parameter Store path based on configuration.
|
|
91
|
-
* @returns The SSM parameter path
|
|
92
|
-
*/
|
|
93
|
-
private getSSMParameterPath;
|
|
94
|
-
/**
|
|
95
|
-
* Check if an error is an AWS service error.
|
|
96
|
-
* @param error - The error to check
|
|
97
|
-
* @returns Whether the error is from an AWS service
|
|
98
|
-
*/
|
|
99
|
-
private isAwsServiceError;
|
|
100
|
-
/**
|
|
101
|
-
* Handle AWS-specific errors with appropriate strategies.
|
|
102
|
-
* @param loader - The loader that encountered the error
|
|
103
|
-
* @param error - The AWS error
|
|
104
|
-
* @returns Whether to continue processing
|
|
105
|
-
*/
|
|
106
|
-
private handleAwsSpecificError;
|
|
107
|
-
/**
|
|
108
|
-
* Get the service name for a loader.
|
|
109
|
-
* @param loader - The configuration loader
|
|
110
|
-
* @returns The service name
|
|
111
|
-
*/
|
|
112
|
-
private getServiceName;
|
|
113
|
-
/**
|
|
114
|
-
* Get the resource name for a loader.
|
|
115
|
-
* @param loader - The configuration loader
|
|
116
|
-
* @returns The resource name
|
|
117
|
-
*/
|
|
118
|
-
private getResourceName;
|
|
119
|
-
/**
|
|
120
|
-
* Load configuration with retry logic for retryable errors.
|
|
121
|
-
* @param loader - The configuration loader
|
|
122
|
-
* @param maxRetries - Maximum number of retries
|
|
123
|
-
* @returns Promise resolving to configuration data
|
|
124
|
-
*/
|
|
125
|
-
private loadWithRetry;
|
|
126
|
-
/**
|
|
127
|
-
* Check availability with timeout and error handling.
|
|
128
|
-
* @param loader - The configuration loader
|
|
129
|
-
* @param timeoutMs - Timeout in milliseconds
|
|
130
|
-
* @returns Promise resolving to availability status
|
|
131
|
-
*/
|
|
132
|
-
private checkAvailabilityWithTimeout;
|
|
133
|
-
}
|
|
134
|
-
//# sourceMappingURL=aws-configuration-loader.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aws-configuration-loader.service.d.ts","sourceRoot":"","sources":["../../../../../../src/integration/providers/aws-configuration-loader.service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAA2B,MAAM,8CAA8C,CAAC;AAI5G;;;GAGG;AACH,qBACa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;IACzE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;gBAGN,OAAO,CAAC,EAAE,kBAAkB;IAOzE;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAkFvD;;;;OAIG;IACG,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IA+ErG;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IA6BrC;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAsC3D;;;OAGG;IACH,OAAO,CAAC,aAAa;IA8BrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAYrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAgC9B;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAsBpC;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAMnB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAOvB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAoBtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IA0C9B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAUvB;;;;;OAKG;YACW,aAAa;IA2B3B;;;;;OAKG;YACW,4BAA4B;CAmB3C"}
|