@azure/keyvault-secrets 4.5.0-beta.1 → 4.5.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/README.md +16 -50
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist-esm/keyvault-secrets/src/constants.js +1 -1
- package/dist-esm/keyvault-secrets/src/constants.js.map +1 -1
- package/dist-esm/keyvault-secrets/src/generated/keyVaultClient.js +1 -1
- package/dist-esm/keyvault-secrets/src/generated/keyVaultClient.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -37,6 +37,7 @@ Key links:
|
|
|
37
37
|
|
|
38
38
|
- An [Azure subscription](https://azure.microsoft.com/free/)
|
|
39
39
|
- A [Key Vault resource](https://docs.microsoft.com/azure/key-vault/quick-create-portal)
|
|
40
|
+
- An existing [Azure Key Vault][azure_keyvault]. If you need to create a key vault, you can do so in the Azure Portal by following the steps in [this document][azure_keyvault_portal]. Alternatively, you can use the Azure CLI by following the steps in [this document][azure_keyvault_cli].
|
|
40
41
|
|
|
41
42
|
### Install the package
|
|
42
43
|
|
|
@@ -60,48 +61,6 @@ npm install @types/node
|
|
|
60
61
|
|
|
61
62
|
You also need to enable `compilerOptions.allowSyntheticDefaultImports` in your tsconfig.json. Note that if you have enabled `compilerOptions.esModuleInterop`, `allowSyntheticDefaultImports` is enabled by default. See [TypeScript's compiler options handbook](https://www.typescriptlang.org/docs/handbook/compiler-options.html) for more information.
|
|
62
63
|
|
|
63
|
-
### Configuring your Key Vault
|
|
64
|
-
|
|
65
|
-
Use the [Azure Cloud Shell](https://shell.azure.com/bash) snippet below to create/get client secret credentials.
|
|
66
|
-
|
|
67
|
-
- Create a service principal and configure its access to Azure resources:
|
|
68
|
-
```Bash
|
|
69
|
-
az ad sp create-for-rbac -n <your-application-name> --skip-assignment
|
|
70
|
-
```
|
|
71
|
-
Output:
|
|
72
|
-
```json
|
|
73
|
-
{
|
|
74
|
-
"appId": "generated-app-ID",
|
|
75
|
-
"displayName": "dummy-app-name",
|
|
76
|
-
"name": "http://dummy-app-name",
|
|
77
|
-
"password": "random-password",
|
|
78
|
-
"tenant": "tenant-ID"
|
|
79
|
-
}
|
|
80
|
-
```
|
|
81
|
-
- Use the above returned credentials information to set **AZURE_CLIENT_ID**(appId), **AZURE_CLIENT_SECRET**(password) and **AZURE_TENANT_ID**(tenant) environment variables. The following example shows a way to do this in Bash:
|
|
82
|
-
|
|
83
|
-
```Bash
|
|
84
|
-
export AZURE_CLIENT_ID="generated-app-ID"
|
|
85
|
-
export AZURE_CLIENT_SECRET="random-password"
|
|
86
|
-
export AZURE_TENANT_ID="tenant-ID"
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
- Grant the above mentioned application authorization to perform secret operations on the keyvault:
|
|
90
|
-
|
|
91
|
-
```Bash
|
|
92
|
-
az keyvault set-policy --name <your-key-vault-name> --spn $AZURE_CLIENT_ID --secret-permissions backup delete get list purge recover restore set
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
> --secret-permissions:
|
|
96
|
-
> Accepted values: backup, delete, get, list, purge, recover, restore, set
|
|
97
|
-
|
|
98
|
-
If you have enabled role-based access control (RBAC) for Key Vault instead, you can find roles like "Key Vault Secrets Officer" in our [RBAC guide](https://docs.microsoft.com/azure/key-vault/general/rbac-guide).
|
|
99
|
-
|
|
100
|
-
- Use the above mentioned Key Vault name to retrieve details of your Vault which also contains your Key Vault URL:
|
|
101
|
-
```Bash
|
|
102
|
-
az keyvault show --name <your-key-vault-name>
|
|
103
|
-
```
|
|
104
|
-
|
|
105
64
|
## Key concepts
|
|
106
65
|
|
|
107
66
|
- The **Secret client** is the primary interface to interact with the API methods
|
|
@@ -124,6 +83,10 @@ Use the [Azure Cloud Shell](https://shell.azure.com/bash) snippet below to creat
|
|
|
124
83
|
|
|
125
84
|
The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) provides more details and samples to get you started.
|
|
126
85
|
|
|
86
|
+
In order to interact with the Azure Key Vault service, you will need to create an instance of the `SecretClient` class, a **vault url** and a credential object. The examples shown in this document use a credential object named [`DefaultAzureCredential`][default_azure_credential], which is appropriate for most scenarios, including local development and production environments. Additionally, we recommend using a [managed identity][managed_identity] for authentication in production environments.
|
|
87
|
+
|
|
88
|
+
You can find more information on different ways of authenticating and their corresponding credential types in the [Azure Identity documentation][azure_identity].
|
|
89
|
+
|
|
127
90
|
Here's a quick example. First, import `DefaultAzureCredential` and `SecretClient`:
|
|
128
91
|
|
|
129
92
|
```javascript
|
|
@@ -131,16 +94,12 @@ const { DefaultAzureCredential } = require("@azure/identity");
|
|
|
131
94
|
const { SecretClient } = require("@azure/keyvault-secrets");
|
|
132
95
|
```
|
|
133
96
|
|
|
134
|
-
Once these are imported, we can next connect to the Key Vault service
|
|
97
|
+
Once these are imported, we can next connect to the Key Vault service:
|
|
135
98
|
|
|
136
99
|
```typescript
|
|
137
100
|
const { DefaultAzureCredential } = require("@azure/identity");
|
|
138
101
|
const { SecretClient } = require("@azure/keyvault-secrets");
|
|
139
102
|
|
|
140
|
-
// DefaultAzureCredential expects the following three environment variables:
|
|
141
|
-
// * AZURE_TENANT_ID: The tenant ID in Azure Active Directory
|
|
142
|
-
// * AZURE_CLIENT_ID: The application (client) ID registered in the AAD tenant
|
|
143
|
-
// * AZURE_CLIENT_SECRET: The client secret for the registered application
|
|
144
103
|
const credential = new DefaultAzureCredential();
|
|
145
104
|
|
|
146
105
|
// Build the URL to reach your key vault
|
|
@@ -532,12 +491,19 @@ setLogLevel("info");
|
|
|
532
491
|
|
|
533
492
|
You can find more code samples through the following links:
|
|
534
493
|
|
|
535
|
-
- [
|
|
536
|
-
- [
|
|
537
|
-
- [
|
|
494
|
+
- [Key Vault Secrets Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript)
|
|
495
|
+
- [Key Vault Secrets Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript)
|
|
496
|
+
- [Key Vault Secrets Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/test/)
|
|
538
497
|
|
|
539
498
|
## Contributing
|
|
540
499
|
|
|
541
500
|
If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code.
|
|
542
501
|
|
|
502
|
+
[azure_keyvault]: https://docs.microsoft.com/azure/key-vault/general/overview
|
|
503
|
+
[azure_keyvault_cli]: https://docs.microsoft.com/azure/key-vault/general/quick-create-cli
|
|
504
|
+
[azure_keyvault_portal]: https://docs.microsoft.com/azure/key-vault/general/quick-create-portal
|
|
505
|
+
[default_azure_credential]: https://docs.microsoft.com/java/api/overview/azure/identity-readme?view=azure-java-stable#defaultazurecredential
|
|
506
|
+
[managed_identity]: https://docs.microsoft.com/azure/active-directory/managed-identities-azure-resources/overview
|
|
507
|
+
[azure_identity]: https://docs.microsoft.com/java/api/overview/azure/identity-readme?view=azure-java-stable
|
|
508
|
+
|
|
543
509
|

|
package/dist/index.js
CHANGED
|
@@ -644,7 +644,7 @@ class KeyVaultClient extends coreHttpCompat__namespace.ExtendedServiceClient {
|
|
|
644
644
|
const defaults = {
|
|
645
645
|
requestContentType: "application/json; charset=utf-8"
|
|
646
646
|
};
|
|
647
|
-
const packageDetails = `azsdk-js-keyvault-secrets/4.5.0
|
|
647
|
+
const packageDetails = `azsdk-js-keyvault-secrets/4.5.0`;
|
|
648
648
|
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
649
649
|
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
|
|
650
650
|
: `${packageDetails}`;
|
|
@@ -1410,7 +1410,7 @@ function getSecretFromSecretBundle(bundle) {
|
|
|
1410
1410
|
|
|
1411
1411
|
// Copyright (c) Microsoft Corporation.
|
|
1412
1412
|
// Licensed under the MIT license.
|
|
1413
|
-
const SDK_VERSION = "4.5.0
|
|
1413
|
+
const SDK_VERSION = "4.5.0";
|
|
1414
1414
|
|
|
1415
1415
|
// Copyright (c) Microsoft Corporation.
|
|
1416
1416
|
const tracingClient = coreTracing.createTracingClient({
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/log.ts","../src/generated/models/index.ts","../src/generated/models/mappers.ts","../src/generated/models/parameters.ts","../src/generated/keyVaultClient.ts","../../keyvault-common/src/parseWWWAuthenticate.ts","../../keyvault-common/src/challengeBasedAuthenticationPolicy.ts","../../keyvault-common/src/parseKeyvaultIdentifier.ts","../src/lro/keyVaultSecretPoller.ts","../src/identifier.ts","../src/transformations.ts","../src/constants.ts","../src/tracing.ts","../src/lro/delete/operation.ts","../src/lro/delete/poller.ts","../src/lro/recover/operation.ts","../src/lro/recover/poller.ts","../src/secretsModels.ts","../src/index.ts"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * The \\@azure/logger configuration for this package.\n */\nexport const logger = createClientLogger(\"keyvault-secrets\");\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\n\n/** The secret set parameters. */\nexport interface SecretSetParameters {\n /** The value of the secret. */\n value: string;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n}\n\n/** The object attributes managed by the KeyVault service. */\nexport interface Attributes {\n /** Determines whether the object is enabled. */\n enabled?: boolean;\n /** Not before date in UTC. */\n notBefore?: Date;\n /** Expiry date in UTC. */\n expires?: Date;\n /**\n * Creation time in UTC.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly created?: Date;\n /**\n * Last updated time in UTC.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly updated?: Date;\n}\n\n/** A secret consisting of a value, id and its attributes. */\nexport interface SecretBundle {\n /** The secret value. */\n value?: string;\n /** The secret id. */\n id?: string;\n /** The content type of the secret. */\n contentType?: string;\n /** The secret management attributes. */\n attributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /**\n * If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly kid?: string;\n /**\n * True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly managed?: boolean;\n}\n\n/** The key vault error exception. */\nexport interface KeyVaultError {\n /**\n * The key vault server error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorModel;\n}\n\n/** The key vault server error. */\nexport interface ErrorModel {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The key vault server error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly innerError?: ErrorModel;\n}\n\n/** The secret update parameters. */\nexport interface SecretUpdateParameters {\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n}\n\n/** The secret list result. */\nexport interface SecretListResult {\n /**\n * A response message containing a list of secrets in the key vault along with a link to the next page of secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: SecretItem[];\n /**\n * The URL to get the next set of secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The secret item containing secret metadata. */\nexport interface SecretItem {\n /** Secret identifier. */\n id?: string;\n /** The secret management attributes. */\n attributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /**\n * True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly managed?: boolean;\n}\n\n/** The deleted secret list result */\nexport interface DeletedSecretListResult {\n /**\n * A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: DeletedSecretItem[];\n /**\n * The URL to get the next set of deleted secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The backup secret result, containing the backup blob. */\nexport interface BackupSecretResult {\n /**\n * The backup blob containing the backed up secret.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Uint8Array;\n}\n\n/** The secret restore parameters. */\nexport interface SecretRestoreParameters {\n /** The backup blob associated with a secret bundle. */\n secretBundleBackup: Uint8Array;\n}\n\n/** Properties of the key backing a certificate. */\nexport interface SecretProperties {\n /** The media type (MIME type). */\n contentType?: string;\n}\n\n/** The secret management attributes. */\nexport type SecretAttributes = Attributes & {\n /**\n * softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly recoverableDays?: number;\n /**\n * Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly recoveryLevel?: DeletionRecoveryLevel;\n};\n\n/** A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged. */\nexport type DeletedSecretBundle = SecretBundle & {\n /** The url of the recovery object, used to identify and recover the deleted secret. */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled to be purged, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deletedDate?: Date;\n};\n\n/** The deleted secret item containing metadata about the deleted secret. */\nexport type DeletedSecretItem = SecretItem & {\n /** The url of the recovery object, used to identify and recover the deleted secret. */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled to be purged, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deletedDate?: Date;\n};\n\n/** Known values of {@link ApiVersion73} that the service accepts. */\nexport enum KnownApiVersion73 {\n /** Api Version '7.3' */\n Seven3 = \"7.3\"\n}\n\n/**\n * Defines values for ApiVersion73. \\\n * {@link KnownApiVersion73} can be used interchangeably with ApiVersion73,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **7.3**: Api Version '7.3'\n */\nexport type ApiVersion73 = string;\n\n/** Known values of {@link DeletionRecoveryLevel} that the service accepts. */\nexport enum KnownDeletionRecoveryLevel {\n /** Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.) */\n Purgeable = \"Purgeable\",\n /** Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered */\n RecoverablePurgeable = \"Recoverable+Purgeable\",\n /** Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered */\n Recoverable = \"Recoverable\",\n /** Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered */\n RecoverableProtectedSubscription = \"Recoverable+ProtectedSubscription\",\n /** Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled. */\n CustomizedRecoverablePurgeable = \"CustomizedRecoverable+Purgeable\",\n /** Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available. */\n CustomizedRecoverable = \"CustomizedRecoverable\",\n /** Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled. */\n CustomizedRecoverableProtectedSubscription = \"CustomizedRecoverable+ProtectedSubscription\"\n}\n\n/**\n * Defines values for DeletionRecoveryLevel. \\\n * {@link KnownDeletionRecoveryLevel} can be used interchangeably with DeletionRecoveryLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Purgeable**: Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.) \\\n * **Recoverable+Purgeable**: Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered \\\n * **Recoverable**: Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered \\\n * **Recoverable+ProtectedSubscription**: Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered \\\n * **CustomizedRecoverable+Purgeable**: Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled. \\\n * **CustomizedRecoverable**: Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available. \\\n * **CustomizedRecoverable+ProtectedSubscription**: Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled.\n */\nexport type DeletionRecoveryLevel = string;\n\n/** Optional parameters. */\nexport interface SetSecretOptionalParams extends coreClient.OperationOptions {\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n}\n\n/** Contains response data for the setSecret operation. */\nexport type SetSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface DeleteSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the deleteSecret operation. */\nexport type DeleteSecretResponse = DeletedSecretBundle;\n\n/** Optional parameters. */\nexport interface UpdateSecretOptionalParams\n extends coreClient.OperationOptions {\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Contains response data for the updateSecret operation. */\nexport type UpdateSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretOptionalParams extends coreClient.OperationOptions {}\n\n/** Contains response data for the getSecret operation. */\nexport type GetSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretsOptionalParams extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecrets operation. */\nexport type GetSecretsResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetSecretVersionsOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretVersions operation. */\nexport type GetSecretVersionsResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretsOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getDeletedSecrets operation. */\nexport type GetDeletedSecretsResponse = DeletedSecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getDeletedSecret operation. */\nexport type GetDeletedSecretResponse = DeletedSecretBundle;\n\n/** Optional parameters. */\nexport interface PurgeDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface RecoverDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the recoverDeletedSecret operation. */\nexport type RecoverDeletedSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface BackupSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the backupSecret operation. */\nexport type BackupSecretResponse = BackupSecretResult;\n\n/** Optional parameters. */\nexport interface RestoreSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the restoreSecret operation. */\nexport type RestoreSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretsNext operation. */\nexport type GetSecretsNextResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetSecretVersionsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretVersionsNext operation. */\nexport type GetSecretVersionsNextResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getDeletedSecretsNext operation. */\nexport type GetDeletedSecretsNextResponse = DeletedSecretListResult;\n\n/** Optional parameters. */\nexport interface KeyVaultClientOptionalParams\n extends coreHttpCompat.ExtendedServiceClientOptions {\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const SecretSetParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretSetParameters\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n secretAttributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n }\n }\n }\n};\n\nexport const Attributes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Attributes\",\n modelProperties: {\n enabled: {\n serializedName: \"enabled\",\n type: {\n name: \"Boolean\"\n }\n },\n notBefore: {\n serializedName: \"nbf\",\n type: {\n name: \"UnixTime\"\n }\n },\n expires: {\n serializedName: \"exp\",\n type: {\n name: \"UnixTime\"\n }\n },\n created: {\n serializedName: \"created\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n updated: {\n serializedName: \"updated\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n\nexport const SecretBundle: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretBundle\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n kid: {\n serializedName: \"kid\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n managed: {\n serializedName: \"managed\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const KeyVaultError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"KeyVaultError\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const ErrorModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorModel\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const SecretUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretUpdateParameters\",\n modelProperties: {\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n secretAttributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const SecretListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SecretItem\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecretItem: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretItem\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n managed: {\n serializedName: \"managed\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretItem\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackupSecretResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackupSecretResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Base64Url\"\n }\n }\n }\n }\n};\n\nexport const SecretRestoreParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretRestoreParameters\",\n modelProperties: {\n secretBundleBackup: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"Base64Url\"\n }\n }\n }\n }\n};\n\nexport const SecretProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretProperties\",\n modelProperties: {\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecretAttributes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\",\n modelProperties: {\n ...Attributes.type.modelProperties,\n recoverableDays: {\n serializedName: \"recoverableDays\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n recoveryLevel: {\n serializedName: \"recoveryLevel\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretBundle: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretBundle\",\n modelProperties: {\n ...SecretBundle.type.modelProperties,\n recoveryId: {\n serializedName: \"recoveryId\",\n type: {\n name: \"String\"\n }\n },\n scheduledPurgeDate: {\n serializedName: \"scheduledPurgeDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n deletedDate: {\n serializedName: \"deletedDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretItem: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretItem\",\n modelProperties: {\n ...SecretItem.type.modelProperties,\n recoveryId: {\n serializedName: \"recoveryId\",\n type: {\n name: \"String\"\n }\n },\n scheduledPurgeDate: {\n serializedName: \"scheduledPurgeDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n deletedDate: {\n serializedName: \"deletedDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n SecretSetParameters as SecretSetParametersMapper,\n SecretUpdateParameters as SecretUpdateParametersMapper,\n SecretRestoreParameters as SecretRestoreParametersMapper\n} from \"../models/mappers\";\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const value: OperationParameter = {\n parameterPath: \"value\",\n mapper: SecretSetParametersMapper\n};\n\nexport const tags: OperationParameter = {\n parameterPath: [\"options\", \"tags\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const contentType1: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const secretAttributes: OperationParameter = {\n parameterPath: [\"options\", \"secretAttributes\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const vaultBaseUrl: OperationURLParameter = {\n parameterPath: \"vaultBaseUrl\",\n mapper: {\n serializedName: \"vaultBaseUrl\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const secretName: OperationURLParameter = {\n parameterPath: \"secretName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[0-9a-zA-Z-]+$\")\n },\n serializedName: \"secret-name\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const secretName1: OperationURLParameter = {\n parameterPath: \"secretName\",\n mapper: {\n serializedName: \"secret-name\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType2: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const secretAttributes1: OperationParameter = {\n parameterPath: [\"options\", \"secretAttributes\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const tags1: OperationParameter = {\n parameterPath: [\"options\", \"tags\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const secretVersion: OperationURLParameter = {\n parameterPath: \"secretVersion\",\n mapper: {\n serializedName: \"secret-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const maxresults: OperationQueryParameter = {\n parameterPath: [\"options\", \"maxresults\"],\n mapper: {\n constraints: {\n InclusiveMaximum: 25,\n InclusiveMinimum: 1\n },\n serializedName: \"maxresults\",\n type: {\n name: \"Number\"\n }\n }\n};\n\nexport const secretBundleBackup: OperationParameter = {\n parameterPath: \"secretBundleBackup\",\n mapper: SecretRestoreParametersMapper\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as Parameters from \"./models/parameters\";\nimport * as Mappers from \"./models/mappers\";\nimport {\n ApiVersion73,\n KeyVaultClientOptionalParams,\n SetSecretOptionalParams,\n SetSecretResponse,\n DeleteSecretOptionalParams,\n DeleteSecretResponse,\n UpdateSecretOptionalParams,\n UpdateSecretResponse,\n GetSecretOptionalParams,\n GetSecretResponse,\n GetSecretsOptionalParams,\n GetSecretsResponse,\n GetSecretVersionsOptionalParams,\n GetSecretVersionsResponse,\n GetDeletedSecretsOptionalParams,\n GetDeletedSecretsResponse,\n GetDeletedSecretOptionalParams,\n GetDeletedSecretResponse,\n PurgeDeletedSecretOptionalParams,\n RecoverDeletedSecretOptionalParams,\n RecoverDeletedSecretResponse,\n BackupSecretOptionalParams,\n BackupSecretResponse,\n RestoreSecretOptionalParams,\n RestoreSecretResponse,\n GetSecretsNextOptionalParams,\n GetSecretsNextResponse,\n GetSecretVersionsNextOptionalParams,\n GetSecretVersionsNextResponse,\n GetDeletedSecretsNextOptionalParams,\n GetDeletedSecretsNextResponse\n} from \"./models\";\n\n/** @internal */\nexport class KeyVaultClient extends coreHttpCompat.ExtendedServiceClient {\n apiVersion: ApiVersion73;\n\n /**\n * Initializes a new instance of the KeyVaultClient class.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n apiVersion: ApiVersion73,\n options?: KeyVaultClientOptionalParams\n ) {\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: KeyVaultClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-keyvault-secrets/4.5.0-beta.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint ?? options.baseUri ?? \"{vaultBaseUrl}\"\n };\n super(optionsWithDefaults);\n\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n if (!bearerTokenAuthenticationPolicyFound) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n scopes: `${optionsWithDefaults.baseUri}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n }\n // Parameter assignments\n this.apiVersion = apiVersion;\n }\n\n /**\n * The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure\n * Key Vault creates a new version of that secret. This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param value The value of the secret.\n * @param options The options parameters.\n */\n setSecret(\n vaultBaseUrl: string,\n secretName: string,\n value: string,\n options?: SetSecretOptionalParams\n ): Promise<SetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, value, options },\n setSecretOperationSpec\n );\n }\n\n /**\n * The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an\n * individual version of a secret. This operation requires the secrets/delete permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n deleteSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: DeleteSecretOptionalParams\n ): Promise<DeleteSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n deleteSecretOperationSpec\n );\n }\n\n /**\n * The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are\n * not specified in the request are left unchanged. The value of a secret itself cannot be changed.\n * This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret.\n * @param options The options parameters.\n */\n updateSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: UpdateSecretOptionalParams\n ): Promise<UpdateSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n updateSecretOperationSpec\n );\n }\n\n /**\n * The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the\n * secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret. This URI fragment is optional. If not specified, the\n * latest version of the secret is returned.\n * @param options The options parameters.\n */\n getSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: GetSecretOptionalParams\n ): Promise<GetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n getSecretOperationSpec\n );\n }\n\n /**\n * The Get Secrets operation is applicable to the entire vault. However, only the base secret\n * identifier and its attributes are provided in the response. Individual secret versions are not\n * listed in the response. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getSecrets(\n vaultBaseUrl: string,\n options?: GetSecretsOptionalParams\n ): Promise<GetSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getSecretsOperationSpec\n );\n }\n\n /**\n * The full secret identifier and attributes are provided in the response. No values are returned for\n * the secrets. This operations requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getSecretVersions(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetSecretVersionsOptionalParams\n ): Promise<GetSecretVersionsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getSecretVersionsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for\n * soft-delete. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getDeletedSecrets(\n vaultBaseUrl: string,\n options?: GetDeletedSecretsOptionalParams\n ): Promise<GetDeletedSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getDeletedSecretsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secret operation returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetDeletedSecretOptionalParams\n ): Promise<GetDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getDeletedSecretOperationSpec\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires\n * the secrets/purge permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n purgeDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: PurgeDeletedSecretOptionalParams\n ): Promise<void> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n purgeDeletedSecretOperationSpec\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault. This operation can only be performed on a\n * soft-delete enabled vault. This operation requires the secrets/recover permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the deleted secret.\n * @param options The options parameters.\n */\n recoverDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: RecoverDeletedSecretOptionalParams\n ): Promise<RecoverDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n recoverDeletedSecretOperationSpec\n );\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n backupSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: BackupSecretOptionalParams\n ): Promise<BackupSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n backupSecretOperationSpec\n );\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretBundleBackup The backup blob associated with a secret bundle.\n * @param options The options parameters.\n */\n restoreSecret(\n vaultBaseUrl: string,\n secretBundleBackup: Uint8Array,\n options?: RestoreSecretOptionalParams\n ): Promise<RestoreSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretBundleBackup, options },\n restoreSecretOperationSpec\n );\n }\n\n /**\n * GetSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetSecrets method.\n * @param options The options parameters.\n */\n getSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetSecretsNextOptionalParams\n ): Promise<GetSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getSecretsNextOperationSpec\n );\n }\n\n /**\n * GetSecretVersionsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param nextLink The nextLink from the previous successful call to the GetSecretVersions method.\n * @param options The options parameters.\n */\n getSecretVersionsNext(\n vaultBaseUrl: string,\n secretName: string,\n nextLink: string,\n options?: GetSecretVersionsNextOptionalParams\n ): Promise<GetSecretVersionsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, nextLink, options },\n getSecretVersionsNextOperationSpec\n );\n }\n\n /**\n * GetDeletedSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetDeletedSecrets method.\n * @param options The options parameters.\n */\n getDeletedSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetDeletedSecretsNextOptionalParams\n ): Promise<GetDeletedSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getDeletedSecretsNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst setSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n value: [\"value\"],\n tags: [\"options\", \"tags\"],\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"]\n },\n mapper: { ...Mappers.SecretSetParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst deleteSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"],\n tags: [\"options\", \"tags\"]\n },\n mapper: { ...Mappers.SecretUpdateParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/versions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst purgeDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst recoverDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}/recover\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst backupSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/backup\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BackupSecretResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst restoreSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/restore\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: { secretBundleBackup: [\"secretBundleBackup\"] },\n mapper: { ...Mappers.SecretRestoreParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * @internal\n *\n * Valid key names in WWW-Authenticate header.\n */\nconst validParsedWWWAuthenticateProperties = [\n \"authorization\",\n \"authorization_url\",\n \"resource\",\n \"scope\",\n \"tenantId\",\n] as const;\n\n/**\n * @internal\n *\n * A union type representing all valid key names in WWW-Authenticate header.\n */\ntype ValidParsedWWWAuthenticateProperties = typeof validParsedWWWAuthenticateProperties[number];\n\n/**\n * @internal\n *\n * Holds the known WWWAuthenticate keys and their values as a result of\n * parsing a WWW-Authenticate header.\n */\nexport type ParsedWWWAuthenticate = {\n [Key in ValidParsedWWWAuthenticateProperties]?: string;\n};\n\n/**\n * Parses an WWW-Authenticate response.\n * This transforms a string value like:\n * `Bearer authorization=\"https://some.url/tenantId\", resource=\"https://some.url\"`\n * into an object like:\n * `{ authorization: \"https://some.url/tenantId\", resource: \"https://some.url\" }`\n * @param wwwAuthenticate - String value in the WWW-Authenticate header\n */\nexport function parseWWWAuthenticate(wwwAuthenticate: string): ParsedWWWAuthenticate {\n const pairDelimiter = /,? +/;\n const parsed = wwwAuthenticate\n .split(pairDelimiter)\n .reduce<ParsedWWWAuthenticate>((kvPairs, p) => {\n if (p.match(/\\w=\"/)) {\n // 'sampleKey=\"sample_value\"' -> [sampleKey, \"sample_value\"] -> { sampleKey: sample_value }\n const [key, value] = p.split(\"=\");\n if (\n validParsedWWWAuthenticateProperties.includes(key as ValidParsedWWWAuthenticateProperties)\n ) {\n // The values will be wrapped in quotes, which need to be stripped out.\n return { ...kvPairs, [key]: value.slice(1, -1) };\n }\n }\n return kvPairs;\n }, {});\n\n // Finally, we pull the tenantId from the authorization header to support multi-tenant authentication.\n if (parsed.authorization) {\n try {\n const tenantId = new URL(parsed.authorization).pathname.substring(1);\n if (tenantId) {\n parsed.tenantId = tenantId;\n }\n } catch (_) {\n throw new Error(`The challenge authorization URI '${parsed.authorization}' is invalid.`);\n }\n }\n\n return parsed;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n AuthorizeRequestOnChallengeOptions,\n AuthorizeRequestOptions,\n ChallengeCallbacks,\n PipelineRequest,\n RequestBodyType,\n} from \"@azure/core-rest-pipeline\";\nimport { ParsedWWWAuthenticate, parseWWWAuthenticate } from \"./parseWWWAuthenticate\";\n\nimport { GetTokenOptions } from \"@azure/core-auth\";\n\n/**\n * @internal\n * Holds the state of Challenge Auth.\n * When making the first request we force Key Vault to begin a challenge\n * by clearing out the request body and storing it locally.\n *\n * Later on, the authorizeRequestOnChallenge callback will process the\n * challenge and, if ready to resend the original request, reset the body\n * so that it may be sent again.\n *\n * Once a client has succeeded once, we can start skipping CAE.\n */\ntype ChallengeState =\n | {\n status: \"none\";\n }\n | {\n status: \"started\";\n originalBody?: RequestBodyType;\n }\n | {\n status: \"complete\";\n scopes: string[];\n };\n\n/**\n * @internal\n *\n * Creates challenge callback handlers to manage CAE lifecycle in Azure Key Vault.\n *\n * Key Vault supports other authentication schemes, but we ensure challenge authentication\n * is used by first sending a copy of the request, without authorization or content.\n *\n * when the challenge is received, it will be authenticated and used to send the original\n * request with authorization.\n *\n * Following the first request of a client, follow-up requests will get the cached token\n * if possible.\n */\nexport function createChallengeCallbacks(): ChallengeCallbacks {\n let challengeState: ChallengeState = { status: \"none\" };\n\n function requestToOptions(request: PipelineRequest): GetTokenOptions {\n return {\n abortSignal: request.abortSignal,\n requestOptions: {\n timeout: request.timeout,\n },\n tracingOptions: request.tracingOptions,\n };\n }\n\n async function authorizeRequest(options: AuthorizeRequestOptions) {\n const { request } = options;\n const requestOptions: GetTokenOptions = requestToOptions(request);\n\n switch (challengeState.status) {\n case \"none\":\n challengeState = {\n status: \"started\",\n originalBody: request.body,\n };\n request.body = null;\n break;\n case \"started\":\n break; // Retry, we should not overwrite the original body\n case \"complete\": {\n const token = await options.getAccessToken(challengeState.scopes, requestOptions);\n if (token) {\n request.headers.set(\"authorization\", `Bearer ${token.token}`);\n }\n break;\n }\n }\n return Promise.resolve();\n }\n\n async function authorizeRequestOnChallenge(\n options: AuthorizeRequestOnChallengeOptions\n ): Promise<boolean> {\n const { request, response } = options;\n\n if (request.body === null && challengeState.status === \"started\") {\n // Reset the original body before doing anything else.\n // Note: If successful status will be \"complete\", otherwise \"none\" will\n // restart the process.\n request.body = challengeState.originalBody;\n }\n\n const getTokenOptions = requestToOptions(request);\n\n const challenge = response.headers.get(\"WWW-Authenticate\");\n if (!challenge) {\n throw new Error(\"Missing challenge.\");\n }\n const parsedChallenge: ParsedWWWAuthenticate = parseWWWAuthenticate(challenge) || {};\n\n const scope = parsedChallenge.resource\n ? parsedChallenge.resource + \"/.default\"\n : parsedChallenge.scope;\n\n if (!scope) {\n throw new Error(\"Missing scope.\");\n }\n\n const accessToken = await options.getAccessToken([scope], {\n ...getTokenOptions,\n tenantId: parsedChallenge.tenantId,\n });\n\n if (!accessToken) {\n return false;\n }\n\n options.request.headers.set(\"Authorization\", `Bearer ${accessToken.token}`);\n\n challengeState = {\n status: \"complete\",\n scopes: [scope],\n };\n\n return true;\n }\n\n return {\n authorizeRequest,\n authorizeRequestOnChallenge,\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as url from \"url\";\n\nexport interface ParsedKeyVaultEntityIdentifier {\n /**\n * The vault URI.\n */\n vaultUrl: string;\n /**\n * The version of key/secret/certificate. May be undefined.\n */\n version?: string;\n /**\n * The name of key/secret/certificate.\n */\n name: string;\n}\nexport function parseKeyvaultIdentifier(\n collection: string,\n identifier: string | undefined\n): ParsedKeyVaultEntityIdentifier {\n if (typeof collection !== \"string\" || !(collection = collection.trim())) {\n throw new Error(\"Invalid collection argument\");\n }\n\n if (typeof identifier !== \"string\" || !(identifier = identifier.trim())) {\n throw new Error(\"Invalid identifier argument\");\n }\n\n let baseUri;\n try {\n baseUri = url.parse(identifier, true, true);\n } catch (e: any) {\n throw new Error(`Invalid ${collection} identifier: ${identifier}. Not a valid URI`);\n }\n\n // Path is of the form '/collection/name[/version]'\n const segments = (baseUri.pathname || \"\").split(\"/\");\n if (segments.length !== 3 && segments.length !== 4) {\n throw new Error(\n `Invalid ${collection} identifier: ${identifier}. Bad number of segments: ${segments.length}`\n );\n }\n\n if (collection !== segments[1]) {\n throw new Error(\n `Invalid ${collection} identifier: ${identifier}. segment [1] should be \"${collection}\", found \"${segments[1]}\"`\n );\n }\n\n const vaultUrl = `${baseUri.protocol}//${baseUri.host}`;\n const name = segments[2];\n const version = segments.length === 4 ? segments[3] : undefined;\n return {\n vaultUrl,\n name,\n version,\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { OperationOptions } from \"@azure/core-client\";\nimport { PollOperation, PollOperationState, Poller } from \"@azure/core-lro\";\nimport { KeyVaultClient } from \"../generated/keyVaultClient\";\nimport { delay } from \"@azure/core-util\";\n\n/**\n * Common parameters to a Key Vault Secret Poller.\n */\nexport interface KeyVaultSecretPollerOptions {\n vaultUrl: string;\n client: KeyVaultClient;\n name: string;\n operationOptions?: OperationOptions;\n intervalInMs?: number;\n resumeFrom?: string;\n}\n\n/**\n * An interface representing the state of a Key Vault Secret Poller's operation.\n */\nexport interface KeyVaultSecretPollOperationState<TResult> extends PollOperationState<TResult> {\n /**\n * The name of the secret.\n */\n name: string;\n}\n\n/**\n * Common properties and methods of the Key Vault Secret Pollers.\n */\nexport abstract class KeyVaultSecretPoller<\n TState extends KeyVaultSecretPollOperationState<TResult>,\n TResult\n> extends Poller<TState, TResult> {\n /**\n * Defines how much time the poller is going to wait before making a new request to the service.\n */\n public intervalInMs: number = 2000;\n\n /**\n * The method used by the poller to wait before attempting to update its operation.\n */\n async delay(): Promise<void> {\n return delay(this.intervalInMs);\n }\n}\n\n/**\n * Optional parameters to the KeyVaultSecretPollOperation\n */\nexport interface KeyVaultSecretPollOperationOptions {\n cancelMessage?: string;\n}\n\n/**\n * Common properties and methods of the Key Vault Secret Poller operations.\n */\n// eslint-disable-next-next no-use-before-define\nexport class KeyVaultSecretPollOperation<\n TState extends KeyVaultSecretPollOperationState<TResult>,\n TResult\n> implements PollOperation<TState, TResult>\n{\n private cancelMessage: string = \"\";\n\n constructor(public state: TState, options: KeyVaultSecretPollOperationOptions = {}) {\n if (options.cancelMessage) {\n this.cancelMessage = options.cancelMessage;\n }\n }\n\n /**\n * Meant to reach to the service and update the Poller operation.\n * @param options - The optional parameters, which is only an abortSignal from \\@azure/abort-controller\n */\n public async update(): Promise<PollOperation<TState, TResult>> {\n throw new Error(\"Operation not supported.\");\n }\n\n /**\n * Meant to reach to the service and cancel the Poller operation.\n * @param options - The optional parameters, which is only an abortSignal from \\@azure/abort-controller\n */\n public async cancel(): Promise<PollOperation<TState, TResult>> {\n throw new Error(this.cancelMessage);\n }\n\n /**\n * Serializes the Poller operation.\n */\n public toString(): string {\n return JSON.stringify({\n state: this.state,\n });\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { parseKeyvaultIdentifier } from \"../../keyvault-common/src\";\n\n/**\n * Represents the segments that compose a Key Vault Secret Id.\n */\nexport interface KeyVaultSecretIdentifier {\n /**\n * The complete representation of the Key Vault Secret Id. For example:\n *\n * https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\n *\n */\n sourceId: string;\n\n /**\n * The URL of the Azure Key Vault instance to which the Secret belongs.\n */\n vaultUrl: string;\n\n /**\n * The version of Key Vault Secret. Might be undefined.\n */\n version?: string;\n\n /**\n * The name of the Key Vault Secret.\n */\n name: string;\n}\n\n/**\n * Parses the given Key Vault Secret Id. An example is:\n *\n * https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\n *\n * On parsing the above Id, this function returns:\n *```ts\n * {\n * sourceId: \"https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\",\n * vaultUrl: \"https://<keyvault-name>.vault.azure.net\",\n * version: \"<unique-version-id>\",\n * name: \"<secret-name>\"\n * }\n *```\n * @param id - The Id of the Key Vault Secret.\n */\nexport function parseKeyVaultSecretIdentifier(id: string): KeyVaultSecretIdentifier {\n const urlParts = id.split(\"/\");\n const collection = urlParts[3];\n\n return {\n sourceId: id,\n ...parseKeyvaultIdentifier(collection, id),\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { DeletedSecretBundle, SecretBundle } from \"./generated/models\";\nimport { parseKeyVaultSecretIdentifier } from \"./identifier\";\nimport { DeletedSecret, KeyVaultSecret } from \"./secretsModels\";\n\n/**\n * @internal\n * Shapes the exposed {@link KeyVaultKey} based on either a received secret bundle or deleted secret bundle.\n */\nexport function getSecretFromSecretBundle(\n bundle: SecretBundle | DeletedSecretBundle\n): KeyVaultSecret {\n const secretBundle = bundle as SecretBundle;\n const deletedSecretBundle = bundle as DeletedSecretBundle;\n const parsedId = parseKeyVaultSecretIdentifier(secretBundle.id!);\n\n const attributes = secretBundle.attributes;\n delete secretBundle.attributes;\n\n const resultObject: KeyVaultSecret & DeletedSecret = {\n value: secretBundle.value,\n name: parsedId.name,\n properties: {\n expiresOn: attributes?.expires,\n createdOn: attributes?.created,\n updatedOn: attributes?.updated,\n enabled: attributes?.enabled,\n notBefore: attributes?.notBefore,\n recoverableDays: attributes?.recoverableDays,\n recoveryLevel: attributes?.recoveryLevel,\n\n id: secretBundle.id,\n contentType: secretBundle.contentType,\n tags: secretBundle.tags,\n managed: secretBundle.managed,\n\n vaultUrl: parsedId.vaultUrl,\n version: parsedId.version,\n name: parsedId.name,\n certificateKeyId: secretBundle.kid,\n },\n };\n\n if (deletedSecretBundle.recoveryId) {\n resultObject.properties.recoveryId = deletedSecretBundle.recoveryId;\n resultObject.properties.scheduledPurgeDate = deletedSecretBundle.scheduledPurgeDate;\n resultObject.properties.deletedOn = deletedSecretBundle.deletedDate;\n resultObject.recoveryId = deletedSecretBundle.recoveryId;\n resultObject.scheduledPurgeDate = deletedSecretBundle.scheduledPurgeDate;\n resultObject.deletedOn = deletedSecretBundle.deletedDate;\n }\n\n if (attributes) {\n if ((attributes as any).vaultUrl) {\n delete (resultObject.properties as any).vaultUrl;\n }\n\n if (attributes.expires) {\n delete (resultObject.properties as any).expires;\n }\n\n if (attributes.created) {\n delete (resultObject.properties as any).created;\n }\n\n if (attributes.updated) {\n delete (resultObject.properties as any).updated;\n }\n }\n\n return resultObject;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport const SDK_VERSION: string = \"4.5.0-beta.1\";\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createTracingClient } from \"@azure/core-tracing\";\nimport { SDK_VERSION } from \"./constants\";\n\nexport const tracingClient = createTracingClient({\n namespace: \"Microsoft.KeyVault\",\n packageName: \"@azure/keyvault-secrets\",\n packageVersion: SDK_VERSION,\n});\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { DeleteSecretOptions, DeletedSecret, GetDeletedSecretOptions } from \"../../secretsModels\";\nimport {\n KeyVaultSecretPollOperation,\n KeyVaultSecretPollOperationState,\n} from \"../keyVaultSecretPoller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient\";\nimport { getSecretFromSecretBundle } from \"../../transformations\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing\";\n\n/**\n * An interface representing the state of a delete secret's poll operation\n */\nexport interface DeleteSecretPollOperationState\n extends KeyVaultSecretPollOperationState<DeletedSecret> {}\n\n/**\n * An interface representing a delete secret's poll operation\n */\nexport class DeleteSecretPollOperation extends KeyVaultSecretPollOperation<\n DeleteSecretPollOperationState,\n DeletedSecret\n> {\n constructor(\n public state: DeleteSecretPollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private operationOptions: OperationOptions = {}\n ) {\n super(state, { cancelMessage: \"Canceling the deletion of a secret is not supported.\" });\n }\n\n /**\n * Sends a delete request for the given Key Vault Key's name to the Key Vault service.\n * Since the Key Vault Key won't be immediately deleted, we have {@link beginDeleteKey}.\n */\n private deleteSecret(name: string, options: DeleteSecretOptions = {}): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"DeleteSecretPoller.deleteSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.deleteSecret(this.vaultUrl, name, updatedOptions);\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The getDeletedSecret method returns the specified deleted secret along with its properties.\n * This operation requires the secrets/get permission.\n */\n private getDeletedSecret(\n name: string,\n options: GetDeletedSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"DeleteSecretPoller.getDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getDeletedSecret(this.vaultUrl, name, updatedOptions);\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Reaches to the service and updates the delete secret's poll operation.\n */\n public async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: DeleteSecretPollOperationState) => void;\n } = {}\n ): Promise<DeleteSecretPollOperation> {\n const state = this.state;\n const { name } = state;\n\n if (options.abortSignal) {\n this.operationOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const deletedSecret = await this.deleteSecret(name, this.operationOptions);\n state.isStarted = true;\n state.result = deletedSecret;\n if (!deletedSecret.properties.recoveryId) {\n state.isCompleted = true;\n }\n }\n\n if (!state.isCompleted) {\n try {\n state.result = await this.getDeletedSecret(name, this.operationOptions);\n state.isCompleted = true;\n } catch (error: any) {\n if (error.statusCode === 403) {\n // At this point, the resource exists but the user doesn't have access to it.\n state.isCompleted = true;\n } else if (error.statusCode !== 404) {\n state.error = error;\n state.isCompleted = true;\n throw error;\n }\n }\n }\n\n return this;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { DeleteSecretPollOperation, DeleteSecretPollOperationState } from \"./operation\";\nimport { DeletedSecret } from \"../../secretsModels\";\nimport { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from \"../keyVaultSecretPoller\";\n\n/**\n * Class that creates a poller that waits until a secret finishes being deleted.\n */\nexport class DeleteSecretPoller extends KeyVaultSecretPoller<\n DeleteSecretPollOperationState,\n DeletedSecret\n> {\n constructor(options: KeyVaultSecretPollerOptions) {\n const { vaultUrl, client, name, operationOptions, intervalInMs = 2000, resumeFrom } = options;\n\n let state: DeleteSecretPollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new DeleteSecretPollOperation(\n {\n ...state,\n name,\n },\n vaultUrl,\n client,\n operationOptions\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n DeletedSecret,\n GetSecretOptions,\n KeyVaultSecret,\n SecretProperties,\n} from \"../../secretsModels\";\nimport {\n KeyVaultSecretPollOperation,\n KeyVaultSecretPollOperationState,\n} from \"../keyVaultSecretPoller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient\";\nimport { getSecretFromSecretBundle } from \"../../transformations\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing\";\n\n/**\n * An interface representing the state of a delete secret's poll operation\n */\nexport interface RecoverDeletedSecretPollOperationState\n extends KeyVaultSecretPollOperationState<SecretProperties> {}\n\n/**\n * An interface representing a delete secret's poll operation\n */\nexport class RecoverDeletedSecretPollOperation extends KeyVaultSecretPollOperation<\n RecoverDeletedSecretPollOperationState,\n SecretProperties\n> {\n constructor(\n public state: RecoverDeletedSecretPollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private options: OperationOptions = {}\n ) {\n super(state, { cancelMessage: \"Canceling the recovery of a deleted secret is not supported.\" });\n }\n\n /**\n * The getSecret method returns the specified secret along with its properties.\n * This operation requires the secrets/get permission.\n */\n private getSecret(name: string, options: GetSecretOptions = {}): Promise<KeyVaultSecret> {\n return tracingClient.withSpan(\n \"RecoverDeletedSecretPoller.getSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getSecret(\n this.vaultUrl,\n name,\n options && options.version ? options.version : \"\",\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The recoverDeletedSecret method recovers the specified deleted secret along with its properties.\n * This operation requires the secrets/recover permission.\n */\n private recoverDeletedSecret(\n name: string,\n options: GetSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"RecoverDeletedSecretPoller.recoverDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.recoverDeletedSecret(\n this.vaultUrl,\n name,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Reaches to the service and updates the delete secret's poll operation.\n */\n async update(\n this: RecoverDeletedSecretPollOperation,\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: RecoverDeletedSecretPollOperationState) => void;\n } = {}\n ): Promise<RecoverDeletedSecretPollOperation> {\n const state = this.state;\n const { name } = state;\n\n if (options.abortSignal) {\n this.options.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n try {\n state.result = (await this.getSecret(name, this.options)).properties;\n state.isCompleted = true;\n } catch {\n // Nothing to do here.\n }\n if (!state.isCompleted) {\n state.result = (await this.recoverDeletedSecret(name, this.options)).properties;\n state.isStarted = true;\n }\n }\n\n if (!state.isCompleted) {\n try {\n state.result = (await this.getSecret(name, this.options)).properties;\n state.isCompleted = true;\n } catch (error: any) {\n if (error.statusCode === 403) {\n // At this point, the resource exists but the user doesn't have access to it.\n state.isCompleted = true;\n } else if (error.statusCode !== 404) {\n state.error = error;\n state.isCompleted = true;\n throw error;\n }\n }\n }\n\n return this;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n RecoverDeletedSecretPollOperation,\n RecoverDeletedSecretPollOperationState,\n} from \"./operation\";\nimport { SecretProperties } from \"../../secretsModels\";\nimport { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from \"../keyVaultSecretPoller\";\n\n/**\n * Class that deletes a poller that waits until a secret finishes being deleted\n */\nexport class RecoverDeletedSecretPoller extends KeyVaultSecretPoller<\n RecoverDeletedSecretPollOperationState,\n SecretProperties\n> {\n constructor(options: KeyVaultSecretPollerOptions) {\n const { vaultUrl, client, name, operationOptions, intervalInMs = 2000, resumeFrom } = options;\n\n let state: RecoverDeletedSecretPollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new RecoverDeletedSecretPollOperation(\n {\n ...state,\n name,\n },\n vaultUrl,\n client,\n operationOptions\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as coreClient from \"@azure/core-client\";\nimport { DeletionRecoveryLevel } from \"./generated/models\";\nimport { ExtendedCommonClientOptions } from \"@azure/core-http-compat\";\n\n/**\n * The latest supported KeyVault service API version\n */\nexport const LATEST_API_VERSION = \"7.3\";\n\n/**\n * The optional parameters accepted by the KeyVault's KeyClient\n */\nexport interface SecretClientOptions extends ExtendedCommonClientOptions {\n /**\n * The accepted versions of the KeyVault's service API.\n */\n serviceVersion?: \"7.0\" | \"7.1\" | \"7.2\" | \"7.3\";\n}\n\n/**\n * An interface representing a KeyVault Secret, with its name, value and {@link SecretProperties}.\n */\nexport interface KeyVaultSecret {\n /**\n * The properties of the secret.\n */\n properties: SecretProperties;\n /**\n * The value of the secret.\n */\n value?: string;\n /**\n * The name of the secret.\n */\n name: string;\n}\n\n/**\n * An interface representing the properties of a {@link KeyVaultSecret}.\n */\nexport interface SecretProperties {\n /**\n * The base URL to the vault.\n */\n vaultUrl: string;\n /**\n * The version of the secret. May be undefined.\n */\n version?: string;\n /**\n * The name of the secret.\n */\n name: string;\n /**\n * The secret id.\n */\n id?: string;\n /**\n * The content type of the secret.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n /**\n * Application specific\n * metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n /**\n * If this is a secret backing a KV certificate, then\n * this field specifies the corresponding key backing the KV certificate.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link SecretProperties.certificateKeyId} instead. `keyId` will always be undefined.\n */\n readonly keyId?: never;\n\n /**\n * If this is a secret backing a KV certificate, then\n * this field specifies the identifier of the corresponding key backing the KV certificate.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly certificateKeyId?: string;\n\n /**\n * True if the secret's lifetime is managed by\n * key vault. If this is a secret backing a certificate, then managed will be\n * true.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly managed?: boolean;\n /**\n * Creation time in UTC.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly createdOn?: Date;\n /**\n * Last updated time in UTC.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly updatedOn?: Date;\n /**\n * Reflects the deletion\n * recovery level currently in effect for keys in the current vault. If it\n * contains 'Purgeable' the key can be permanently deleted by a privileged\n * user; otherwise, only the system can purge the key, at the end of the\n * retention interval. Possible values include: 'Purgeable',\n * 'Recoverable+Purgeable', 'Recoverable',\n * 'Recoverable+ProtectedSubscription'\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly recoveryLevel?: DeletionRecoveryLevel;\n /**\n * The retention dates of the softDelete data.\n * The value should be `>=7` and `<=90` when softDelete enabled.\n * **NOTE: This property will not be serialized. It can only be populated by the server.**\n */\n recoverableDays?: number;\n}\n\n/**\n * An interface representing a deleted KeyVault Secret.\n */\nexport interface DeletedSecret {\n /**\n * The properties of the secret\n */\n properties: SecretProperties & {\n /**\n * The url of the recovery object, used to\n * identify and recover the deleted secret.\n * @deprecated Please use {@link DeletedSecret.recoveryId}.\n */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled\n * to be purged, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link DeletedSecret.scheduledPurgeDate}.\n */\n scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link DeletedSecret.deletedOn}.\n */\n deletedOn?: Date;\n };\n /**\n * The secret value.\n */\n value?: string;\n /**\n * The name of the secret.\n */\n name: string;\n /**\n * The url of the recovery object, used to\n * identify and recover the deleted secret.\n */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled\n * to be purged, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n deletedOn?: Date;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginDeleteSecret} and {@link beginRecoverDeletedKey}.\n */\nexport interface SecretPollerOptions extends coreClient.OperationOptions {\n /**\n * Time between each polling in milliseconds.\n */\n intervalInMs?: number;\n /**\n * A serialized poller, used to resume an existing operation\n */\n resumeFrom?: string;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginDeleteSecret}\n */\nexport interface BeginDeleteSecretOptions extends SecretPollerOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginRecoverDeletedSecret}\n */\nexport interface BeginRecoverDeletedSecretOptions extends SecretPollerOptions {}\n\n/**\n * Options for {@link setSecret}.\n */\nexport interface SetSecretOptions extends coreClient.OperationOptions {\n /**\n * Application specific metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n /**\n * Type of the secret value such as a password.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n}\n\n/**\n * Options for {@link updateSecretProperties}.\n */\nexport interface UpdateSecretPropertiesOptions extends coreClient.OperationOptions {\n /**\n * Type of the secret value such as a password.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n /**\n * Application specific metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n}\n\n/**\n * Options for {@link getSecret}.\n */\nexport interface GetSecretOptions extends coreClient.OperationOptions {\n /**\n * The version of the secret to retrieve. If not\n * specified the latest version of the secret will be retrieved.\n */\n version?: string;\n}\n\n/**\n * Options for {@link getDeletedSecret}.\n */\nexport interface GetDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link purgeDeletedSecret}.\n */\nexport interface PurgeDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link backupSecretOptions}.\n */\nexport interface BackupSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link restoreSecretBackup}.\n */\nexport interface RestoreSecretBackupOptions extends coreClient.OperationOptions {}\n\n/**\n * @internal\n * Options for {@link recoverDeletedSecret}.\n */\nexport interface RecoverDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * @internal\n * Options for {@link deleteSecret}.\n */\nexport interface DeleteSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listPropertiesOfSecretVersions}.\n */\nexport interface ListPropertiesOfSecretVersionsOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listPropertiesOfSecrets}.\n */\nexport interface ListPropertiesOfSecretsOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listDeletedSecrets}.\n */\nexport interface ListDeletedSecretsOptions extends coreClient.OperationOptions {}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { TokenCredential } from \"@azure/core-auth\";\n\nimport { bearerTokenAuthenticationPolicy } from \"@azure/core-rest-pipeline\";\n\nimport { logger } from \"./log\";\n\nimport \"@azure/core-paging\";\nimport { PageSettings, PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { PollOperationState, PollerLike } from \"@azure/core-lro\";\nimport {\n DeletedSecretBundle,\n DeletionRecoveryLevel,\n GetSecretsOptionalParams,\n KnownDeletionRecoveryLevel,\n SecretBundle,\n} from \"./generated/models\";\nimport { KeyVaultClient } from \"./generated/keyVaultClient\";\nimport { createChallengeCallbacks } from \"../../keyvault-common/src\";\n\nimport { DeleteSecretPoller } from \"./lro/delete/poller\";\nimport { RecoverDeletedSecretPoller } from \"./lro/recover/poller\";\n\nimport {\n BackupSecretOptions,\n BeginDeleteSecretOptions,\n BeginRecoverDeletedSecretOptions,\n DeletedSecret,\n GetDeletedSecretOptions,\n GetSecretOptions,\n KeyVaultSecret,\n LATEST_API_VERSION,\n ListDeletedSecretsOptions,\n ListPropertiesOfSecretVersionsOptions,\n ListPropertiesOfSecretsOptions,\n PurgeDeletedSecretOptions,\n RestoreSecretBackupOptions,\n SecretClientOptions,\n SecretPollerOptions,\n SecretProperties,\n SetSecretOptions,\n UpdateSecretPropertiesOptions,\n} from \"./secretsModels\";\nimport { KeyVaultSecretIdentifier, parseKeyVaultSecretIdentifier } from \"./identifier\";\nimport { getSecretFromSecretBundle } from \"./transformations\";\nimport { tracingClient } from \"./tracing\";\n\nexport {\n SecretClientOptions,\n DeletedSecret,\n DeletionRecoveryLevel,\n KnownDeletionRecoveryLevel,\n GetSecretOptions,\n GetDeletedSecretOptions,\n PurgeDeletedSecretOptions,\n BackupSecretOptions,\n RestoreSecretBackupOptions,\n ListPropertiesOfSecretVersionsOptions,\n ListPropertiesOfSecretsOptions,\n ListDeletedSecretsOptions,\n PagedAsyncIterableIterator,\n PageSettings,\n KeyVaultSecretIdentifier,\n parseKeyVaultSecretIdentifier,\n PollerLike,\n PollOperationState,\n KeyVaultSecret,\n SecretProperties,\n SecretPollerOptions,\n BeginDeleteSecretOptions,\n BeginRecoverDeletedSecretOptions,\n SetSecretOptions,\n UpdateSecretPropertiesOptions,\n logger,\n};\n\n/**\n * The SecretClient provides methods to manage {@link KeyVaultSecret} in\n * the Azure Key Vault. The client supports creating, retrieving, updating,\n * deleting, purging, backing up, restoring and listing KeyVaultSecrets. The\n * client also supports listing {@link DeletedSecret} for a soft-delete enabled Azure\n * Key Vault.\n */\nexport class SecretClient {\n /**\n * The base URL to the vault\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated KeyVault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of SecretClient.\n *\n * Example usage:\n * ```ts\n * import { SecretClient } from \"@azure/keyvault-secrets\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEYVAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new SecretClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - The base URL to the vault.\n * @param credential - An object that implements the `TokenCredential` interface used to authenticate requests to the service. Use the \\@azure/identity package to create a credential that suits your needs.\n * @param pipelineOptions - Pipeline options used to configure Key Vault API requests.\n * Omit this parameter to use the default pipeline configuration.\n */\n constructor(\n vaultUrl: string,\n credential: TokenCredential,\n pipelineOptions: SecretClientOptions = {}\n ) {\n this.vaultUrl = vaultUrl;\n\n const authPolicy = bearerTokenAuthenticationPolicy({\n credential,\n scopes: [],\n challengeCallbacks: createChallengeCallbacks(),\n });\n\n const internalPipelineOptions = {\n ...pipelineOptions,\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\n \"x-ms-keyvault-region\",\n \"x-ms-keyvault-network-info\",\n \"x-ms-keyvault-service-version\",\n ],\n },\n };\n\n this.client = new KeyVaultClient(\n pipelineOptions.serviceVersion || LATEST_API_VERSION,\n internalPipelineOptions\n );\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * The setSecret method adds a secret or secret version to the Azure Key Vault. If the named secret\n * already exists, Azure Key Vault creates a new version of that secret.\n * This operation requires the secrets/set permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n * ```\n * Adds a secret in a specified key vault.\n * @param secretName - The name of the secret.\n * @param value - The value of the secret.\n * @param options - The optional parameters.\n */\n public setSecret(\n secretName: string,\n value: string,\n options: SetSecretOptions = {}\n ): Promise<KeyVaultSecret> {\n let unflattenedOptions = {};\n\n if (options) {\n const { enabled, notBefore, expiresOn: expires, ...remainingOptions } = options;\n unflattenedOptions = {\n ...remainingOptions,\n secretAttributes: {\n enabled,\n notBefore,\n expires,\n },\n };\n }\n return tracingClient.withSpan(\n \"SecretClient.setSecret\",\n unflattenedOptions,\n async (updatedOptions) => {\n const response = await this.client.setSecret(\n this.vaultUrl,\n secretName,\n value,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Deletes a secret stored in Azure Key Vault.\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the secret is deleted.\n *\n * This operation requires the secrets/delete permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n *\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n *\n * // Serializing the poller\n * const serialized = deletePoller.toString();\n *\n * // A new poller can be created with:\n * // const newPoller = await client.beginDeleteSecret(\"MySecretName\", { resumeFrom: serialized });\n *\n * // Waiting until it's done\n * const deletedSecret = await deletePoller.pollUntilDone();\n * console.log(deletedSecret);\n * ```\n * Deletes a secret from a specified key vault.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public async beginDeleteSecret(\n name: string,\n options: BeginDeleteSecretOptions = {}\n ): Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>> {\n const poller = new DeleteSecretPoller({\n name,\n client: this.client,\n vaultUrl: this.vaultUrl,\n ...options,\n operationOptions: options,\n });\n // This will initialize the poller's operation (the deletion of the secret).\n await poller.poll();\n return poller;\n }\n\n /**\n * The updateSecret method changes specified attributes of an existing stored secret. Properties that\n * are not specified in the request are left unchanged. The value of a secret itself cannot be\n * changed. This operation requires the secrets/set permission.\n *\n * Example usage:\n * ```ts\n * let secretName = \"MySecretName\";\n * let client = new SecretClient(url, credentials);\n * let secret = await client.getSecret(secretName);\n * await client.updateSecretProperties(secretName, secret.properties.version, { enabled: false });\n * ```\n * Updates the attributes associated with a specified secret in a given key vault.\n * @param secretName - The name of the secret.\n * @param secretVersion - The version of the secret.\n * @param options - The optional parameters.\n */\n public async updateSecretProperties(\n secretName: string,\n secretVersion: string,\n options: UpdateSecretPropertiesOptions = {}\n ): Promise<SecretProperties> {\n let unflattenedOptions = {};\n if (options) {\n const { enabled, notBefore, expiresOn: expires, ...remainingOptions } = options;\n unflattenedOptions = {\n ...remainingOptions,\n secretAttributes: {\n enabled,\n notBefore,\n expires,\n },\n };\n }\n\n return tracingClient.withSpan(\n \"SecretClient.updateSecretProperties\",\n unflattenedOptions,\n async (updatedOptions) => {\n const response = await this.client.updateSecret(\n this.vaultUrl,\n secretName,\n secretVersion,\n updatedOptions\n );\n return getSecretFromSecretBundle(response).properties;\n }\n );\n }\n\n /**\n * The getSecret method is applicable to any secret stored in Azure Key Vault. This operation requires\n * the secrets/get permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let secret = await client.getSecret(\"MySecretName\");\n * ```\n * Get a specified secret from a given key vault.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public getSecret(secretName: string, options: GetSecretOptions = {}): Promise<KeyVaultSecret> {\n return tracingClient.withSpan(\"SecretClient.getSecret\", options, async (updatedOptions) => {\n const response = await this.client.getSecret(\n this.vaultUrl,\n secretName,\n options && options.version ? options.version : \"\",\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n });\n }\n\n /**\n * The getDeletedSecret method returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * await client.getDeletedSecret(\"MyDeletedSecret\");\n * ```\n * Gets the specified deleted secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public getDeletedSecret(\n secretName: string,\n options: GetDeletedSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"SecretClient.getDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getDeletedSecret(\n this.vaultUrl,\n secretName,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation\n * requires the secrets/purge permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n * await deletePoller.pollUntilDone();\n * await client.purgeDeletedSecret(\"MySecretName\");\n * ```\n * Permanently deletes the specified secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public purgeDeletedSecret(\n secretName: string,\n options: PurgeDeletedSecretOptions = {}\n ): Promise<void> {\n return tracingClient.withSpan(\n \"SecretClient.purgeDeletedSecret\",\n options,\n async (updatedOptions) => {\n await this.client.purgeDeletedSecret(this.vaultUrl, secretName, updatedOptions);\n }\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault.\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the secret is recovered.\n *\n * This operation requires the secrets/recover permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n *\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n * await deletePoller.pollUntilDone();\n *\n * const recoverPoller = await client.beginRecoverDeletedSecret(\"MySecretName\");\n *\n * // Serializing the poller\n * const serialized = recoverPoller.toString();\n *\n * // A new poller can be created with:\n * // const newPoller = await client.beginRecoverDeletedSecret(\"MySecretName\", { resumeFrom: serialized });\n *\n * // Waiting until it's done\n * const deletedSecret = await recoverPoller.pollUntilDone();\n * console.log(deletedSecret);\n * ```\n * Recovers the deleted secret to the latest version.\n * @param secretName - The name of the deleted secret.\n * @param options - The optional parameters.\n */\n public async beginRecoverDeletedSecret(\n name: string,\n options: BeginRecoverDeletedSecretOptions = {}\n ): Promise<PollerLike<PollOperationState<SecretProperties>, SecretProperties>> {\n const poller = new RecoverDeletedSecretPoller({\n name,\n client: this.client,\n vaultUrl: this.vaultUrl,\n ...options,\n operationOptions: options,\n });\n\n // This will initialize the poller's operation (the recovery of the deleted secret).\n await poller.poll();\n return poller;\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let backupResult = await client.backupSecret(\"MySecretName\");\n * ```\n * Backs up the specified secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public backupSecret(\n secretName: string,\n options: BackupSecretOptions = {}\n ): Promise<Uint8Array | undefined> {\n return tracingClient.withSpan(\"SecretClient.backupSecret\", options, async (updatedOptions) => {\n const response = await this.client.backupSecret(this.vaultUrl, secretName, updatedOptions);\n\n return response.value;\n });\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let mySecretBundle = await client.backupSecret(\"MySecretName\");\n * // ...\n * await client.restoreSecretBackup(mySecretBundle);\n * ```\n * Restores a backed up secret to a vault.\n * @param secretBundleBackup - The backup blob associated with a secret bundle.\n * @param options - The optional parameters.\n */\n public restoreSecretBackup(\n secretBundleBackup: Uint8Array,\n options: RestoreSecretBackupOptions = {}\n ): Promise<SecretProperties> {\n return tracingClient.withSpan(\n \"SecretClient.restoreSecretBackup\",\n options,\n async (updatedOptions) => {\n const response = await this.client.restoreSecret(\n this.vaultUrl,\n secretBundleBackup,\n updatedOptions\n );\n return getSecretFromSecretBundle(response).properties;\n }\n );\n }\n\n /**\n * Deals with the pagination of {@link listPropertiesOfSecretVersions}.\n * @param name - The name of the KeyVault Secret.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretVersionsPage(\n secretName: string,\n continuationState: PageSettings,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): AsyncIterableIterator<SecretProperties[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretVersionsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getSecretVersions(this.vaultUrl, secretName, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretVersionsPage\",\n options,\n (updatedOptions) =>\n this.client.getSecretVersions(\n continuationState.continuationToken!,\n secretName,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listPropertiesOfSecretVersions}.\n * @param name - The name of the KeyVault Secret.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretVersionsAll(\n secretName: string,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): AsyncIterableIterator<SecretProperties> {\n const f = {};\n\n for await (const page of this.listPropertiesOfSecretVersionsPage(secretName, f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates all versions of the given secret in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const secretProperties of client.listPropertiesOfSecretVersions(\"MySecretName\")) {\n * const secret = await client.getSecret(secretProperties.name);\n * console.log(\"secret version: \", secret);\n * }\n * ```\n * @param secretName - Name of the secret to fetch versions for.\n * @param options - The optional parameters.\n */\n public listPropertiesOfSecretVersions(\n secretName: string,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): PagedAsyncIterableIterator<SecretProperties> {\n const iter = this.listPropertiesOfSecretVersionsAll(secretName, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listPropertiesOfSecretVersionsPage(secretName, settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listPropertiesOfSecrets}.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretsPage(\n continuationState: PageSettings,\n options: ListPropertiesOfSecretsOptions = {}\n ): AsyncIterableIterator<SecretProperties[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getSecrets(this.vaultUrl, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretsPage\",\n options,\n (updatedOptions) =>\n this.client.getSecretsNext(\n this.vaultUrl,\n continuationState.continuationToken!,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listPropertiesOfSecrets}.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretsAll(\n options: ListPropertiesOfSecretsOptions = {}\n ): AsyncIterableIterator<SecretProperties> {\n const f = {};\n\n for await (const page of this.listPropertiesOfSecretsPage(f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates the latest version of all secrets in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const secretProperties of client.listPropertiesOfSecrets()) {\n * const secret = await client.getSecret(secretProperties.name);\n * console.log(\"secret: \", secret);\n * }\n * ```\n * List all secrets in the vault.\n * @param options - The optional parameters.\n */\n public listPropertiesOfSecrets(\n options: ListPropertiesOfSecretsOptions = {}\n ): PagedAsyncIterableIterator<SecretProperties> {\n const iter = this.listPropertiesOfSecretsAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => this.listPropertiesOfSecretsPage(settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listDeletedSecrets}.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listDeletedSecretsPage(\n continuationState: PageSettings,\n options: ListDeletedSecretsOptions = {}\n ): AsyncIterableIterator<DeletedSecret[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listDeletedSecretsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getDeletedSecrets(this.vaultUrl, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map((bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle)\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.lisDeletedSecretsPage\",\n options,\n (updatedOptions) =>\n this.client.getDeletedSecretsNext(\n this.vaultUrl,\n continuationState.continuationToken!,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map((bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle)\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listDeletedSecrets}.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listDeletedSecretsAll(\n options: ListDeletedSecretsOptions = {}\n ): AsyncIterableIterator<DeletedSecret> {\n const f = {};\n\n for await (const page of this.listDeletedSecretsPage(f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates the deleted secrets in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const deletedSecret of client.listDeletedSecrets()) {\n * console.log(\"deleted secret: \", deletedSecret);\n * }\n * ```\n * List all secrets in the vault.\n * @param options - The optional parameters.\n */\n public listDeletedSecrets(\n options: ListDeletedSecretsOptions = {}\n ): PagedAsyncIterableIterator<DeletedSecret> {\n const iter = this.listDeletedSecretsAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => this.listDeletedSecretsPage(settings, options),\n };\n }\n}\n"],"names":["createClientLogger","KnownDeletionRecoveryLevel","coreHttpCompat","coreRestPipeline","coreClient","Mappers.SecretBundle","Mappers.KeyVaultError","Mappers.SecretSetParameters","Parameters.apiVersion","Parameters.vaultBaseUrl","Parameters.secretName","Parameters.contentType","Parameters.accept","Mappers.DeletedSecretBundle","Parameters.secretName1","Mappers.SecretUpdateParameters","Parameters.secretVersion","Mappers.SecretListResult","Parameters.maxresults","Mappers.DeletedSecretListResult","Mappers.BackupSecretResult","Mappers.SecretRestoreParameters","Parameters.nextLink","url","Poller","delay","createTracingClient","bearerTokenAuthenticationPolicy","__rest","__await","__asyncValues"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/log.ts","../src/generated/models/index.ts","../src/generated/models/mappers.ts","../src/generated/models/parameters.ts","../src/generated/keyVaultClient.ts","../../keyvault-common/src/parseWWWAuthenticate.ts","../../keyvault-common/src/challengeBasedAuthenticationPolicy.ts","../../keyvault-common/src/parseKeyvaultIdentifier.ts","../src/lro/keyVaultSecretPoller.ts","../src/identifier.ts","../src/transformations.ts","../src/constants.ts","../src/tracing.ts","../src/lro/delete/operation.ts","../src/lro/delete/poller.ts","../src/lro/recover/operation.ts","../src/lro/recover/poller.ts","../src/secretsModels.ts","../src/index.ts"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * The \\@azure/logger configuration for this package.\n */\nexport const logger = createClientLogger(\"keyvault-secrets\");\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\n\n/** The secret set parameters. */\nexport interface SecretSetParameters {\n /** The value of the secret. */\n value: string;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n}\n\n/** The object attributes managed by the KeyVault service. */\nexport interface Attributes {\n /** Determines whether the object is enabled. */\n enabled?: boolean;\n /** Not before date in UTC. */\n notBefore?: Date;\n /** Expiry date in UTC. */\n expires?: Date;\n /**\n * Creation time in UTC.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly created?: Date;\n /**\n * Last updated time in UTC.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly updated?: Date;\n}\n\n/** A secret consisting of a value, id and its attributes. */\nexport interface SecretBundle {\n /** The secret value. */\n value?: string;\n /** The secret id. */\n id?: string;\n /** The content type of the secret. */\n contentType?: string;\n /** The secret management attributes. */\n attributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /**\n * If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly kid?: string;\n /**\n * True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly managed?: boolean;\n}\n\n/** The key vault error exception. */\nexport interface KeyVaultError {\n /**\n * The key vault server error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly error?: ErrorModel;\n}\n\n/** The key vault server error. */\nexport interface ErrorModel {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The key vault server error.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly innerError?: ErrorModel;\n}\n\n/** The secret update parameters. */\nexport interface SecretUpdateParameters {\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n}\n\n/** The secret list result. */\nexport interface SecretListResult {\n /**\n * A response message containing a list of secrets in the key vault along with a link to the next page of secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: SecretItem[];\n /**\n * The URL to get the next set of secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The secret item containing secret metadata. */\nexport interface SecretItem {\n /** Secret identifier. */\n id?: string;\n /** The secret management attributes. */\n attributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /**\n * True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly managed?: boolean;\n}\n\n/** The deleted secret list result */\nexport interface DeletedSecretListResult {\n /**\n * A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: DeletedSecretItem[];\n /**\n * The URL to get the next set of deleted secrets.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n}\n\n/** The backup secret result, containing the backup blob. */\nexport interface BackupSecretResult {\n /**\n * The backup blob containing the backed up secret.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Uint8Array;\n}\n\n/** The secret restore parameters. */\nexport interface SecretRestoreParameters {\n /** The backup blob associated with a secret bundle. */\n secretBundleBackup: Uint8Array;\n}\n\n/** Properties of the key backing a certificate. */\nexport interface SecretProperties {\n /** The media type (MIME type). */\n contentType?: string;\n}\n\n/** The secret management attributes. */\nexport type SecretAttributes = Attributes & {\n /**\n * softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly recoverableDays?: number;\n /**\n * Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly recoveryLevel?: DeletionRecoveryLevel;\n};\n\n/** A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged. */\nexport type DeletedSecretBundle = SecretBundle & {\n /** The url of the recovery object, used to identify and recover the deleted secret. */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled to be purged, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deletedDate?: Date;\n};\n\n/** The deleted secret item containing metadata about the deleted secret. */\nexport type DeletedSecretItem = SecretItem & {\n /** The url of the recovery object, used to identify and recover the deleted secret. */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled to be purged, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deletedDate?: Date;\n};\n\n/** Known values of {@link ApiVersion73} that the service accepts. */\nexport enum KnownApiVersion73 {\n /** Api Version '7.3' */\n Seven3 = \"7.3\"\n}\n\n/**\n * Defines values for ApiVersion73. \\\n * {@link KnownApiVersion73} can be used interchangeably with ApiVersion73,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **7.3**: Api Version '7.3'\n */\nexport type ApiVersion73 = string;\n\n/** Known values of {@link DeletionRecoveryLevel} that the service accepts. */\nexport enum KnownDeletionRecoveryLevel {\n /** Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.) */\n Purgeable = \"Purgeable\",\n /** Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered */\n RecoverablePurgeable = \"Recoverable+Purgeable\",\n /** Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered */\n Recoverable = \"Recoverable\",\n /** Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered */\n RecoverableProtectedSubscription = \"Recoverable+ProtectedSubscription\",\n /** Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled. */\n CustomizedRecoverablePurgeable = \"CustomizedRecoverable+Purgeable\",\n /** Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available. */\n CustomizedRecoverable = \"CustomizedRecoverable\",\n /** Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled. */\n CustomizedRecoverableProtectedSubscription = \"CustomizedRecoverable+ProtectedSubscription\"\n}\n\n/**\n * Defines values for DeletionRecoveryLevel. \\\n * {@link KnownDeletionRecoveryLevel} can be used interchangeably with DeletionRecoveryLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Purgeable**: Denotes a vault state in which deletion is an irreversible operation, without the possibility for recovery. This level corresponds to no protection being available against a Delete operation; the data is irretrievably lost upon accepting a Delete operation at the entity level or higher (vault, resource group, subscription etc.) \\\n * **Recoverable+Purgeable**: Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval (90 days), unless a Purge operation is requested, or the subscription is cancelled. System wil permanently delete it after 90 days, if not recovered \\\n * **Recoverable**: Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity during the retention interval(90 days) and while the subscription is still available. System wil permanently delete it after 90 days, if not recovered \\\n * **Recoverable+ProtectedSubscription**: Denotes a vault and subscription state in which deletion is recoverable within retention interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled. System wil permanently delete it after 90 days, if not recovered \\\n * **CustomizedRecoverable+Purgeable**: Denotes a vault state in which deletion is recoverable, and which also permits immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees the recoverability of the deleted entity during the retention interval, unless a Purge operation is requested, or the subscription is cancelled. \\\n * **CustomizedRecoverable**: Denotes a vault state in which deletion is recoverable without the possibility for immediate and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level guarantees the recoverability of the deleted entity during the retention interval and while the subscription is still available. \\\n * **CustomizedRecoverable+ProtectedSubscription**: Denotes a vault and subscription state in which deletion is recoverable, immediate and permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the recoverability of the deleted entity during the retention interval, and also reflects the fact that the subscription itself cannot be cancelled.\n */\nexport type DeletionRecoveryLevel = string;\n\n/** Optional parameters. */\nexport interface SetSecretOptionalParams extends coreClient.OperationOptions {\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n}\n\n/** Contains response data for the setSecret operation. */\nexport type SetSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface DeleteSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the deleteSecret operation. */\nexport type DeleteSecretResponse = DeletedSecretBundle;\n\n/** Optional parameters. */\nexport interface UpdateSecretOptionalParams\n extends coreClient.OperationOptions {\n /** Type of the secret value such as a password. */\n contentType?: string;\n /** The secret management attributes. */\n secretAttributes?: SecretAttributes;\n /** Application specific metadata in the form of key-value pairs. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Contains response data for the updateSecret operation. */\nexport type UpdateSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretOptionalParams extends coreClient.OperationOptions {}\n\n/** Contains response data for the getSecret operation. */\nexport type GetSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretsOptionalParams extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecrets operation. */\nexport type GetSecretsResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetSecretVersionsOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretVersions operation. */\nexport type GetSecretVersionsResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretsOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getDeletedSecrets operation. */\nexport type GetDeletedSecretsResponse = DeletedSecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getDeletedSecret operation. */\nexport type GetDeletedSecretResponse = DeletedSecretBundle;\n\n/** Optional parameters. */\nexport interface PurgeDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface RecoverDeletedSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the recoverDeletedSecret operation. */\nexport type RecoverDeletedSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface BackupSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the backupSecret operation. */\nexport type BackupSecretResponse = BackupSecretResult;\n\n/** Optional parameters. */\nexport interface RestoreSecretOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the restoreSecret operation. */\nexport type RestoreSecretResponse = SecretBundle;\n\n/** Optional parameters. */\nexport interface GetSecretsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretsNext operation. */\nexport type GetSecretsNextResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetSecretVersionsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified, the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getSecretVersionsNext operation. */\nexport type GetSecretVersionsNextResponse = SecretListResult;\n\n/** Optional parameters. */\nexport interface GetDeletedSecretsNextOptionalParams\n extends coreClient.OperationOptions {\n /** Maximum number of results to return in a page. If not specified the service will return up to 25 results. */\n maxresults?: number;\n}\n\n/** Contains response data for the getDeletedSecretsNext operation. */\nexport type GetDeletedSecretsNextResponse = DeletedSecretListResult;\n\n/** Optional parameters. */\nexport interface KeyVaultClientOptionalParams\n extends coreHttpCompat.ExtendedServiceClientOptions {\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const SecretSetParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretSetParameters\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n secretAttributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n }\n }\n }\n};\n\nexport const Attributes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Attributes\",\n modelProperties: {\n enabled: {\n serializedName: \"enabled\",\n type: {\n name: \"Boolean\"\n }\n },\n notBefore: {\n serializedName: \"nbf\",\n type: {\n name: \"UnixTime\"\n }\n },\n expires: {\n serializedName: \"exp\",\n type: {\n name: \"UnixTime\"\n }\n },\n created: {\n serializedName: \"created\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n updated: {\n serializedName: \"updated\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n\nexport const SecretBundle: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretBundle\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n kid: {\n serializedName: \"kid\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n managed: {\n serializedName: \"managed\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const KeyVaultError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"KeyVaultError\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const ErrorModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorModel\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const SecretUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretUpdateParameters\",\n modelProperties: {\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n secretAttributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const SecretListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SecretItem\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecretItem: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretItem\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n },\n attributes: {\n serializedName: \"attributes\",\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n },\n managed: {\n serializedName: \"managed\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretItem\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackupSecretResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackupSecretResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Base64Url\"\n }\n }\n }\n }\n};\n\nexport const SecretRestoreParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretRestoreParameters\",\n modelProperties: {\n secretBundleBackup: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"Base64Url\"\n }\n }\n }\n }\n};\n\nexport const SecretProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretProperties\",\n modelProperties: {\n contentType: {\n serializedName: \"contentType\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecretAttributes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecretAttributes\",\n modelProperties: {\n ...Attributes.type.modelProperties,\n recoverableDays: {\n serializedName: \"recoverableDays\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n recoveryLevel: {\n serializedName: \"recoveryLevel\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretBundle: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretBundle\",\n modelProperties: {\n ...SecretBundle.type.modelProperties,\n recoveryId: {\n serializedName: \"recoveryId\",\n type: {\n name: \"String\"\n }\n },\n scheduledPurgeDate: {\n serializedName: \"scheduledPurgeDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n deletedDate: {\n serializedName: \"deletedDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n\nexport const DeletedSecretItem: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DeletedSecretItem\",\n modelProperties: {\n ...SecretItem.type.modelProperties,\n recoveryId: {\n serializedName: \"recoveryId\",\n type: {\n name: \"String\"\n }\n },\n scheduledPurgeDate: {\n serializedName: \"scheduledPurgeDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n },\n deletedDate: {\n serializedName: \"deletedDate\",\n readOnly: true,\n type: {\n name: \"UnixTime\"\n }\n }\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n SecretSetParameters as SecretSetParametersMapper,\n SecretUpdateParameters as SecretUpdateParametersMapper,\n SecretRestoreParameters as SecretRestoreParametersMapper\n} from \"../models/mappers\";\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const value: OperationParameter = {\n parameterPath: \"value\",\n mapper: SecretSetParametersMapper\n};\n\nexport const tags: OperationParameter = {\n parameterPath: [\"options\", \"tags\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const contentType1: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const secretAttributes: OperationParameter = {\n parameterPath: [\"options\", \"secretAttributes\"],\n mapper: SecretSetParametersMapper\n};\n\nexport const vaultBaseUrl: OperationURLParameter = {\n parameterPath: \"vaultBaseUrl\",\n mapper: {\n serializedName: \"vaultBaseUrl\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const secretName: OperationURLParameter = {\n parameterPath: \"secretName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[0-9a-zA-Z-]+$\")\n },\n serializedName: \"secret-name\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const secretName1: OperationURLParameter = {\n parameterPath: \"secretName\",\n mapper: {\n serializedName: \"secret-name\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType2: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const secretAttributes1: OperationParameter = {\n parameterPath: [\"options\", \"secretAttributes\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const tags1: OperationParameter = {\n parameterPath: [\"options\", \"tags\"],\n mapper: SecretUpdateParametersMapper\n};\n\nexport const secretVersion: OperationURLParameter = {\n parameterPath: \"secretVersion\",\n mapper: {\n serializedName: \"secret-version\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const maxresults: OperationQueryParameter = {\n parameterPath: [\"options\", \"maxresults\"],\n mapper: {\n constraints: {\n InclusiveMaximum: 25,\n InclusiveMinimum: 1\n },\n serializedName: \"maxresults\",\n type: {\n name: \"Number\"\n }\n }\n};\n\nexport const secretBundleBackup: OperationParameter = {\n parameterPath: \"secretBundleBackup\",\n mapper: SecretRestoreParametersMapper\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as Parameters from \"./models/parameters\";\nimport * as Mappers from \"./models/mappers\";\nimport {\n ApiVersion73,\n KeyVaultClientOptionalParams,\n SetSecretOptionalParams,\n SetSecretResponse,\n DeleteSecretOptionalParams,\n DeleteSecretResponse,\n UpdateSecretOptionalParams,\n UpdateSecretResponse,\n GetSecretOptionalParams,\n GetSecretResponse,\n GetSecretsOptionalParams,\n GetSecretsResponse,\n GetSecretVersionsOptionalParams,\n GetSecretVersionsResponse,\n GetDeletedSecretsOptionalParams,\n GetDeletedSecretsResponse,\n GetDeletedSecretOptionalParams,\n GetDeletedSecretResponse,\n PurgeDeletedSecretOptionalParams,\n RecoverDeletedSecretOptionalParams,\n RecoverDeletedSecretResponse,\n BackupSecretOptionalParams,\n BackupSecretResponse,\n RestoreSecretOptionalParams,\n RestoreSecretResponse,\n GetSecretsNextOptionalParams,\n GetSecretsNextResponse,\n GetSecretVersionsNextOptionalParams,\n GetSecretVersionsNextResponse,\n GetDeletedSecretsNextOptionalParams,\n GetDeletedSecretsNextResponse\n} from \"./models\";\n\n/** @internal */\nexport class KeyVaultClient extends coreHttpCompat.ExtendedServiceClient {\n apiVersion: ApiVersion73;\n\n /**\n * Initializes a new instance of the KeyVaultClient class.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n apiVersion: ApiVersion73,\n options?: KeyVaultClientOptionalParams\n ) {\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: KeyVaultClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-keyvault-secrets/4.5.0`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint ?? options.baseUri ?? \"{vaultBaseUrl}\"\n };\n super(optionsWithDefaults);\n\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n if (!bearerTokenAuthenticationPolicyFound) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n scopes: `${optionsWithDefaults.baseUri}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n }\n // Parameter assignments\n this.apiVersion = apiVersion;\n }\n\n /**\n * The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure\n * Key Vault creates a new version of that secret. This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param value The value of the secret.\n * @param options The options parameters.\n */\n setSecret(\n vaultBaseUrl: string,\n secretName: string,\n value: string,\n options?: SetSecretOptionalParams\n ): Promise<SetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, value, options },\n setSecretOperationSpec\n );\n }\n\n /**\n * The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an\n * individual version of a secret. This operation requires the secrets/delete permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n deleteSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: DeleteSecretOptionalParams\n ): Promise<DeleteSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n deleteSecretOperationSpec\n );\n }\n\n /**\n * The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are\n * not specified in the request are left unchanged. The value of a secret itself cannot be changed.\n * This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret.\n * @param options The options parameters.\n */\n updateSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: UpdateSecretOptionalParams\n ): Promise<UpdateSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n updateSecretOperationSpec\n );\n }\n\n /**\n * The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the\n * secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret. This URI fragment is optional. If not specified, the\n * latest version of the secret is returned.\n * @param options The options parameters.\n */\n getSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: GetSecretOptionalParams\n ): Promise<GetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n getSecretOperationSpec\n );\n }\n\n /**\n * The Get Secrets operation is applicable to the entire vault. However, only the base secret\n * identifier and its attributes are provided in the response. Individual secret versions are not\n * listed in the response. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getSecrets(\n vaultBaseUrl: string,\n options?: GetSecretsOptionalParams\n ): Promise<GetSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getSecretsOperationSpec\n );\n }\n\n /**\n * The full secret identifier and attributes are provided in the response. No values are returned for\n * the secrets. This operations requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getSecretVersions(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetSecretVersionsOptionalParams\n ): Promise<GetSecretVersionsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getSecretVersionsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for\n * soft-delete. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getDeletedSecrets(\n vaultBaseUrl: string,\n options?: GetDeletedSecretsOptionalParams\n ): Promise<GetDeletedSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getDeletedSecretsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secret operation returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetDeletedSecretOptionalParams\n ): Promise<GetDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getDeletedSecretOperationSpec\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires\n * the secrets/purge permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n purgeDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: PurgeDeletedSecretOptionalParams\n ): Promise<void> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n purgeDeletedSecretOperationSpec\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault. This operation can only be performed on a\n * soft-delete enabled vault. This operation requires the secrets/recover permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the deleted secret.\n * @param options The options parameters.\n */\n recoverDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: RecoverDeletedSecretOptionalParams\n ): Promise<RecoverDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n recoverDeletedSecretOperationSpec\n );\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n backupSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: BackupSecretOptionalParams\n ): Promise<BackupSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n backupSecretOperationSpec\n );\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretBundleBackup The backup blob associated with a secret bundle.\n * @param options The options parameters.\n */\n restoreSecret(\n vaultBaseUrl: string,\n secretBundleBackup: Uint8Array,\n options?: RestoreSecretOptionalParams\n ): Promise<RestoreSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretBundleBackup, options },\n restoreSecretOperationSpec\n );\n }\n\n /**\n * GetSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetSecrets method.\n * @param options The options parameters.\n */\n getSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetSecretsNextOptionalParams\n ): Promise<GetSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getSecretsNextOperationSpec\n );\n }\n\n /**\n * GetSecretVersionsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param nextLink The nextLink from the previous successful call to the GetSecretVersions method.\n * @param options The options parameters.\n */\n getSecretVersionsNext(\n vaultBaseUrl: string,\n secretName: string,\n nextLink: string,\n options?: GetSecretVersionsNextOptionalParams\n ): Promise<GetSecretVersionsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, nextLink, options },\n getSecretVersionsNextOperationSpec\n );\n }\n\n /**\n * GetDeletedSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetDeletedSecrets method.\n * @param options The options parameters.\n */\n getDeletedSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetDeletedSecretsNextOptionalParams\n ): Promise<GetDeletedSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getDeletedSecretsNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst setSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n value: [\"value\"],\n tags: [\"options\", \"tags\"],\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"]\n },\n mapper: { ...Mappers.SecretSetParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst deleteSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"],\n tags: [\"options\", \"tags\"]\n },\n mapper: { ...Mappers.SecretUpdateParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/versions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst purgeDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst recoverDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}/recover\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst backupSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/backup\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BackupSecretResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst restoreSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/restore\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: { secretBundleBackup: [\"secretBundleBackup\"] },\n mapper: { ...Mappers.SecretRestoreParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * @internal\n *\n * Valid key names in WWW-Authenticate header.\n */\nconst validParsedWWWAuthenticateProperties = [\n \"authorization\",\n \"authorization_url\",\n \"resource\",\n \"scope\",\n \"tenantId\",\n] as const;\n\n/**\n * @internal\n *\n * A union type representing all valid key names in WWW-Authenticate header.\n */\ntype ValidParsedWWWAuthenticateProperties = typeof validParsedWWWAuthenticateProperties[number];\n\n/**\n * @internal\n *\n * Holds the known WWWAuthenticate keys and their values as a result of\n * parsing a WWW-Authenticate header.\n */\nexport type ParsedWWWAuthenticate = {\n [Key in ValidParsedWWWAuthenticateProperties]?: string;\n};\n\n/**\n * Parses an WWW-Authenticate response.\n * This transforms a string value like:\n * `Bearer authorization=\"https://some.url/tenantId\", resource=\"https://some.url\"`\n * into an object like:\n * `{ authorization: \"https://some.url/tenantId\", resource: \"https://some.url\" }`\n * @param wwwAuthenticate - String value in the WWW-Authenticate header\n */\nexport function parseWWWAuthenticate(wwwAuthenticate: string): ParsedWWWAuthenticate {\n const pairDelimiter = /,? +/;\n const parsed = wwwAuthenticate\n .split(pairDelimiter)\n .reduce<ParsedWWWAuthenticate>((kvPairs, p) => {\n if (p.match(/\\w=\"/)) {\n // 'sampleKey=\"sample_value\"' -> [sampleKey, \"sample_value\"] -> { sampleKey: sample_value }\n const [key, value] = p.split(\"=\");\n if (\n validParsedWWWAuthenticateProperties.includes(key as ValidParsedWWWAuthenticateProperties)\n ) {\n // The values will be wrapped in quotes, which need to be stripped out.\n return { ...kvPairs, [key]: value.slice(1, -1) };\n }\n }\n return kvPairs;\n }, {});\n\n // Finally, we pull the tenantId from the authorization header to support multi-tenant authentication.\n if (parsed.authorization) {\n try {\n const tenantId = new URL(parsed.authorization).pathname.substring(1);\n if (tenantId) {\n parsed.tenantId = tenantId;\n }\n } catch (_) {\n throw new Error(`The challenge authorization URI '${parsed.authorization}' is invalid.`);\n }\n }\n\n return parsed;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n AuthorizeRequestOnChallengeOptions,\n AuthorizeRequestOptions,\n ChallengeCallbacks,\n PipelineRequest,\n RequestBodyType,\n} from \"@azure/core-rest-pipeline\";\nimport { ParsedWWWAuthenticate, parseWWWAuthenticate } from \"./parseWWWAuthenticate\";\n\nimport { GetTokenOptions } from \"@azure/core-auth\";\n\n/**\n * @internal\n * Holds the state of Challenge Auth.\n * When making the first request we force Key Vault to begin a challenge\n * by clearing out the request body and storing it locally.\n *\n * Later on, the authorizeRequestOnChallenge callback will process the\n * challenge and, if ready to resend the original request, reset the body\n * so that it may be sent again.\n *\n * Once a client has succeeded once, we can start skipping CAE.\n */\ntype ChallengeState =\n | {\n status: \"none\";\n }\n | {\n status: \"started\";\n originalBody?: RequestBodyType;\n }\n | {\n status: \"complete\";\n scopes: string[];\n };\n\n/**\n * @internal\n *\n * Creates challenge callback handlers to manage CAE lifecycle in Azure Key Vault.\n *\n * Key Vault supports other authentication schemes, but we ensure challenge authentication\n * is used by first sending a copy of the request, without authorization or content.\n *\n * when the challenge is received, it will be authenticated and used to send the original\n * request with authorization.\n *\n * Following the first request of a client, follow-up requests will get the cached token\n * if possible.\n */\nexport function createChallengeCallbacks(): ChallengeCallbacks {\n let challengeState: ChallengeState = { status: \"none\" };\n\n function requestToOptions(request: PipelineRequest): GetTokenOptions {\n return {\n abortSignal: request.abortSignal,\n requestOptions: {\n timeout: request.timeout,\n },\n tracingOptions: request.tracingOptions,\n };\n }\n\n async function authorizeRequest(options: AuthorizeRequestOptions) {\n const { request } = options;\n const requestOptions: GetTokenOptions = requestToOptions(request);\n\n switch (challengeState.status) {\n case \"none\":\n challengeState = {\n status: \"started\",\n originalBody: request.body,\n };\n request.body = null;\n break;\n case \"started\":\n break; // Retry, we should not overwrite the original body\n case \"complete\": {\n const token = await options.getAccessToken(challengeState.scopes, requestOptions);\n if (token) {\n request.headers.set(\"authorization\", `Bearer ${token.token}`);\n }\n break;\n }\n }\n return Promise.resolve();\n }\n\n async function authorizeRequestOnChallenge(\n options: AuthorizeRequestOnChallengeOptions\n ): Promise<boolean> {\n const { request, response } = options;\n\n if (request.body === null && challengeState.status === \"started\") {\n // Reset the original body before doing anything else.\n // Note: If successful status will be \"complete\", otherwise \"none\" will\n // restart the process.\n request.body = challengeState.originalBody;\n }\n\n const getTokenOptions = requestToOptions(request);\n\n const challenge = response.headers.get(\"WWW-Authenticate\");\n if (!challenge) {\n throw new Error(\"Missing challenge.\");\n }\n const parsedChallenge: ParsedWWWAuthenticate = parseWWWAuthenticate(challenge) || {};\n\n const scope = parsedChallenge.resource\n ? parsedChallenge.resource + \"/.default\"\n : parsedChallenge.scope;\n\n if (!scope) {\n throw new Error(\"Missing scope.\");\n }\n\n const accessToken = await options.getAccessToken([scope], {\n ...getTokenOptions,\n tenantId: parsedChallenge.tenantId,\n });\n\n if (!accessToken) {\n return false;\n }\n\n options.request.headers.set(\"Authorization\", `Bearer ${accessToken.token}`);\n\n challengeState = {\n status: \"complete\",\n scopes: [scope],\n };\n\n return true;\n }\n\n return {\n authorizeRequest,\n authorizeRequestOnChallenge,\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as url from \"url\";\n\nexport interface ParsedKeyVaultEntityIdentifier {\n /**\n * The vault URI.\n */\n vaultUrl: string;\n /**\n * The version of key/secret/certificate. May be undefined.\n */\n version?: string;\n /**\n * The name of key/secret/certificate.\n */\n name: string;\n}\nexport function parseKeyvaultIdentifier(\n collection: string,\n identifier: string | undefined\n): ParsedKeyVaultEntityIdentifier {\n if (typeof collection !== \"string\" || !(collection = collection.trim())) {\n throw new Error(\"Invalid collection argument\");\n }\n\n if (typeof identifier !== \"string\" || !(identifier = identifier.trim())) {\n throw new Error(\"Invalid identifier argument\");\n }\n\n let baseUri;\n try {\n baseUri = url.parse(identifier, true, true);\n } catch (e: any) {\n throw new Error(`Invalid ${collection} identifier: ${identifier}. Not a valid URI`);\n }\n\n // Path is of the form '/collection/name[/version]'\n const segments = (baseUri.pathname || \"\").split(\"/\");\n if (segments.length !== 3 && segments.length !== 4) {\n throw new Error(\n `Invalid ${collection} identifier: ${identifier}. Bad number of segments: ${segments.length}`\n );\n }\n\n if (collection !== segments[1]) {\n throw new Error(\n `Invalid ${collection} identifier: ${identifier}. segment [1] should be \"${collection}\", found \"${segments[1]}\"`\n );\n }\n\n const vaultUrl = `${baseUri.protocol}//${baseUri.host}`;\n const name = segments[2];\n const version = segments.length === 4 ? segments[3] : undefined;\n return {\n vaultUrl,\n name,\n version,\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { OperationOptions } from \"@azure/core-client\";\nimport { PollOperation, PollOperationState, Poller } from \"@azure/core-lro\";\nimport { KeyVaultClient } from \"../generated/keyVaultClient\";\nimport { delay } from \"@azure/core-util\";\n\n/**\n * Common parameters to a Key Vault Secret Poller.\n */\nexport interface KeyVaultSecretPollerOptions {\n vaultUrl: string;\n client: KeyVaultClient;\n name: string;\n operationOptions?: OperationOptions;\n intervalInMs?: number;\n resumeFrom?: string;\n}\n\n/**\n * An interface representing the state of a Key Vault Secret Poller's operation.\n */\nexport interface KeyVaultSecretPollOperationState<TResult> extends PollOperationState<TResult> {\n /**\n * The name of the secret.\n */\n name: string;\n}\n\n/**\n * Common properties and methods of the Key Vault Secret Pollers.\n */\nexport abstract class KeyVaultSecretPoller<\n TState extends KeyVaultSecretPollOperationState<TResult>,\n TResult\n> extends Poller<TState, TResult> {\n /**\n * Defines how much time the poller is going to wait before making a new request to the service.\n */\n public intervalInMs: number = 2000;\n\n /**\n * The method used by the poller to wait before attempting to update its operation.\n */\n async delay(): Promise<void> {\n return delay(this.intervalInMs);\n }\n}\n\n/**\n * Optional parameters to the KeyVaultSecretPollOperation\n */\nexport interface KeyVaultSecretPollOperationOptions {\n cancelMessage?: string;\n}\n\n/**\n * Common properties and methods of the Key Vault Secret Poller operations.\n */\n// eslint-disable-next-next no-use-before-define\nexport class KeyVaultSecretPollOperation<\n TState extends KeyVaultSecretPollOperationState<TResult>,\n TResult\n> implements PollOperation<TState, TResult>\n{\n private cancelMessage: string = \"\";\n\n constructor(public state: TState, options: KeyVaultSecretPollOperationOptions = {}) {\n if (options.cancelMessage) {\n this.cancelMessage = options.cancelMessage;\n }\n }\n\n /**\n * Meant to reach to the service and update the Poller operation.\n * @param options - The optional parameters, which is only an abortSignal from \\@azure/abort-controller\n */\n public async update(): Promise<PollOperation<TState, TResult>> {\n throw new Error(\"Operation not supported.\");\n }\n\n /**\n * Meant to reach to the service and cancel the Poller operation.\n * @param options - The optional parameters, which is only an abortSignal from \\@azure/abort-controller\n */\n public async cancel(): Promise<PollOperation<TState, TResult>> {\n throw new Error(this.cancelMessage);\n }\n\n /**\n * Serializes the Poller operation.\n */\n public toString(): string {\n return JSON.stringify({\n state: this.state,\n });\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { parseKeyvaultIdentifier } from \"../../keyvault-common/src\";\n\n/**\n * Represents the segments that compose a Key Vault Secret Id.\n */\nexport interface KeyVaultSecretIdentifier {\n /**\n * The complete representation of the Key Vault Secret Id. For example:\n *\n * https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\n *\n */\n sourceId: string;\n\n /**\n * The URL of the Azure Key Vault instance to which the Secret belongs.\n */\n vaultUrl: string;\n\n /**\n * The version of Key Vault Secret. Might be undefined.\n */\n version?: string;\n\n /**\n * The name of the Key Vault Secret.\n */\n name: string;\n}\n\n/**\n * Parses the given Key Vault Secret Id. An example is:\n *\n * https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\n *\n * On parsing the above Id, this function returns:\n *```ts\n * {\n * sourceId: \"https://<keyvault-name>.vault.azure.net/secrets/<secret-name>/<unique-version-id>\",\n * vaultUrl: \"https://<keyvault-name>.vault.azure.net\",\n * version: \"<unique-version-id>\",\n * name: \"<secret-name>\"\n * }\n *```\n * @param id - The Id of the Key Vault Secret.\n */\nexport function parseKeyVaultSecretIdentifier(id: string): KeyVaultSecretIdentifier {\n const urlParts = id.split(\"/\");\n const collection = urlParts[3];\n\n return {\n sourceId: id,\n ...parseKeyvaultIdentifier(collection, id),\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { DeletedSecretBundle, SecretBundle } from \"./generated/models\";\nimport { parseKeyVaultSecretIdentifier } from \"./identifier\";\nimport { DeletedSecret, KeyVaultSecret } from \"./secretsModels\";\n\n/**\n * @internal\n * Shapes the exposed {@link KeyVaultKey} based on either a received secret bundle or deleted secret bundle.\n */\nexport function getSecretFromSecretBundle(\n bundle: SecretBundle | DeletedSecretBundle\n): KeyVaultSecret {\n const secretBundle = bundle as SecretBundle;\n const deletedSecretBundle = bundle as DeletedSecretBundle;\n const parsedId = parseKeyVaultSecretIdentifier(secretBundle.id!);\n\n const attributes = secretBundle.attributes;\n delete secretBundle.attributes;\n\n const resultObject: KeyVaultSecret & DeletedSecret = {\n value: secretBundle.value,\n name: parsedId.name,\n properties: {\n expiresOn: attributes?.expires,\n createdOn: attributes?.created,\n updatedOn: attributes?.updated,\n enabled: attributes?.enabled,\n notBefore: attributes?.notBefore,\n recoverableDays: attributes?.recoverableDays,\n recoveryLevel: attributes?.recoveryLevel,\n\n id: secretBundle.id,\n contentType: secretBundle.contentType,\n tags: secretBundle.tags,\n managed: secretBundle.managed,\n\n vaultUrl: parsedId.vaultUrl,\n version: parsedId.version,\n name: parsedId.name,\n certificateKeyId: secretBundle.kid,\n },\n };\n\n if (deletedSecretBundle.recoveryId) {\n resultObject.properties.recoveryId = deletedSecretBundle.recoveryId;\n resultObject.properties.scheduledPurgeDate = deletedSecretBundle.scheduledPurgeDate;\n resultObject.properties.deletedOn = deletedSecretBundle.deletedDate;\n resultObject.recoveryId = deletedSecretBundle.recoveryId;\n resultObject.scheduledPurgeDate = deletedSecretBundle.scheduledPurgeDate;\n resultObject.deletedOn = deletedSecretBundle.deletedDate;\n }\n\n if (attributes) {\n if ((attributes as any).vaultUrl) {\n delete (resultObject.properties as any).vaultUrl;\n }\n\n if (attributes.expires) {\n delete (resultObject.properties as any).expires;\n }\n\n if (attributes.created) {\n delete (resultObject.properties as any).created;\n }\n\n if (attributes.updated) {\n delete (resultObject.properties as any).updated;\n }\n }\n\n return resultObject;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport const SDK_VERSION: string = \"4.5.0\";\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createTracingClient } from \"@azure/core-tracing\";\nimport { SDK_VERSION } from \"./constants\";\n\nexport const tracingClient = createTracingClient({\n namespace: \"Microsoft.KeyVault\",\n packageName: \"@azure/keyvault-secrets\",\n packageVersion: SDK_VERSION,\n});\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { DeleteSecretOptions, DeletedSecret, GetDeletedSecretOptions } from \"../../secretsModels\";\nimport {\n KeyVaultSecretPollOperation,\n KeyVaultSecretPollOperationState,\n} from \"../keyVaultSecretPoller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient\";\nimport { getSecretFromSecretBundle } from \"../../transformations\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing\";\n\n/**\n * An interface representing the state of a delete secret's poll operation\n */\nexport interface DeleteSecretPollOperationState\n extends KeyVaultSecretPollOperationState<DeletedSecret> {}\n\n/**\n * An interface representing a delete secret's poll operation\n */\nexport class DeleteSecretPollOperation extends KeyVaultSecretPollOperation<\n DeleteSecretPollOperationState,\n DeletedSecret\n> {\n constructor(\n public state: DeleteSecretPollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private operationOptions: OperationOptions = {}\n ) {\n super(state, { cancelMessage: \"Canceling the deletion of a secret is not supported.\" });\n }\n\n /**\n * Sends a delete request for the given Key Vault Key's name to the Key Vault service.\n * Since the Key Vault Key won't be immediately deleted, we have {@link beginDeleteKey}.\n */\n private deleteSecret(name: string, options: DeleteSecretOptions = {}): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"DeleteSecretPoller.deleteSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.deleteSecret(this.vaultUrl, name, updatedOptions);\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The getDeletedSecret method returns the specified deleted secret along with its properties.\n * This operation requires the secrets/get permission.\n */\n private getDeletedSecret(\n name: string,\n options: GetDeletedSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"DeleteSecretPoller.getDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getDeletedSecret(this.vaultUrl, name, updatedOptions);\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Reaches to the service and updates the delete secret's poll operation.\n */\n public async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: DeleteSecretPollOperationState) => void;\n } = {}\n ): Promise<DeleteSecretPollOperation> {\n const state = this.state;\n const { name } = state;\n\n if (options.abortSignal) {\n this.operationOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const deletedSecret = await this.deleteSecret(name, this.operationOptions);\n state.isStarted = true;\n state.result = deletedSecret;\n if (!deletedSecret.properties.recoveryId) {\n state.isCompleted = true;\n }\n }\n\n if (!state.isCompleted) {\n try {\n state.result = await this.getDeletedSecret(name, this.operationOptions);\n state.isCompleted = true;\n } catch (error: any) {\n if (error.statusCode === 403) {\n // At this point, the resource exists but the user doesn't have access to it.\n state.isCompleted = true;\n } else if (error.statusCode !== 404) {\n state.error = error;\n state.isCompleted = true;\n throw error;\n }\n }\n }\n\n return this;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { DeleteSecretPollOperation, DeleteSecretPollOperationState } from \"./operation\";\nimport { DeletedSecret } from \"../../secretsModels\";\nimport { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from \"../keyVaultSecretPoller\";\n\n/**\n * Class that creates a poller that waits until a secret finishes being deleted.\n */\nexport class DeleteSecretPoller extends KeyVaultSecretPoller<\n DeleteSecretPollOperationState,\n DeletedSecret\n> {\n constructor(options: KeyVaultSecretPollerOptions) {\n const { vaultUrl, client, name, operationOptions, intervalInMs = 2000, resumeFrom } = options;\n\n let state: DeleteSecretPollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new DeleteSecretPollOperation(\n {\n ...state,\n name,\n },\n vaultUrl,\n client,\n operationOptions\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n DeletedSecret,\n GetSecretOptions,\n KeyVaultSecret,\n SecretProperties,\n} from \"../../secretsModels\";\nimport {\n KeyVaultSecretPollOperation,\n KeyVaultSecretPollOperationState,\n} from \"../keyVaultSecretPoller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient\";\nimport { getSecretFromSecretBundle } from \"../../transformations\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing\";\n\n/**\n * An interface representing the state of a delete secret's poll operation\n */\nexport interface RecoverDeletedSecretPollOperationState\n extends KeyVaultSecretPollOperationState<SecretProperties> {}\n\n/**\n * An interface representing a delete secret's poll operation\n */\nexport class RecoverDeletedSecretPollOperation extends KeyVaultSecretPollOperation<\n RecoverDeletedSecretPollOperationState,\n SecretProperties\n> {\n constructor(\n public state: RecoverDeletedSecretPollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private options: OperationOptions = {}\n ) {\n super(state, { cancelMessage: \"Canceling the recovery of a deleted secret is not supported.\" });\n }\n\n /**\n * The getSecret method returns the specified secret along with its properties.\n * This operation requires the secrets/get permission.\n */\n private getSecret(name: string, options: GetSecretOptions = {}): Promise<KeyVaultSecret> {\n return tracingClient.withSpan(\n \"RecoverDeletedSecretPoller.getSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getSecret(\n this.vaultUrl,\n name,\n options && options.version ? options.version : \"\",\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The recoverDeletedSecret method recovers the specified deleted secret along with its properties.\n * This operation requires the secrets/recover permission.\n */\n private recoverDeletedSecret(\n name: string,\n options: GetSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"RecoverDeletedSecretPoller.recoverDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.recoverDeletedSecret(\n this.vaultUrl,\n name,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Reaches to the service and updates the delete secret's poll operation.\n */\n async update(\n this: RecoverDeletedSecretPollOperation,\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: RecoverDeletedSecretPollOperationState) => void;\n } = {}\n ): Promise<RecoverDeletedSecretPollOperation> {\n const state = this.state;\n const { name } = state;\n\n if (options.abortSignal) {\n this.options.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n try {\n state.result = (await this.getSecret(name, this.options)).properties;\n state.isCompleted = true;\n } catch {\n // Nothing to do here.\n }\n if (!state.isCompleted) {\n state.result = (await this.recoverDeletedSecret(name, this.options)).properties;\n state.isStarted = true;\n }\n }\n\n if (!state.isCompleted) {\n try {\n state.result = (await this.getSecret(name, this.options)).properties;\n state.isCompleted = true;\n } catch (error: any) {\n if (error.statusCode === 403) {\n // At this point, the resource exists but the user doesn't have access to it.\n state.isCompleted = true;\n } else if (error.statusCode !== 404) {\n state.error = error;\n state.isCompleted = true;\n throw error;\n }\n }\n }\n\n return this;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n RecoverDeletedSecretPollOperation,\n RecoverDeletedSecretPollOperationState,\n} from \"./operation\";\nimport { SecretProperties } from \"../../secretsModels\";\nimport { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from \"../keyVaultSecretPoller\";\n\n/**\n * Class that deletes a poller that waits until a secret finishes being deleted\n */\nexport class RecoverDeletedSecretPoller extends KeyVaultSecretPoller<\n RecoverDeletedSecretPollOperationState,\n SecretProperties\n> {\n constructor(options: KeyVaultSecretPollerOptions) {\n const { vaultUrl, client, name, operationOptions, intervalInMs = 2000, resumeFrom } = options;\n\n let state: RecoverDeletedSecretPollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new RecoverDeletedSecretPollOperation(\n {\n ...state,\n name,\n },\n vaultUrl,\n client,\n operationOptions\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as coreClient from \"@azure/core-client\";\nimport { DeletionRecoveryLevel } from \"./generated/models\";\nimport { ExtendedCommonClientOptions } from \"@azure/core-http-compat\";\n\n/**\n * The latest supported KeyVault service API version\n */\nexport const LATEST_API_VERSION = \"7.3\";\n\n/**\n * The optional parameters accepted by the KeyVault's KeyClient\n */\nexport interface SecretClientOptions extends ExtendedCommonClientOptions {\n /**\n * The accepted versions of the KeyVault's service API.\n */\n serviceVersion?: \"7.0\" | \"7.1\" | \"7.2\" | \"7.3\";\n}\n\n/**\n * An interface representing a KeyVault Secret, with its name, value and {@link SecretProperties}.\n */\nexport interface KeyVaultSecret {\n /**\n * The properties of the secret.\n */\n properties: SecretProperties;\n /**\n * The value of the secret.\n */\n value?: string;\n /**\n * The name of the secret.\n */\n name: string;\n}\n\n/**\n * An interface representing the properties of a {@link KeyVaultSecret}.\n */\nexport interface SecretProperties {\n /**\n * The base URL to the vault.\n */\n vaultUrl: string;\n /**\n * The version of the secret. May be undefined.\n */\n version?: string;\n /**\n * The name of the secret.\n */\n name: string;\n /**\n * The secret id.\n */\n id?: string;\n /**\n * The content type of the secret.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n /**\n * Application specific\n * metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n /**\n * If this is a secret backing a KV certificate, then\n * this field specifies the corresponding key backing the KV certificate.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link SecretProperties.certificateKeyId} instead. `keyId` will always be undefined.\n */\n readonly keyId?: never;\n\n /**\n * If this is a secret backing a KV certificate, then\n * this field specifies the identifier of the corresponding key backing the KV certificate.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly certificateKeyId?: string;\n\n /**\n * True if the secret's lifetime is managed by\n * key vault. If this is a secret backing a certificate, then managed will be\n * true.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly managed?: boolean;\n /**\n * Creation time in UTC.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly createdOn?: Date;\n /**\n * Last updated time in UTC.\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly updatedOn?: Date;\n /**\n * Reflects the deletion\n * recovery level currently in effect for keys in the current vault. If it\n * contains 'Purgeable' the key can be permanently deleted by a privileged\n * user; otherwise, only the system can purge the key, at the end of the\n * retention interval. Possible values include: 'Purgeable',\n * 'Recoverable+Purgeable', 'Recoverable',\n * 'Recoverable+ProtectedSubscription'\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n readonly recoveryLevel?: DeletionRecoveryLevel;\n /**\n * The retention dates of the softDelete data.\n * The value should be `>=7` and `<=90` when softDelete enabled.\n * **NOTE: This property will not be serialized. It can only be populated by the server.**\n */\n recoverableDays?: number;\n}\n\n/**\n * An interface representing a deleted KeyVault Secret.\n */\nexport interface DeletedSecret {\n /**\n * The properties of the secret\n */\n properties: SecretProperties & {\n /**\n * The url of the recovery object, used to\n * identify and recover the deleted secret.\n * @deprecated Please use {@link DeletedSecret.recoveryId}.\n */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled\n * to be purged, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link DeletedSecret.scheduledPurgeDate}.\n */\n scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n * @deprecated Please use {@link DeletedSecret.deletedOn}.\n */\n deletedOn?: Date;\n };\n /**\n * The secret value.\n */\n value?: string;\n /**\n * The name of the secret.\n */\n name: string;\n /**\n * The url of the recovery object, used to\n * identify and recover the deleted secret.\n */\n recoveryId?: string;\n /**\n * The time when the secret is scheduled\n * to be purged, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n scheduledPurgeDate?: Date;\n /**\n * The time when the secret was deleted, in UTC\n * **NOTE: This property will not be serialized. It can only be populated by\n * the server.**\n */\n deletedOn?: Date;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginDeleteSecret} and {@link beginRecoverDeletedKey}.\n */\nexport interface SecretPollerOptions extends coreClient.OperationOptions {\n /**\n * Time between each polling in milliseconds.\n */\n intervalInMs?: number;\n /**\n * A serialized poller, used to resume an existing operation\n */\n resumeFrom?: string;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginDeleteSecret}\n */\nexport interface BeginDeleteSecretOptions extends SecretPollerOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link beginRecoverDeletedSecret}\n */\nexport interface BeginRecoverDeletedSecretOptions extends SecretPollerOptions {}\n\n/**\n * Options for {@link setSecret}.\n */\nexport interface SetSecretOptions extends coreClient.OperationOptions {\n /**\n * Application specific metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n /**\n * Type of the secret value such as a password.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n}\n\n/**\n * Options for {@link updateSecretProperties}.\n */\nexport interface UpdateSecretPropertiesOptions extends coreClient.OperationOptions {\n /**\n * Type of the secret value such as a password.\n */\n contentType?: string;\n /**\n * Determines whether the object is enabled.\n */\n enabled?: boolean;\n /**\n * Not before date in UTC.\n */\n readonly notBefore?: Date;\n /**\n * Expiry date in UTC.\n */\n readonly expiresOn?: Date;\n /**\n * Application specific metadata in the form of key-value pairs.\n */\n tags?: { [propertyName: string]: string };\n}\n\n/**\n * Options for {@link getSecret}.\n */\nexport interface GetSecretOptions extends coreClient.OperationOptions {\n /**\n * The version of the secret to retrieve. If not\n * specified the latest version of the secret will be retrieved.\n */\n version?: string;\n}\n\n/**\n * Options for {@link getDeletedSecret}.\n */\nexport interface GetDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link purgeDeletedSecret}.\n */\nexport interface PurgeDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link backupSecretOptions}.\n */\nexport interface BackupSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link restoreSecretBackup}.\n */\nexport interface RestoreSecretBackupOptions extends coreClient.OperationOptions {}\n\n/**\n * @internal\n * Options for {@link recoverDeletedSecret}.\n */\nexport interface RecoverDeletedSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * @internal\n * Options for {@link deleteSecret}.\n */\nexport interface DeleteSecretOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listPropertiesOfSecretVersions}.\n */\nexport interface ListPropertiesOfSecretVersionsOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listPropertiesOfSecrets}.\n */\nexport interface ListPropertiesOfSecretsOptions extends coreClient.OperationOptions {}\n\n/**\n * Options for {@link listDeletedSecrets}.\n */\nexport interface ListDeletedSecretsOptions extends coreClient.OperationOptions {}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { TokenCredential } from \"@azure/core-auth\";\n\nimport { bearerTokenAuthenticationPolicy } from \"@azure/core-rest-pipeline\";\n\nimport { logger } from \"./log\";\n\nimport \"@azure/core-paging\";\nimport { PageSettings, PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { PollOperationState, PollerLike } from \"@azure/core-lro\";\nimport {\n DeletedSecretBundle,\n DeletionRecoveryLevel,\n GetSecretsOptionalParams,\n KnownDeletionRecoveryLevel,\n SecretBundle,\n} from \"./generated/models\";\nimport { KeyVaultClient } from \"./generated/keyVaultClient\";\nimport { createChallengeCallbacks } from \"../../keyvault-common/src\";\n\nimport { DeleteSecretPoller } from \"./lro/delete/poller\";\nimport { RecoverDeletedSecretPoller } from \"./lro/recover/poller\";\n\nimport {\n BackupSecretOptions,\n BeginDeleteSecretOptions,\n BeginRecoverDeletedSecretOptions,\n DeletedSecret,\n GetDeletedSecretOptions,\n GetSecretOptions,\n KeyVaultSecret,\n LATEST_API_VERSION,\n ListDeletedSecretsOptions,\n ListPropertiesOfSecretVersionsOptions,\n ListPropertiesOfSecretsOptions,\n PurgeDeletedSecretOptions,\n RestoreSecretBackupOptions,\n SecretClientOptions,\n SecretPollerOptions,\n SecretProperties,\n SetSecretOptions,\n UpdateSecretPropertiesOptions,\n} from \"./secretsModels\";\nimport { KeyVaultSecretIdentifier, parseKeyVaultSecretIdentifier } from \"./identifier\";\nimport { getSecretFromSecretBundle } from \"./transformations\";\nimport { tracingClient } from \"./tracing\";\n\nexport {\n SecretClientOptions,\n DeletedSecret,\n DeletionRecoveryLevel,\n KnownDeletionRecoveryLevel,\n GetSecretOptions,\n GetDeletedSecretOptions,\n PurgeDeletedSecretOptions,\n BackupSecretOptions,\n RestoreSecretBackupOptions,\n ListPropertiesOfSecretVersionsOptions,\n ListPropertiesOfSecretsOptions,\n ListDeletedSecretsOptions,\n PagedAsyncIterableIterator,\n PageSettings,\n KeyVaultSecretIdentifier,\n parseKeyVaultSecretIdentifier,\n PollerLike,\n PollOperationState,\n KeyVaultSecret,\n SecretProperties,\n SecretPollerOptions,\n BeginDeleteSecretOptions,\n BeginRecoverDeletedSecretOptions,\n SetSecretOptions,\n UpdateSecretPropertiesOptions,\n logger,\n};\n\n/**\n * The SecretClient provides methods to manage {@link KeyVaultSecret} in\n * the Azure Key Vault. The client supports creating, retrieving, updating,\n * deleting, purging, backing up, restoring and listing KeyVaultSecrets. The\n * client also supports listing {@link DeletedSecret} for a soft-delete enabled Azure\n * Key Vault.\n */\nexport class SecretClient {\n /**\n * The base URL to the vault\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated KeyVault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of SecretClient.\n *\n * Example usage:\n * ```ts\n * import { SecretClient } from \"@azure/keyvault-secrets\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEYVAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new SecretClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - The base URL to the vault.\n * @param credential - An object that implements the `TokenCredential` interface used to authenticate requests to the service. Use the \\@azure/identity package to create a credential that suits your needs.\n * @param pipelineOptions - Pipeline options used to configure Key Vault API requests.\n * Omit this parameter to use the default pipeline configuration.\n */\n constructor(\n vaultUrl: string,\n credential: TokenCredential,\n pipelineOptions: SecretClientOptions = {}\n ) {\n this.vaultUrl = vaultUrl;\n\n const authPolicy = bearerTokenAuthenticationPolicy({\n credential,\n scopes: [],\n challengeCallbacks: createChallengeCallbacks(),\n });\n\n const internalPipelineOptions = {\n ...pipelineOptions,\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\n \"x-ms-keyvault-region\",\n \"x-ms-keyvault-network-info\",\n \"x-ms-keyvault-service-version\",\n ],\n },\n };\n\n this.client = new KeyVaultClient(\n pipelineOptions.serviceVersion || LATEST_API_VERSION,\n internalPipelineOptions\n );\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * The setSecret method adds a secret or secret version to the Azure Key Vault. If the named secret\n * already exists, Azure Key Vault creates a new version of that secret.\n * This operation requires the secrets/set permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n * ```\n * Adds a secret in a specified key vault.\n * @param secretName - The name of the secret.\n * @param value - The value of the secret.\n * @param options - The optional parameters.\n */\n public setSecret(\n secretName: string,\n value: string,\n options: SetSecretOptions = {}\n ): Promise<KeyVaultSecret> {\n let unflattenedOptions = {};\n\n if (options) {\n const { enabled, notBefore, expiresOn: expires, ...remainingOptions } = options;\n unflattenedOptions = {\n ...remainingOptions,\n secretAttributes: {\n enabled,\n notBefore,\n expires,\n },\n };\n }\n return tracingClient.withSpan(\n \"SecretClient.setSecret\",\n unflattenedOptions,\n async (updatedOptions) => {\n const response = await this.client.setSecret(\n this.vaultUrl,\n secretName,\n value,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * Deletes a secret stored in Azure Key Vault.\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the secret is deleted.\n *\n * This operation requires the secrets/delete permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n *\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n *\n * // Serializing the poller\n * const serialized = deletePoller.toString();\n *\n * // A new poller can be created with:\n * // const newPoller = await client.beginDeleteSecret(\"MySecretName\", { resumeFrom: serialized });\n *\n * // Waiting until it's done\n * const deletedSecret = await deletePoller.pollUntilDone();\n * console.log(deletedSecret);\n * ```\n * Deletes a secret from a specified key vault.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public async beginDeleteSecret(\n name: string,\n options: BeginDeleteSecretOptions = {}\n ): Promise<PollerLike<PollOperationState<DeletedSecret>, DeletedSecret>> {\n const poller = new DeleteSecretPoller({\n name,\n client: this.client,\n vaultUrl: this.vaultUrl,\n ...options,\n operationOptions: options,\n });\n // This will initialize the poller's operation (the deletion of the secret).\n await poller.poll();\n return poller;\n }\n\n /**\n * The updateSecret method changes specified attributes of an existing stored secret. Properties that\n * are not specified in the request are left unchanged. The value of a secret itself cannot be\n * changed. This operation requires the secrets/set permission.\n *\n * Example usage:\n * ```ts\n * let secretName = \"MySecretName\";\n * let client = new SecretClient(url, credentials);\n * let secret = await client.getSecret(secretName);\n * await client.updateSecretProperties(secretName, secret.properties.version, { enabled: false });\n * ```\n * Updates the attributes associated with a specified secret in a given key vault.\n * @param secretName - The name of the secret.\n * @param secretVersion - The version of the secret.\n * @param options - The optional parameters.\n */\n public async updateSecretProperties(\n secretName: string,\n secretVersion: string,\n options: UpdateSecretPropertiesOptions = {}\n ): Promise<SecretProperties> {\n let unflattenedOptions = {};\n if (options) {\n const { enabled, notBefore, expiresOn: expires, ...remainingOptions } = options;\n unflattenedOptions = {\n ...remainingOptions,\n secretAttributes: {\n enabled,\n notBefore,\n expires,\n },\n };\n }\n\n return tracingClient.withSpan(\n \"SecretClient.updateSecretProperties\",\n unflattenedOptions,\n async (updatedOptions) => {\n const response = await this.client.updateSecret(\n this.vaultUrl,\n secretName,\n secretVersion,\n updatedOptions\n );\n return getSecretFromSecretBundle(response).properties;\n }\n );\n }\n\n /**\n * The getSecret method is applicable to any secret stored in Azure Key Vault. This operation requires\n * the secrets/get permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let secret = await client.getSecret(\"MySecretName\");\n * ```\n * Get a specified secret from a given key vault.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public getSecret(secretName: string, options: GetSecretOptions = {}): Promise<KeyVaultSecret> {\n return tracingClient.withSpan(\"SecretClient.getSecret\", options, async (updatedOptions) => {\n const response = await this.client.getSecret(\n this.vaultUrl,\n secretName,\n options && options.version ? options.version : \"\",\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n });\n }\n\n /**\n * The getDeletedSecret method returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * await client.getDeletedSecret(\"MyDeletedSecret\");\n * ```\n * Gets the specified deleted secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public getDeletedSecret(\n secretName: string,\n options: GetDeletedSecretOptions = {}\n ): Promise<DeletedSecret> {\n return tracingClient.withSpan(\n \"SecretClient.getDeletedSecret\",\n options,\n async (updatedOptions) => {\n const response = await this.client.getDeletedSecret(\n this.vaultUrl,\n secretName,\n updatedOptions\n );\n return getSecretFromSecretBundle(response);\n }\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation\n * requires the secrets/purge permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n * await deletePoller.pollUntilDone();\n * await client.purgeDeletedSecret(\"MySecretName\");\n * ```\n * Permanently deletes the specified secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public purgeDeletedSecret(\n secretName: string,\n options: PurgeDeletedSecretOptions = {}\n ): Promise<void> {\n return tracingClient.withSpan(\n \"SecretClient.purgeDeletedSecret\",\n options,\n async (updatedOptions) => {\n await this.client.purgeDeletedSecret(this.vaultUrl, secretName, updatedOptions);\n }\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault.\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the secret is recovered.\n *\n * This operation requires the secrets/recover permission.\n *\n * Example usage:\n * ```ts\n * const client = new SecretClient(url, credentials);\n * await client.setSecret(\"MySecretName\", \"ABC123\");\n *\n * const deletePoller = await client.beginDeleteSecret(\"MySecretName\");\n * await deletePoller.pollUntilDone();\n *\n * const recoverPoller = await client.beginRecoverDeletedSecret(\"MySecretName\");\n *\n * // Serializing the poller\n * const serialized = recoverPoller.toString();\n *\n * // A new poller can be created with:\n * // const newPoller = await client.beginRecoverDeletedSecret(\"MySecretName\", { resumeFrom: serialized });\n *\n * // Waiting until it's done\n * const deletedSecret = await recoverPoller.pollUntilDone();\n * console.log(deletedSecret);\n * ```\n * Recovers the deleted secret to the latest version.\n * @param secretName - The name of the deleted secret.\n * @param options - The optional parameters.\n */\n public async beginRecoverDeletedSecret(\n name: string,\n options: BeginRecoverDeletedSecretOptions = {}\n ): Promise<PollerLike<PollOperationState<SecretProperties>, SecretProperties>> {\n const poller = new RecoverDeletedSecretPoller({\n name,\n client: this.client,\n vaultUrl: this.vaultUrl,\n ...options,\n operationOptions: options,\n });\n\n // This will initialize the poller's operation (the recovery of the deleted secret).\n await poller.poll();\n return poller;\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let backupResult = await client.backupSecret(\"MySecretName\");\n * ```\n * Backs up the specified secret.\n * @param secretName - The name of the secret.\n * @param options - The optional parameters.\n */\n public backupSecret(\n secretName: string,\n options: BackupSecretOptions = {}\n ): Promise<Uint8Array | undefined> {\n return tracingClient.withSpan(\"SecretClient.backupSecret\", options, async (updatedOptions) => {\n const response = await this.client.backupSecret(this.vaultUrl, secretName, updatedOptions);\n\n return response.value;\n });\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * let mySecretBundle = await client.backupSecret(\"MySecretName\");\n * // ...\n * await client.restoreSecretBackup(mySecretBundle);\n * ```\n * Restores a backed up secret to a vault.\n * @param secretBundleBackup - The backup blob associated with a secret bundle.\n * @param options - The optional parameters.\n */\n public restoreSecretBackup(\n secretBundleBackup: Uint8Array,\n options: RestoreSecretBackupOptions = {}\n ): Promise<SecretProperties> {\n return tracingClient.withSpan(\n \"SecretClient.restoreSecretBackup\",\n options,\n async (updatedOptions) => {\n const response = await this.client.restoreSecret(\n this.vaultUrl,\n secretBundleBackup,\n updatedOptions\n );\n return getSecretFromSecretBundle(response).properties;\n }\n );\n }\n\n /**\n * Deals with the pagination of {@link listPropertiesOfSecretVersions}.\n * @param name - The name of the KeyVault Secret.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretVersionsPage(\n secretName: string,\n continuationState: PageSettings,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): AsyncIterableIterator<SecretProperties[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretVersionsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getSecretVersions(this.vaultUrl, secretName, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretVersionsPage\",\n options,\n (updatedOptions) =>\n this.client.getSecretVersions(\n continuationState.continuationToken!,\n secretName,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listPropertiesOfSecretVersions}.\n * @param name - The name of the KeyVault Secret.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretVersionsAll(\n secretName: string,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): AsyncIterableIterator<SecretProperties> {\n const f = {};\n\n for await (const page of this.listPropertiesOfSecretVersionsPage(secretName, f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates all versions of the given secret in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const secretProperties of client.listPropertiesOfSecretVersions(\"MySecretName\")) {\n * const secret = await client.getSecret(secretProperties.name);\n * console.log(\"secret version: \", secret);\n * }\n * ```\n * @param secretName - Name of the secret to fetch versions for.\n * @param options - The optional parameters.\n */\n public listPropertiesOfSecretVersions(\n secretName: string,\n options: ListPropertiesOfSecretVersionsOptions = {}\n ): PagedAsyncIterableIterator<SecretProperties> {\n const iter = this.listPropertiesOfSecretVersionsAll(secretName, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) =>\n this.listPropertiesOfSecretVersionsPage(secretName, settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listPropertiesOfSecrets}.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretsPage(\n continuationState: PageSettings,\n options: ListPropertiesOfSecretsOptions = {}\n ): AsyncIterableIterator<SecretProperties[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getSecrets(this.vaultUrl, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listPropertiesOfSecretsPage\",\n options,\n (updatedOptions) =>\n this.client.getSecretsNext(\n this.vaultUrl,\n continuationState.continuationToken!,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(\n (bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle).properties\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listPropertiesOfSecrets}.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listPropertiesOfSecretsAll(\n options: ListPropertiesOfSecretsOptions = {}\n ): AsyncIterableIterator<SecretProperties> {\n const f = {};\n\n for await (const page of this.listPropertiesOfSecretsPage(f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates the latest version of all secrets in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const secretProperties of client.listPropertiesOfSecrets()) {\n * const secret = await client.getSecret(secretProperties.name);\n * console.log(\"secret: \", secret);\n * }\n * ```\n * List all secrets in the vault.\n * @param options - The optional parameters.\n */\n public listPropertiesOfSecrets(\n options: ListPropertiesOfSecretsOptions = {}\n ): PagedAsyncIterableIterator<SecretProperties> {\n const iter = this.listPropertiesOfSecretsAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => this.listPropertiesOfSecretsPage(settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listDeletedSecrets}.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listDeletedSecretsPage(\n continuationState: PageSettings,\n options: ListDeletedSecretsOptions = {}\n ): AsyncIterableIterator<DeletedSecret[]> {\n if (continuationState.continuationToken == null) {\n const optionsComplete: GetSecretsOptionalParams = {\n maxresults: continuationState.maxPageSize,\n ...options,\n };\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.listDeletedSecretsPage\",\n optionsComplete,\n (updatedOptions) => this.client.getDeletedSecrets(this.vaultUrl, updatedOptions)\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map((bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle)\n );\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"SecretClient.lisDeletedSecretsPage\",\n options,\n (updatedOptions) =>\n this.client.getDeletedSecretsNext(\n this.vaultUrl,\n continuationState.continuationToken!,\n updatedOptions\n )\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map((bundle: SecretBundle | DeletedSecretBundle) =>\n getSecretFromSecretBundle(bundle)\n );\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listDeletedSecrets}.\n * @param options - Optional parameters for the underlying HTTP request.\n */\n private async *listDeletedSecretsAll(\n options: ListDeletedSecretsOptions = {}\n ): AsyncIterableIterator<DeletedSecret> {\n const f = {};\n\n for await (const page of this.listDeletedSecretsPage(f, options)) {\n for (const item of page) {\n yield item;\n }\n }\n }\n\n /**\n * Iterates the deleted secrets in the vault. The full secret identifier and attributes are provided\n * in the response. No values are returned for the secrets. This operations requires the secrets/list permission.\n *\n * Example usage:\n * ```ts\n * let client = new SecretClient(url, credentials);\n * for await (const deletedSecret of client.listDeletedSecrets()) {\n * console.log(\"deleted secret: \", deletedSecret);\n * }\n * ```\n * List all secrets in the vault.\n * @param options - The optional parameters.\n */\n public listDeletedSecrets(\n options: ListDeletedSecretsOptions = {}\n ): PagedAsyncIterableIterator<DeletedSecret> {\n const iter = this.listDeletedSecretsAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: PageSettings = {}) => this.listDeletedSecretsPage(settings, options),\n };\n }\n}\n"],"names":["createClientLogger","KnownDeletionRecoveryLevel","coreHttpCompat","coreRestPipeline","coreClient","Mappers.SecretBundle","Mappers.KeyVaultError","Mappers.SecretSetParameters","Parameters.apiVersion","Parameters.vaultBaseUrl","Parameters.secretName","Parameters.contentType","Parameters.accept","Mappers.DeletedSecretBundle","Parameters.secretName1","Mappers.SecretUpdateParameters","Parameters.secretVersion","Mappers.SecretListResult","Parameters.maxresults","Mappers.DeletedSecretListResult","Mappers.BackupSecretResult","Mappers.SecretRestoreParameters","Parameters.nextLink","url","Poller","delay","createTracingClient","bearerTokenAuthenticationPolicy","__rest","__await","__asyncValues"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAW,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/constants.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAW,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport const SDK_VERSION: string = \"4.5.0\";\n"]}
|
|
@@ -29,7 +29,7 @@ export class KeyVaultClient extends coreHttpCompat.ExtendedServiceClient {
|
|
|
29
29
|
const defaults = {
|
|
30
30
|
requestContentType: "application/json; charset=utf-8"
|
|
31
31
|
};
|
|
32
|
-
const packageDetails = `azsdk-js-keyvault-secrets/4.5.0
|
|
32
|
+
const packageDetails = `azsdk-js-keyvault-secrets/4.5.0`;
|
|
33
33
|
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
34
34
|
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
|
|
35
35
|
: `${packageDetails}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyVaultClient.js","sourceRoot":"","sources":["../../../../src/generated/keyVaultClient.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as Parameters from \"./models/parameters\";\nimport * as Mappers from \"./models/mappers\";\nimport {\n ApiVersion73,\n KeyVaultClientOptionalParams,\n SetSecretOptionalParams,\n SetSecretResponse,\n DeleteSecretOptionalParams,\n DeleteSecretResponse,\n UpdateSecretOptionalParams,\n UpdateSecretResponse,\n GetSecretOptionalParams,\n GetSecretResponse,\n GetSecretsOptionalParams,\n GetSecretsResponse,\n GetSecretVersionsOptionalParams,\n GetSecretVersionsResponse,\n GetDeletedSecretsOptionalParams,\n GetDeletedSecretsResponse,\n GetDeletedSecretOptionalParams,\n GetDeletedSecretResponse,\n PurgeDeletedSecretOptionalParams,\n RecoverDeletedSecretOptionalParams,\n RecoverDeletedSecretResponse,\n BackupSecretOptionalParams,\n BackupSecretResponse,\n RestoreSecretOptionalParams,\n RestoreSecretResponse,\n GetSecretsNextOptionalParams,\n GetSecretsNextResponse,\n GetSecretVersionsNextOptionalParams,\n GetSecretVersionsNextResponse,\n GetDeletedSecretsNextOptionalParams,\n GetDeletedSecretsNextResponse\n} from \"./models\";\n\n/** @internal */\nexport class KeyVaultClient extends coreHttpCompat.ExtendedServiceClient {\n apiVersion: ApiVersion73;\n\n /**\n * Initializes a new instance of the KeyVaultClient class.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n apiVersion: ApiVersion73,\n options?: KeyVaultClientOptionalParams\n ) {\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: KeyVaultClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-keyvault-secrets/4.5.0-beta.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint ?? options.baseUri ?? \"{vaultBaseUrl}\"\n };\n super(optionsWithDefaults);\n\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n if (!bearerTokenAuthenticationPolicyFound) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n scopes: `${optionsWithDefaults.baseUri}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n }\n // Parameter assignments\n this.apiVersion = apiVersion;\n }\n\n /**\n * The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure\n * Key Vault creates a new version of that secret. This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param value The value of the secret.\n * @param options The options parameters.\n */\n setSecret(\n vaultBaseUrl: string,\n secretName: string,\n value: string,\n options?: SetSecretOptionalParams\n ): Promise<SetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, value, options },\n setSecretOperationSpec\n );\n }\n\n /**\n * The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an\n * individual version of a secret. This operation requires the secrets/delete permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n deleteSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: DeleteSecretOptionalParams\n ): Promise<DeleteSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n deleteSecretOperationSpec\n );\n }\n\n /**\n * The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are\n * not specified in the request are left unchanged. The value of a secret itself cannot be changed.\n * This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret.\n * @param options The options parameters.\n */\n updateSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: UpdateSecretOptionalParams\n ): Promise<UpdateSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n updateSecretOperationSpec\n );\n }\n\n /**\n * The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the\n * secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret. This URI fragment is optional. If not specified, the\n * latest version of the secret is returned.\n * @param options The options parameters.\n */\n getSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: GetSecretOptionalParams\n ): Promise<GetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n getSecretOperationSpec\n );\n }\n\n /**\n * The Get Secrets operation is applicable to the entire vault. However, only the base secret\n * identifier and its attributes are provided in the response. Individual secret versions are not\n * listed in the response. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getSecrets(\n vaultBaseUrl: string,\n options?: GetSecretsOptionalParams\n ): Promise<GetSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getSecretsOperationSpec\n );\n }\n\n /**\n * The full secret identifier and attributes are provided in the response. No values are returned for\n * the secrets. This operations requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getSecretVersions(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetSecretVersionsOptionalParams\n ): Promise<GetSecretVersionsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getSecretVersionsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for\n * soft-delete. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getDeletedSecrets(\n vaultBaseUrl: string,\n options?: GetDeletedSecretsOptionalParams\n ): Promise<GetDeletedSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getDeletedSecretsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secret operation returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetDeletedSecretOptionalParams\n ): Promise<GetDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getDeletedSecretOperationSpec\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires\n * the secrets/purge permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n purgeDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: PurgeDeletedSecretOptionalParams\n ): Promise<void> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n purgeDeletedSecretOperationSpec\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault. This operation can only be performed on a\n * soft-delete enabled vault. This operation requires the secrets/recover permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the deleted secret.\n * @param options The options parameters.\n */\n recoverDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: RecoverDeletedSecretOptionalParams\n ): Promise<RecoverDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n recoverDeletedSecretOperationSpec\n );\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n backupSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: BackupSecretOptionalParams\n ): Promise<BackupSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n backupSecretOperationSpec\n );\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretBundleBackup The backup blob associated with a secret bundle.\n * @param options The options parameters.\n */\n restoreSecret(\n vaultBaseUrl: string,\n secretBundleBackup: Uint8Array,\n options?: RestoreSecretOptionalParams\n ): Promise<RestoreSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretBundleBackup, options },\n restoreSecretOperationSpec\n );\n }\n\n /**\n * GetSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetSecrets method.\n * @param options The options parameters.\n */\n getSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetSecretsNextOptionalParams\n ): Promise<GetSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getSecretsNextOperationSpec\n );\n }\n\n /**\n * GetSecretVersionsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param nextLink The nextLink from the previous successful call to the GetSecretVersions method.\n * @param options The options parameters.\n */\n getSecretVersionsNext(\n vaultBaseUrl: string,\n secretName: string,\n nextLink: string,\n options?: GetSecretVersionsNextOptionalParams\n ): Promise<GetSecretVersionsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, nextLink, options },\n getSecretVersionsNextOperationSpec\n );\n }\n\n /**\n * GetDeletedSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetDeletedSecrets method.\n * @param options The options parameters.\n */\n getDeletedSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetDeletedSecretsNextOptionalParams\n ): Promise<GetDeletedSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getDeletedSecretsNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst setSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n value: [\"value\"],\n tags: [\"options\", \"tags\"],\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"]\n },\n mapper: { ...Mappers.SecretSetParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst deleteSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"],\n tags: [\"options\", \"tags\"]\n },\n mapper: { ...Mappers.SecretUpdateParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/versions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst purgeDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst recoverDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}/recover\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst backupSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/backup\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BackupSecretResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst restoreSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/restore\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: { secretBundleBackup: [\"secretBundleBackup\"] },\n mapper: { ...Mappers.SecretRestoreParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n"]}
|
|
1
|
+
{"version":3,"file":"keyVaultClient.js","sourceRoot":"","sources":["../../../../src/generated/keyVaultClient.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,gBAAgB,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAmC5C,gBAAgB;AAChB,MAAM,OAAO,cAAe,SAAQ,cAAc,CAAC,qBAAqB;IAGtE;;;;OAIG;IACH,YACE,UAAwB,EACxB,OAAsC;;QAEtC,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QAED,0CAA0C;QAC1C,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QACD,MAAM,QAAQ,GAAiC;YAC7C,kBAAkB,EAAE,iCAAiC;SACtD,CAAC;QAEF,MAAM,cAAc,GAAG,iCAAiC,CAAC;QACzD,MAAM,eAAe,GACnB,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe;YAClE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,eAAe,IAAI,cAAc,EAAE;YACjE,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC;QAE1B,MAAM,mBAAmB,iDACpB,QAAQ,GACR,OAAO,KACV,gBAAgB,EAAE;gBAChB,eAAe;aAChB,EACD,OAAO,EAAE,MAAA,MAAA,OAAO,CAAC,QAAQ,mCAAI,OAAO,CAAC,OAAO,mCAAI,gBAAgB,GACjE,CAAC;QACF,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE3B,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,KAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YACzE,MAAM,gBAAgB,GAAsC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YAClG,MAAM,oCAAoC,GAAG,gBAAgB,CAAC,IAAI,CAChE,CAAC,cAAc,EAAE,EAAE,CACjB,cAAc,CAAC,IAAI;gBACnB,gBAAgB,CAAC,mCAAmC,CACvD,CAAC;YACF,IAAI,CAAC,oCAAoC,EAAE;gBACzC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;oBACzB,IAAI,EAAE,gBAAgB,CAAC,mCAAmC;iBAC3D,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,SAAS,CACrB,gBAAgB,CAAC,+BAA+B,CAAC;oBAC/C,MAAM,EAAE,GAAG,mBAAmB,CAAC,OAAO,WAAW;oBACjD,kBAAkB,EAAE;wBAClB,2BAA2B,EACzB,UAAU,CAAC,gCAAgC;qBAC9C;iBACF,CAAC,CACH,CAAC;aACH;SACF;QACD,wBAAwB;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CACP,YAAoB,EACpB,UAAkB,EAClB,KAAa,EACb,OAAiC;QAEjC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAC5C,sBAAsB,CACvB,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CACV,YAAoB,EACpB,UAAkB,EAClB,OAAoC;QAEpC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CACV,YAAoB,EACpB,UAAkB,EAClB,aAAqB,EACrB,OAAoC;QAEpC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,EACpD,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,CACP,YAAoB,EACpB,UAAkB,EAClB,aAAqB,EACrB,OAAiC;QAEjC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,EACpD,sBAAsB,CACvB,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CACR,YAAoB,EACpB,OAAkC;QAElC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,OAAO,EAAE,EACzB,uBAAuB,CACxB,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,YAAoB,EACpB,UAAkB,EAClB,OAAyC;QAEzC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,8BAA8B,CAC/B,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CACf,YAAoB,EACpB,OAAyC;QAEzC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,OAAO,EAAE,EACzB,8BAA8B,CAC/B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CACd,YAAoB,EACpB,UAAkB,EAClB,OAAwC;QAExC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,kBAAkB,CAChB,YAAoB,EACpB,UAAkB,EAClB,OAA0C;QAE1C,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,+BAA+B,CAChC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAClB,YAAoB,EACpB,UAAkB,EAClB,OAA4C;QAE5C,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,iCAAiC,CAClC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,YAAY,CACV,YAAoB,EACpB,UAAkB,EAClB,OAAoC;QAEpC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,EACrC,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CACX,YAAoB,EACpB,kBAA8B,EAC9B,OAAqC;QAErC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAC7C,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,cAAc,CACZ,YAAoB,EACpB,QAAgB,EAChB,OAAsC;QAEtC,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,EACnC,2BAA2B,CAC5B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CACnB,YAAoB,EACpB,UAAkB,EAClB,QAAgB,EAChB,OAA6C;QAE7C,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,EAC/C,kCAAkC,CACnC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CACnB,YAAoB,EACpB,QAAgB,EAChB,OAA6C;QAE7C,OAAO,IAAI,CAAC,oBAAoB,CAC9B,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,EACnC,kCAAkC,CACnC,CAAC;IACJ,CAAC;CACF;AACD,2BAA2B;AAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3E,MAAM,sBAAsB,GAA6B;IACvD,IAAI,EAAE,wBAAwB;IAC9B,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,WAAW,EAAE;QACX,aAAa,EAAE;YACb,KAAK,EAAE,CAAC,OAAO,CAAC;YAChB,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;YACzB,WAAW,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;YACvC,gBAAgB,EAAE,CAAC,SAAS,EAAE,kBAAkB,CAAC;SAClD;QACD,MAAM,kCAAO,OAAO,CAAC,mBAAmB,KAAE,QAAQ,EAAE,IAAI,GAAE;KAC3D;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,gBAAgB,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,MAAM;IACjB,UAAU;CACX,CAAC;AACF,MAAM,yBAAyB,GAA6B;IAC1D,IAAI,EAAE,wBAAwB;IAC9B,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,mBAAmB;SACxC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,yBAAyB,GAA6B;IAC1D,IAAI,EAAE,yCAAyC;IAC/C,UAAU,EAAE,OAAO;IACnB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,WAAW,EAAE;QACX,aAAa,EAAE;YACb,WAAW,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;YACvC,gBAAgB,EAAE,CAAC,SAAS,EAAE,kBAAkB,CAAC;YACjD,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B;QACD,MAAM,kCAAO,OAAO,CAAC,sBAAsB,KAAE,QAAQ,EAAE,IAAI,GAAE;KAC9D;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE;QACb,UAAU,CAAC,YAAY;QACvB,UAAU,CAAC,WAAW;QACtB,UAAU,CAAC,aAAa;KACzB;IACD,gBAAgB,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,MAAM;IACjB,UAAU;CACX,CAAC;AACF,MAAM,sBAAsB,GAA6B;IACvD,IAAI,EAAE,yCAAyC;IAC/C,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE;QACb,UAAU,CAAC,YAAY;QACvB,UAAU,CAAC,WAAW;QACtB,UAAU,CAAC,aAAa;KACzB;IACD,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,uBAAuB,GAA6B;IACxD,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,gBAAgB;SACrC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,8BAA8B,GAA6B;IAC/D,IAAI,EAAE,iCAAiC;IACvC,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,gBAAgB;SACrC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,8BAA8B,GAA6B;IAC/D,IAAI,EAAE,iBAAiB;IACvB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,uBAAuB;SAC5C;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,6BAA6B,GAA6B;IAC9D,IAAI,EAAE,+BAA+B;IACrC,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,mBAAmB;SACxC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,+BAA+B,GAA6B;IAChE,IAAI,EAAE,+BAA+B;IACrC,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE;QACT,GAAG,EAAE,EAAE;QACP,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,iCAAiC,GAA6B;IAClE,IAAI,EAAE,uCAAuC;IAC7C,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,yBAAyB,GAA6B;IAC1D,IAAI,EAAE,+BAA+B;IACrC,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,kBAAkB;SACvC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC;IAChE,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,0BAA0B,GAA6B;IAC3D,IAAI,EAAE,kBAAkB;IACxB,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,WAAW,EAAE;QACX,aAAa,EAAE,EAAE,kBAAkB,EAAE,CAAC,oBAAoB,CAAC,EAAE;QAC7D,MAAM,kCAAO,OAAO,CAAC,uBAAuB,KAAE,QAAQ,EAAE,IAAI,GAAE;KAC/D;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC,gBAAgB,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,MAAM;IACjB,UAAU;CACX,CAAC;AACF,MAAM,2BAA2B,GAA6B;IAC5D,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,gBAAgB;SACrC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC7D,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,kCAAkC,GAA6B;IACnE,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,gBAAgB;SACrC;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE;QACb,UAAU,CAAC,YAAY;QACvB,UAAU,CAAC,WAAW;QACtB,UAAU,CAAC,QAAQ;KACpB;IACD,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC;AACF,MAAM,kCAAkC,GAA6B;IACnE,IAAI,EAAE,YAAY;IAClB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,uBAAuB;SAC5C;QACD,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;KACF;IACD,eAAe,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAC/D,aAAa,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC;IAC7D,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;IACrC,UAAU;CACX,CAAC","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as Parameters from \"./models/parameters\";\nimport * as Mappers from \"./models/mappers\";\nimport {\n ApiVersion73,\n KeyVaultClientOptionalParams,\n SetSecretOptionalParams,\n SetSecretResponse,\n DeleteSecretOptionalParams,\n DeleteSecretResponse,\n UpdateSecretOptionalParams,\n UpdateSecretResponse,\n GetSecretOptionalParams,\n GetSecretResponse,\n GetSecretsOptionalParams,\n GetSecretsResponse,\n GetSecretVersionsOptionalParams,\n GetSecretVersionsResponse,\n GetDeletedSecretsOptionalParams,\n GetDeletedSecretsResponse,\n GetDeletedSecretOptionalParams,\n GetDeletedSecretResponse,\n PurgeDeletedSecretOptionalParams,\n RecoverDeletedSecretOptionalParams,\n RecoverDeletedSecretResponse,\n BackupSecretOptionalParams,\n BackupSecretResponse,\n RestoreSecretOptionalParams,\n RestoreSecretResponse,\n GetSecretsNextOptionalParams,\n GetSecretsNextResponse,\n GetSecretVersionsNextOptionalParams,\n GetSecretVersionsNextResponse,\n GetDeletedSecretsNextOptionalParams,\n GetDeletedSecretsNextResponse\n} from \"./models\";\n\n/** @internal */\nexport class KeyVaultClient extends coreHttpCompat.ExtendedServiceClient {\n apiVersion: ApiVersion73;\n\n /**\n * Initializes a new instance of the KeyVaultClient class.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n apiVersion: ApiVersion73,\n options?: KeyVaultClientOptionalParams\n ) {\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: KeyVaultClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-keyvault-secrets/4.5.0`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint ?? options.baseUri ?? \"{vaultBaseUrl}\"\n };\n super(optionsWithDefaults);\n\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n if (!bearerTokenAuthenticationPolicyFound) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n scopes: `${optionsWithDefaults.baseUri}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n }\n // Parameter assignments\n this.apiVersion = apiVersion;\n }\n\n /**\n * The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure\n * Key Vault creates a new version of that secret. This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param value The value of the secret.\n * @param options The options parameters.\n */\n setSecret(\n vaultBaseUrl: string,\n secretName: string,\n value: string,\n options?: SetSecretOptionalParams\n ): Promise<SetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, value, options },\n setSecretOperationSpec\n );\n }\n\n /**\n * The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an\n * individual version of a secret. This operation requires the secrets/delete permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n deleteSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: DeleteSecretOptionalParams\n ): Promise<DeleteSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n deleteSecretOperationSpec\n );\n }\n\n /**\n * The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are\n * not specified in the request are left unchanged. The value of a secret itself cannot be changed.\n * This operation requires the secrets/set permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret.\n * @param options The options parameters.\n */\n updateSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: UpdateSecretOptionalParams\n ): Promise<UpdateSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n updateSecretOperationSpec\n );\n }\n\n /**\n * The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the\n * secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param secretVersion The version of the secret. This URI fragment is optional. If not specified, the\n * latest version of the secret is returned.\n * @param options The options parameters.\n */\n getSecret(\n vaultBaseUrl: string,\n secretName: string,\n secretVersion: string,\n options?: GetSecretOptionalParams\n ): Promise<GetSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, secretVersion, options },\n getSecretOperationSpec\n );\n }\n\n /**\n * The Get Secrets operation is applicable to the entire vault. However, only the base secret\n * identifier and its attributes are provided in the response. Individual secret versions are not\n * listed in the response. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getSecrets(\n vaultBaseUrl: string,\n options?: GetSecretsOptionalParams\n ): Promise<GetSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getSecretsOperationSpec\n );\n }\n\n /**\n * The full secret identifier and attributes are provided in the response. No values are returned for\n * the secrets. This operations requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getSecretVersions(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetSecretVersionsOptionalParams\n ): Promise<GetSecretVersionsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getSecretVersionsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for\n * soft-delete. This operation requires the secrets/list permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param options The options parameters.\n */\n getDeletedSecrets(\n vaultBaseUrl: string,\n options?: GetDeletedSecretsOptionalParams\n ): Promise<GetDeletedSecretsResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, options },\n getDeletedSecretsOperationSpec\n );\n }\n\n /**\n * The Get Deleted Secret operation returns the specified deleted secret along with its attributes.\n * This operation requires the secrets/get permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n getDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: GetDeletedSecretOptionalParams\n ): Promise<GetDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n getDeletedSecretOperationSpec\n );\n }\n\n /**\n * The purge deleted secret operation removes the secret permanently, without the possibility of\n * recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires\n * the secrets/purge permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n purgeDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: PurgeDeletedSecretOptionalParams\n ): Promise<void> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n purgeDeletedSecretOperationSpec\n );\n }\n\n /**\n * Recovers the deleted secret in the specified vault. This operation can only be performed on a\n * soft-delete enabled vault. This operation requires the secrets/recover permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the deleted secret.\n * @param options The options parameters.\n */\n recoverDeletedSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: RecoverDeletedSecretOptionalParams\n ): Promise<RecoverDeletedSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n recoverDeletedSecretOperationSpec\n );\n }\n\n /**\n * Requests that a backup of the specified secret be downloaded to the client. All versions of the\n * secret will be downloaded. This operation requires the secrets/backup permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param options The options parameters.\n */\n backupSecret(\n vaultBaseUrl: string,\n secretName: string,\n options?: BackupSecretOptionalParams\n ): Promise<BackupSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, options },\n backupSecretOperationSpec\n );\n }\n\n /**\n * Restores a backed up secret, and all its versions, to a vault. This operation requires the\n * secrets/restore permission.\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretBundleBackup The backup blob associated with a secret bundle.\n * @param options The options parameters.\n */\n restoreSecret(\n vaultBaseUrl: string,\n secretBundleBackup: Uint8Array,\n options?: RestoreSecretOptionalParams\n ): Promise<RestoreSecretResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretBundleBackup, options },\n restoreSecretOperationSpec\n );\n }\n\n /**\n * GetSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetSecrets method.\n * @param options The options parameters.\n */\n getSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetSecretsNextOptionalParams\n ): Promise<GetSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getSecretsNextOperationSpec\n );\n }\n\n /**\n * GetSecretVersionsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param secretName The name of the secret.\n * @param nextLink The nextLink from the previous successful call to the GetSecretVersions method.\n * @param options The options parameters.\n */\n getSecretVersionsNext(\n vaultBaseUrl: string,\n secretName: string,\n nextLink: string,\n options?: GetSecretVersionsNextOptionalParams\n ): Promise<GetSecretVersionsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, secretName, nextLink, options },\n getSecretVersionsNextOperationSpec\n );\n }\n\n /**\n * GetDeletedSecretsNext\n * @param vaultBaseUrl The vault name, for example https://myvault.vault.azure.net.\n * @param nextLink The nextLink from the previous successful call to the GetDeletedSecrets method.\n * @param options The options parameters.\n */\n getDeletedSecretsNext(\n vaultBaseUrl: string,\n nextLink: string,\n options?: GetDeletedSecretsNextOptionalParams\n ): Promise<GetDeletedSecretsNextResponse> {\n return this.sendOperationRequest(\n { vaultBaseUrl, nextLink, options },\n getDeletedSecretsNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst setSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n value: [\"value\"],\n tags: [\"options\", \"tags\"],\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"]\n },\n mapper: { ...Mappers.SecretSetParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst deleteSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: {\n contentType: [\"options\", \"contentType\"],\n secretAttributes: [\"options\", \"secretAttributes\"],\n tags: [\"options\", \"tags\"]\n },\n mapper: { ...Mappers.SecretUpdateParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/{secret-version}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.secretVersion\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/versions\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst purgeDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst recoverDeletedSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/deletedsecrets/{secret-name}/recover\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst backupSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/{secret-name}/backup\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.BackupSecretResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.secretName1],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst restoreSecretOperationSpec: coreClient.OperationSpec = {\n path: \"/secrets/restore\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretBundle\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n requestBody: {\n parameterPath: { secretBundleBackup: [\"secretBundleBackup\"] },\n mapper: { ...Mappers.SecretRestoreParameters, required: true }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.vaultBaseUrl],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer\n};\nconst getSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getSecretVersionsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [\n Parameters.vaultBaseUrl,\n Parameters.secretName1,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getDeletedSecretsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.DeletedSecretListResult\n },\n default: {\n bodyMapper: Mappers.KeyVaultError\n }\n },\n queryParameters: [Parameters.apiVersion, Parameters.maxresults],\n urlParameters: [Parameters.vaultBaseUrl, Parameters.nextLink],\n headerParameters: [Parameters.accept],\n serializer\n};\n"]}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@azure/keyvault-secrets",
|
|
3
3
|
"sdk-type": "client",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
|
-
"version": "4.5.0
|
|
5
|
+
"version": "4.5.0",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"description": "Isomorphic client library for Azure KeyVault's secrets.",
|
|
8
8
|
"homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/README.md",
|
|
@@ -71,8 +71,8 @@
|
|
|
71
71
|
"//metadata": {
|
|
72
72
|
"constantPaths": [
|
|
73
73
|
{
|
|
74
|
-
"path": "src/generated/
|
|
75
|
-
"prefix": "
|
|
74
|
+
"path": "src/generated/keyVaultClient.ts",
|
|
75
|
+
"prefix": "packageDetails"
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
78
|
"path": "src/constants.ts",
|