@@ -33,7 +33,7 @@ import type {
33
33
* const secretsProvider = new SecretsProvider();
34
34
*
35
35
* export const handler = async (): Promise<void> => {
36
- * // Retrieve a single secret
36
+ * // Retrieve a secret
37
37
* const secret = await secretsProvider.get('my-secret');
38
38
* };
39
39
* ```
@@ -54,8 +54,8 @@ import type {
54
54
* const secretsProvider = new SecretsProvider();
55
55
*
56
56
* export const handler = async (): Promise<void> => {
57
- * // Retrieve a single secret and cache it for 10 seconds
58
- * const secret = await secretsProvider.get('my-secret', { maxAge: 10 });
57
+ * // Retrieve a secret and cache it for 10 seconds
58
+ * const secret = await secretsProvider.get('my-secret', { maxAge: 10 });
59
59
* };
60
60
* ```
61
61
*
@@ -68,7 +68,7 @@ import type {
68
68
* const secretsProvider = new SecretsProvider();
69
69
*
70
70
* export const handler = async (): Promise<void> => {
71
- * // Retrieve a single secret and always fetch the latest value
71
+ * // Retrieve a secret and always fetch the latest value
72
72
* const secret = await secretsProvider.get('my-secret', { forceFetch: true });
73
73
* };
74
74
* ```
@@ -84,8 +84,8 @@ import type {
84
84
* const secretsProvider = new SecretsProvider();
85
85
*
86
86
* export const handler = async (): Promise<void> => {
87
- * // Retrieve a single secret and deserialize it as JSON
88
- * const secret = await secretsProvider.get('my-secret', { transform: 'json' });
87
+ * // Retrieve a secret and parse it as JSON
88
+ * const secret = await secretsProvider.get('my-secret', { transform: 'json' });
89
89
* };
90
90
* ```
91
91
*
@@ -100,7 +100,7 @@ import type {
100
100
* const secretsProvider = new SecretsProvider();
101
101
*
102
102
* export const handler = async (): Promise<void> => {
103
- * // Retrieve a single secret and pass extra options to the AWS SDK v3 for JavaScript client
103
+ * // Retrieve a secret and pass extra options to the AWS SDK v3 for JavaScript client
104
104
* const secret = await secretsProvider.get('my-secret', {
105
105
* sdkOptions: {
106
106
* VersionId: 1,
@@ -152,6 +152,11 @@ import type {
152
152
class SecretsProvider extends BaseProvider {
153
153
public client : SecretsManagerClient ;
154
154
155
+ /**
156
+ * It initializes the SecretsProvider class.
157
+ *
158
+ * @param {SecretsProviderOptions } config - The configuration object.
159
+ */
155
160
public constructor ( config ?: SecretsProviderOptions ) {
156
161
super ( ) ;
157
162
@@ -178,21 +183,22 @@ class SecretsProvider extends BaseProvider {
178
183
* const secretsProvider = new SecretsProvider();
179
184
*
180
185
* export const handler = async (): Promise<void> => {
181
- * // Retrieve a single secret
186
+ * // Retrieve a secret
182
187
* const secret = await secretsProvider.get('my-secret');
183
188
* };
184
189
* ```
185
190
*
186
191
* You can customize the retrieval of the secret by passing options to the function:
187
192
* * `maxAge` - The maximum age of the value in cache before fetching a new one (in seconds) (default: 5)
188
193
* * `forceFetch` - Whether to always fetch a new value from the store regardless if already available in cache
189
- * * `transform` - Whether to transform the value before returning it. Supported values: `json`, `base64 `
194
+ * * `transform` - Whether to transform the value before returning it. Supported values: `json`, `binary `
190
195
* * `sdkOptions` - Extra options to pass to the AWS SDK v3 for JavaScript client
191
196
*
192
197
* For usage examples check {@link SecretsProvider}.
193
198
*
194
199
* @param {string } name - The name of the secret
195
200
* @param {SecretsGetOptionsInterface } options - Options to customize the retrieval of the secret
201
+ * @see https://awslabs.github.io/aws-lambda-powertools-typescript/latest/utilities/parameters/
196
202
*/
197
203
public async get (
198
204
name : string ,
@@ -211,6 +217,12 @@ class SecretsProvider extends BaseProvider {
211
217
return super . getMultiple ( path ) ;
212
218
}
213
219
220
+ /**
221
+ * Retrieve a configuration from AWS AppConfig.
222
+ *
223
+ * @param {string } name - Name of the configuration or its ID
224
+ * @param {SecretsGetOptionsInterface } options - SDK options to propagate to the AWS SDK v3 for JavaScript client
225
+ */
214
226
protected async _get (
215
227
name : string ,
216
228
options ?: SecretsGetOptionsInterface
@@ -229,6 +241,8 @@ class SecretsProvider extends BaseProvider {
229
241
230
242
/**
231
243
* Retrieving multiple parameter values is not supported with AWS Secrets Manager.
244
+ *
245
+ * @throws Not Implemented Error.
232
246
*/
233
247
protected async _getMultiple (
234
248
_path : string ,
0 commit comments