@azure/keyvault-admin 4.6.0 → 4.6.1-alpha.20241112.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/commonjs/accessControlClient.d.ts +3 -3
  2. package/dist/commonjs/accessControlClient.d.ts.map +1 -1
  3. package/dist/commonjs/accessControlClient.js.map +1 -1
  4. package/dist/commonjs/accessControlModels.d.ts +2 -2
  5. package/dist/commonjs/accessControlModels.d.ts.map +1 -1
  6. package/dist/commonjs/accessControlModels.js.map +1 -1
  7. package/dist/commonjs/backupClient.d.ts +3 -3
  8. package/dist/commonjs/backupClient.d.ts.map +1 -1
  9. package/dist/commonjs/backupClient.js.map +1 -1
  10. package/dist/commonjs/backupClientModels.d.ts +2 -2
  11. package/dist/commonjs/backupClientModels.d.ts.map +1 -1
  12. package/dist/commonjs/backupClientModels.js.map +1 -1
  13. package/dist/commonjs/constants.js +1 -1
  14. package/dist/commonjs/constants.js.map +1 -1
  15. package/dist/commonjs/generated/keyVaultClientContext.js +1 -1
  16. package/dist/commonjs/generated/keyVaultClientContext.js.map +1 -1
  17. package/dist/commonjs/lro/backup/operation.d.ts +5 -4
  18. package/dist/commonjs/lro/backup/operation.d.ts.map +1 -1
  19. package/dist/commonjs/lro/backup/operation.js.map +1 -1
  20. package/dist/commonjs/lro/backup/poller.d.ts +4 -3
  21. package/dist/commonjs/lro/backup/poller.d.ts.map +1 -1
  22. package/dist/commonjs/lro/backup/poller.js.map +1 -1
  23. package/dist/commonjs/lro/keyVaultAdminPoller.d.ts +4 -3
  24. package/dist/commonjs/lro/keyVaultAdminPoller.d.ts.map +1 -1
  25. package/dist/commonjs/lro/keyVaultAdminPoller.js.map +1 -1
  26. package/dist/commonjs/lro/restore/operation.d.ts +5 -4
  27. package/dist/commonjs/lro/restore/operation.d.ts.map +1 -1
  28. package/dist/commonjs/lro/restore/operation.js.map +1 -1
  29. package/dist/commonjs/lro/restore/poller.d.ts +4 -3
  30. package/dist/commonjs/lro/restore/poller.d.ts.map +1 -1
  31. package/dist/commonjs/lro/restore/poller.js.map +1 -1
  32. package/dist/commonjs/lro/selectiveKeyRestore/operation.d.ts +5 -4
  33. package/dist/commonjs/lro/selectiveKeyRestore/operation.d.ts.map +1 -1
  34. package/dist/commonjs/lro/selectiveKeyRestore/operation.js.map +1 -1
  35. package/dist/commonjs/lro/selectiveKeyRestore/poller.d.ts +4 -3
  36. package/dist/commonjs/lro/selectiveKeyRestore/poller.d.ts.map +1 -1
  37. package/dist/commonjs/lro/selectiveKeyRestore/poller.js.map +1 -1
  38. package/dist/commonjs/mappings.d.ts +2 -2
  39. package/dist/commonjs/mappings.d.ts.map +1 -1
  40. package/dist/commonjs/mappings.js.map +1 -1
  41. package/dist/commonjs/settingsClient.d.ts +2 -2
  42. package/dist/commonjs/settingsClient.d.ts.map +1 -1
  43. package/dist/commonjs/settingsClient.js.map +1 -1
  44. package/dist/commonjs/settingsClientModels.d.ts +1 -1
  45. package/dist/commonjs/settingsClientModels.d.ts.map +1 -1
  46. package/dist/commonjs/settingsClientModels.js.map +1 -1
  47. package/dist/commonjs/tsdoc-metadata.json +1 -1
  48. package/dist/esm/accessControlClient.d.ts +3 -3
  49. package/dist/esm/accessControlClient.d.ts.map +1 -1
  50. package/dist/esm/accessControlClient.js.map +1 -1
  51. package/dist/esm/accessControlModels.d.ts +2 -2
  52. package/dist/esm/accessControlModels.d.ts.map +1 -1
  53. package/dist/esm/accessControlModels.js.map +1 -1
  54. package/dist/esm/backupClient.d.ts +3 -3
  55. package/dist/esm/backupClient.d.ts.map +1 -1
  56. package/dist/esm/backupClient.js.map +1 -1
  57. package/dist/esm/backupClientModels.d.ts +2 -2
  58. package/dist/esm/backupClientModels.d.ts.map +1 -1
  59. package/dist/esm/backupClientModels.js.map +1 -1
  60. package/dist/esm/constants.js +1 -1
  61. package/dist/esm/constants.js.map +1 -1
  62. package/dist/esm/generated/keyVaultClientContext.js +1 -1
  63. package/dist/esm/generated/keyVaultClientContext.js.map +1 -1
  64. package/dist/esm/lro/backup/operation.d.ts +5 -4
  65. package/dist/esm/lro/backup/operation.d.ts.map +1 -1
  66. package/dist/esm/lro/backup/operation.js +1 -1
  67. package/dist/esm/lro/backup/operation.js.map +1 -1
  68. package/dist/esm/lro/backup/poller.d.ts +4 -3
  69. package/dist/esm/lro/backup/poller.d.ts.map +1 -1
  70. package/dist/esm/lro/backup/poller.js +1 -1
  71. package/dist/esm/lro/backup/poller.js.map +1 -1
  72. package/dist/esm/lro/keyVaultAdminPoller.d.ts +4 -3
  73. package/dist/esm/lro/keyVaultAdminPoller.d.ts.map +1 -1
  74. package/dist/esm/lro/keyVaultAdminPoller.js.map +1 -1
  75. package/dist/esm/lro/restore/operation.d.ts +5 -4
  76. package/dist/esm/lro/restore/operation.d.ts.map +1 -1
  77. package/dist/esm/lro/restore/operation.js +1 -1
  78. package/dist/esm/lro/restore/operation.js.map +1 -1
  79. package/dist/esm/lro/restore/poller.d.ts +4 -3
  80. package/dist/esm/lro/restore/poller.d.ts.map +1 -1
  81. package/dist/esm/lro/restore/poller.js +1 -1
  82. package/dist/esm/lro/restore/poller.js.map +1 -1
  83. package/dist/esm/lro/selectiveKeyRestore/operation.d.ts +5 -4
  84. package/dist/esm/lro/selectiveKeyRestore/operation.d.ts.map +1 -1
  85. package/dist/esm/lro/selectiveKeyRestore/operation.js +1 -1
  86. package/dist/esm/lro/selectiveKeyRestore/operation.js.map +1 -1
  87. package/dist/esm/lro/selectiveKeyRestore/poller.d.ts +4 -3
  88. package/dist/esm/lro/selectiveKeyRestore/poller.d.ts.map +1 -1
  89. package/dist/esm/lro/selectiveKeyRestore/poller.js +1 -1
  90. package/dist/esm/lro/selectiveKeyRestore/poller.js.map +1 -1
  91. package/dist/esm/mappings.d.ts +2 -2
  92. package/dist/esm/mappings.d.ts.map +1 -1
  93. package/dist/esm/mappings.js.map +1 -1
  94. package/dist/esm/settingsClient.d.ts +2 -2
  95. package/dist/esm/settingsClient.d.ts.map +1 -1
  96. package/dist/esm/settingsClient.js.map +1 -1
  97. package/dist/esm/settingsClientModels.d.ts +1 -1
  98. package/dist/esm/settingsClientModels.d.ts.map +1 -1
  99. package/dist/esm/settingsClientModels.js.map +1 -1
  100. package/dist/keyvault-admin.d.ts +6 -6
  101. package/package.json +7 -11
@@ -1 +1 @@
1
- {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/lro/restore/operation.ts"],"names":[],"mappings":"AASA,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAChC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEjG,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAInE;;GAEG;AACH,MAAM,WAAW,6BACf,SAAQ,+BAA+B,CAAC,qBAAqB,CAAC;CAAG;AAEnE;;;GAGG;AACH,MAAM,WAAW,iCACf,SAAQ,+BAA+B,CAAC,qBAAqB,CAAC;IAC9D;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,0BAA0B,CAC1E,iCAAiC,EACjC,qBAAqB,CACtB;IAEU,KAAK,EAAE,iCAAiC;IAC/C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;gBAHf,KAAK,EAAE,iCAAiC,EACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,cAAc,GAAE,2BAAgC;IAO1D;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;YACW,aAAa;IAW3B;;OAEG;IACG,MAAM,CACV,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iCAAiC,KAAK,IAAI,CAAC;KAC9D,GACL,OAAO,CAAC,4BAA4B,CAAC;IAiCxC,OAAO,CAAC,QAAQ;CA8BjB"}
1
+ {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/lro/restore/operation.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAIxE;;GAEG;AACH,MAAM,WAAW,6BACf,SAAQ,+BAA+B,CAAC,qBAAqB,CAAC;CAAG;AAEnE;;;GAGG;AACH,MAAM,WAAW,iCACf,SAAQ,+BAA+B,CAAC,qBAAqB,CAAC;IAC9D;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,0BAA0B,CAC1E,iCAAiC,EACjC,qBAAqB,CACtB;IAEU,KAAK,EAAE,iCAAiC;IAC/C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;gBAHf,KAAK,EAAE,iCAAiC,EACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,cAAc,GAAE,2BAAgC;IAO1D;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;YACW,aAAa;IAW3B;;OAEG;IACG,MAAM,CACV,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,iCAAiC,KAAK,IAAI,CAAC;KAC9D,GACL,OAAO,CAAC,4BAA4B,CAAC;IAiCxC,OAAO,CAAC,QAAQ;CA8BjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../../../src/lro/restore/operation.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n FullRestoreOperationOptionalParams,\n FullRestoreOperationResponse,\n RestoreOperation,\n RestoreStatusResponse,\n} from \"../../generated/models/index.js\";\nimport {\n KeyVaultAdminPollOperation,\n KeyVaultAdminPollOperationState,\n} from \"../keyVaultAdminPoller.js\";\nimport { KeyVaultBeginRestoreOptions, KeyVaultRestoreResult } from \"../../backupClientModels.js\";\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient.js\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing.js\";\n\n/**\n * An interface representing the publicly available properties of the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultRestoreOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultRestoreResult> {}\n\n/**\n * An internal interface representing the state of a restore Key Vault's poll operation.\n * @internal\n */\nexport interface KeyVaultRestorePollOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultRestoreResult> {\n /**\n * The URI of the blob storage account.\n */\n folderUri: string;\n /**\n * The SAS token.\n */\n sasToken?: string;\n /**\n * The Folder name of the blob where the previous successful full backup was stored\n */\n folderName: string;\n}\n\n/**\n * An interface representing a restore Key Vault's poll operation.\n */\nexport class KeyVaultRestorePollOperation extends KeyVaultAdminPollOperation<\n KeyVaultRestorePollOperationState,\n KeyVaultRestoreResult\n> {\n constructor(\n public state: KeyVaultRestorePollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private requestOptions: KeyVaultBeginRestoreOptions = {},\n ) {\n super(state, {\n cancelMessage: \"Cancelling the restoration full Key Vault backup is not supported.\",\n });\n }\n\n /**\n * Tracing the fullRestore operation\n */\n private fullRestore(\n options: FullRestoreOperationOptionalParams,\n ): Promise<FullRestoreOperationResponse> {\n return tracingClient.withSpan(\"KeyVaultRestorePoller.fullRestore\", options, (updatedOptions) =>\n this.client.fullRestoreOperation(this.vaultUrl, updatedOptions),\n );\n }\n\n /**\n * Tracing the restoreStatus operation.\n */\n private async restoreStatus(\n jobId: string,\n options: OperationOptions,\n ): Promise<RestoreStatusResponse> {\n return tracingClient.withSpan(\n \"KeyVaultRestorePoller.restoreStatus\",\n options,\n (updatedOptions) => this.client.restoreStatus(this.vaultUrl, jobId, updatedOptions),\n );\n }\n\n /**\n * Reaches to the service and updates the restore poll operation.\n */\n async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: KeyVaultRestorePollOperationState) => void;\n } = {},\n ): Promise<KeyVaultRestorePollOperation> {\n const state = this.state;\n const { folderUri, sasToken, folderName } = state;\n\n if (options.abortSignal) {\n this.requestOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const serviceOperation = await this.fullRestore({\n ...this.requestOptions,\n restoreBlobDetails: {\n folderToRestore: folderName,\n sasTokenParameters: {\n storageResourceUri: folderUri,\n token: sasToken,\n useManagedIdentity: sasToken === undefined,\n },\n },\n });\n\n this.mapState(serviceOperation);\n } else if (!state.isCompleted) {\n if (!state.jobId) {\n throw new Error(`Missing \"jobId\" from the full restore operation.`);\n }\n const serviceOperation = await this.restoreStatus(state.jobId, this.requestOptions);\n this.mapState(serviceOperation);\n }\n\n return this;\n }\n\n private mapState(serviceOperation: RestoreOperation): void {\n const state = this.state;\n const { startTime, jobId, endTime, error, status, statusDetails } = serviceOperation;\n\n if (!startTime) {\n throw new Error(\n `Missing \"startTime\" from the full restore operation. Restore did not start successfully.`,\n );\n }\n\n state.isStarted = true;\n state.jobId = jobId;\n state.endTime = endTime;\n state.startTime = startTime;\n state.status = status;\n state.statusDetails = statusDetails;\n\n state.isCompleted = !!endTime;\n\n if (state.isCompleted && error?.code) {\n throw new Error(error?.message || statusDetails);\n }\n\n if (state.isCompleted) {\n state.result = {\n startTime,\n endTime,\n };\n }\n }\n}\n"]}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../../../src/lro/restore/operation.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n FullRestoreOperationOptionalParams,\n FullRestoreOperationResponse,\n RestoreOperation,\n RestoreStatusResponse,\n} from \"../../generated/models/index.js\";\nimport type { KeyVaultAdminPollOperationState } from \"../keyVaultAdminPoller.js\";\nimport { KeyVaultAdminPollOperation } from \"../keyVaultAdminPoller.js\";\nimport type {\n KeyVaultBeginRestoreOptions,\n KeyVaultRestoreResult,\n} from \"../../backupClientModels.js\";\n\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\nimport type { KeyVaultClient } from \"../../generated/keyVaultClient.js\";\nimport type { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing.js\";\n\n/**\n * An interface representing the publicly available properties of the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultRestoreOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultRestoreResult> {}\n\n/**\n * An internal interface representing the state of a restore Key Vault's poll operation.\n * @internal\n */\nexport interface KeyVaultRestorePollOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultRestoreResult> {\n /**\n * The URI of the blob storage account.\n */\n folderUri: string;\n /**\n * The SAS token.\n */\n sasToken?: string;\n /**\n * The Folder name of the blob where the previous successful full backup was stored\n */\n folderName: string;\n}\n\n/**\n * An interface representing a restore Key Vault's poll operation.\n */\nexport class KeyVaultRestorePollOperation extends KeyVaultAdminPollOperation<\n KeyVaultRestorePollOperationState,\n KeyVaultRestoreResult\n> {\n constructor(\n public state: KeyVaultRestorePollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private requestOptions: KeyVaultBeginRestoreOptions = {},\n ) {\n super(state, {\n cancelMessage: \"Cancelling the restoration full Key Vault backup is not supported.\",\n });\n }\n\n /**\n * Tracing the fullRestore operation\n */\n private fullRestore(\n options: FullRestoreOperationOptionalParams,\n ): Promise<FullRestoreOperationResponse> {\n return tracingClient.withSpan(\"KeyVaultRestorePoller.fullRestore\", options, (updatedOptions) =>\n this.client.fullRestoreOperation(this.vaultUrl, updatedOptions),\n );\n }\n\n /**\n * Tracing the restoreStatus operation.\n */\n private async restoreStatus(\n jobId: string,\n options: OperationOptions,\n ): Promise<RestoreStatusResponse> {\n return tracingClient.withSpan(\n \"KeyVaultRestorePoller.restoreStatus\",\n options,\n (updatedOptions) => this.client.restoreStatus(this.vaultUrl, jobId, updatedOptions),\n );\n }\n\n /**\n * Reaches to the service and updates the restore poll operation.\n */\n async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: KeyVaultRestorePollOperationState) => void;\n } = {},\n ): Promise<KeyVaultRestorePollOperation> {\n const state = this.state;\n const { folderUri, sasToken, folderName } = state;\n\n if (options.abortSignal) {\n this.requestOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const serviceOperation = await this.fullRestore({\n ...this.requestOptions,\n restoreBlobDetails: {\n folderToRestore: folderName,\n sasTokenParameters: {\n storageResourceUri: folderUri,\n token: sasToken,\n useManagedIdentity: sasToken === undefined,\n },\n },\n });\n\n this.mapState(serviceOperation);\n } else if (!state.isCompleted) {\n if (!state.jobId) {\n throw new Error(`Missing \"jobId\" from the full restore operation.`);\n }\n const serviceOperation = await this.restoreStatus(state.jobId, this.requestOptions);\n this.mapState(serviceOperation);\n }\n\n return this;\n }\n\n private mapState(serviceOperation: RestoreOperation): void {\n const state = this.state;\n const { startTime, jobId, endTime, error, status, statusDetails } = serviceOperation;\n\n if (!startTime) {\n throw new Error(\n `Missing \"startTime\" from the full restore operation. Restore did not start successfully.`,\n );\n }\n\n state.isStarted = true;\n state.jobId = jobId;\n state.endTime = endTime;\n state.startTime = startTime;\n state.status = status;\n state.statusDetails = statusDetails;\n\n state.isCompleted = !!endTime;\n\n if (state.isCompleted && error?.code) {\n throw new Error(error?.message || statusDetails);\n }\n\n if (state.isCompleted) {\n state.result = {\n startTime,\n endTime,\n };\n }\n }\n}\n"]}
@@ -1,6 +1,7 @@
1
- import { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js";
2
- import { KeyVaultRestoreOperationState } from "./operation.js";
3
- import { KeyVaultRestoreResult } from "../../backupClientModels.js";
1
+ import type { KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js";
2
+ import { KeyVaultAdminPoller } from "../keyVaultAdminPoller.js";
3
+ import type { KeyVaultRestoreOperationState } from "./operation.js";
4
+ import type { KeyVaultRestoreResult } from "../../backupClientModels.js";
4
5
  export interface KeyVaultRestorePollerOptions extends KeyVaultAdminPollerOptions {
5
6
  folderUri: string;
6
7
  sasToken?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../src/lro/restore/poller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EACL,6BAA6B,EAG9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,WAAW,4BAA6B,SAAQ,0BAA0B;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB,CAC5D,6BAA6B,EAC7B,qBAAqB,CACtB;gBACa,OAAO,EAAE,4BAA4B;CAkClD"}
1
+ {"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../src/lro/restore/poller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EACV,6BAA6B,EAE9B,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEzE,MAAM,WAAW,4BAA6B,SAAQ,0BAA0B;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB,CAC5D,6BAA6B,EAC7B,qBAAqB,CACtB;gBACa,OAAO,EAAE,4BAA4B;CAkClD"}
@@ -1 +1 @@
1
- {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../src/lro/restore/poller.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,sEAA4F;AAC5F,iDAIwB;AASxB;;GAEG;AACH,MAAa,qBAAsB,SAAQ,4CAG1C;IACC,YAAY,OAAqC;QAC/C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,GAAG,IAAI,EACnB,UAAU,GACX,GAAG,OAAO,CAAC;QAEZ,IAAI,KAAoD,CAAC;QAEzD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACvC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,2CAA4B,iCAE3C,KAAK,KACR,SAAS;YACT,QAAQ;YACR,UAAU,KAEZ,QAAQ,EACR,MAAM,EACN,cAAc,CACf,CAAC;QAEF,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAtCD,sDAsCC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from \"../keyVaultAdminPoller.js\";\nimport {\n KeyVaultRestoreOperationState,\n KeyVaultRestorePollOperation,\n KeyVaultRestorePollOperationState,\n} from \"./operation.js\";\nimport { KeyVaultRestoreResult } from \"../../backupClientModels.js\";\n\nexport interface KeyVaultRestorePollerOptions extends KeyVaultAdminPollerOptions {\n folderUri: string;\n sasToken?: string;\n folderName: string;\n}\n\n/**\n * Class that creates a poller that waits until a Key Vault ends up being restored.\n */\nexport class KeyVaultRestorePoller extends KeyVaultAdminPoller<\n KeyVaultRestoreOperationState,\n KeyVaultRestoreResult\n> {\n constructor(options: KeyVaultRestorePollerOptions) {\n const {\n client,\n vaultUrl,\n folderUri,\n sasToken,\n folderName,\n requestOptions,\n intervalInMs = 2000,\n resumeFrom,\n } = options;\n\n let state: KeyVaultRestorePollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new KeyVaultRestorePollOperation(\n {\n ...state,\n folderUri,\n sasToken,\n folderName,\n },\n vaultUrl,\n client,\n requestOptions,\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n"]}
1
+ {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../src/lro/restore/poller.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,sEAAgE;AAKhE,iDAA8D;AAS9D;;GAEG;AACH,MAAa,qBAAsB,SAAQ,4CAG1C;IACC,YAAY,OAAqC;QAC/C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,GAAG,IAAI,EACnB,UAAU,GACX,GAAG,OAAO,CAAC;QAEZ,IAAI,KAAoD,CAAC;QAEzD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACvC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,2CAA4B,iCAE3C,KAAK,KACR,SAAS;YACT,QAAQ;YACR,UAAU,KAEZ,QAAQ,EACR,MAAM,EACN,cAAc,CACf,CAAC;QAEF,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAtCD,sDAsCC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { KeyVaultAdminPollerOptions } from \"../keyVaultAdminPoller.js\";\nimport { KeyVaultAdminPoller } from \"../keyVaultAdminPoller.js\";\nimport type {\n KeyVaultRestoreOperationState,\n KeyVaultRestorePollOperationState,\n} from \"./operation.js\";\nimport { KeyVaultRestorePollOperation } from \"./operation.js\";\nimport type { KeyVaultRestoreResult } from \"../../backupClientModels.js\";\n\nexport interface KeyVaultRestorePollerOptions extends KeyVaultAdminPollerOptions {\n folderUri: string;\n sasToken?: string;\n folderName: string;\n}\n\n/**\n * Class that creates a poller that waits until a Key Vault ends up being restored.\n */\nexport class KeyVaultRestorePoller extends KeyVaultAdminPoller<\n KeyVaultRestoreOperationState,\n KeyVaultRestoreResult\n> {\n constructor(options: KeyVaultRestorePollerOptions) {\n const {\n client,\n vaultUrl,\n folderUri,\n sasToken,\n folderName,\n requestOptions,\n intervalInMs = 2000,\n resumeFrom,\n } = options;\n\n let state: KeyVaultRestorePollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new KeyVaultRestorePollOperation(\n {\n ...state,\n folderUri,\n sasToken,\n folderName,\n },\n vaultUrl,\n client,\n requestOptions,\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n"]}
@@ -1,7 +1,8 @@
1
- import { KeyVaultAdminPollOperation, KeyVaultAdminPollOperationState } from "../keyVaultAdminPoller.js";
2
- import { KeyVaultBeginSelectiveKeyRestoreOptions, KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js";
3
- import { AbortSignalLike } from "@azure/abort-controller";
4
- import { KeyVaultClient } from "../../generated/keyVaultClient.js";
1
+ import type { KeyVaultAdminPollOperationState } from "../keyVaultAdminPoller.js";
2
+ import { KeyVaultAdminPollOperation } from "../keyVaultAdminPoller.js";
3
+ import type { KeyVaultBeginSelectiveKeyRestoreOptions, KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js";
4
+ import type { AbortSignalLike } from "@azure/abort-controller";
5
+ import type { KeyVaultClient } from "../../generated/keyVaultClient.js";
5
6
  /**
6
7
  * An interface representing the publicly available properties of the state of a restore Key Vault's poll operation.
7
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/operation.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAChC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uCAAuC,EACvC,iCAAiC,EAClC,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAInE;;GAEG;AACH,MAAM,WAAW,yCACf,SAAQ,+BAA+B,CAAC,iCAAiC,CAAC;CAAG;AAE/E;;GAEG;AACH,MAAM,WAAW,6CACf,SAAQ,+BAA+B,CAAC,iCAAiC,CAAC;IAC1E;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,wCAAyC,SAAQ,0BAA0B,CACtF,6CAA6C,EAC7C,MAAM,CACP;IAEU,KAAK,EAAE,6CAA6C;IAC3D,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;gBAHf,KAAK,EAAE,6CAA6C,EACnD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,cAAc,GAAE,uCAA4C;IAKtE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACG,MAAM,CACV,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,6CAA6C,KAAK,IAAI,CAAC;KAC1E,GACL,OAAO,CAAC,wCAAwC,CAAC;IAgCpD,OAAO,CAAC,QAAQ;CA2BjB"}
1
+ {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/operation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EACV,uCAAuC,EACvC,iCAAiC,EAClC,MAAM,6BAA6B,CAAC;AAOrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAIxE;;GAEG;AACH,MAAM,WAAW,yCACf,SAAQ,+BAA+B,CAAC,iCAAiC,CAAC;CAAG;AAE/E;;GAEG;AACH,MAAM,WAAW,6CACf,SAAQ,+BAA+B,CAAC,iCAAiC,CAAC;IAC1E;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,wCAAyC,SAAQ,0BAA0B,CACtF,6CAA6C,EAC7C,MAAM,CACP;IAEU,KAAK,EAAE,6CAA6C;IAC3D,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;gBAHf,KAAK,EAAE,6CAA6C,EACnD,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,EACtB,cAAc,GAAE,uCAA4C;IAKtE;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACG,MAAM,CACV,OAAO,GAAE;QACP,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,6CAA6C,KAAK,IAAI,CAAC;KAC1E,GACL,OAAO,CAAC,wCAAwC,CAAC;IAgCpD,OAAO,CAAC,QAAQ;CA2BjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/operation.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n KeyVaultAdminPollOperation,\n KeyVaultAdminPollOperationState,\n} from \"../keyVaultAdminPoller.js\";\nimport {\n KeyVaultBeginSelectiveKeyRestoreOptions,\n KeyVaultSelectiveKeyRestoreResult,\n} from \"../../backupClientModels.js\";\nimport {\n RestoreOperation,\n RestoreStatusResponse,\n SelectiveKeyRestoreOperationOptionalParams,\n SelectiveKeyRestoreOperationResponse,\n} from \"../../generated/models/index.js\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { KeyVaultClient } from \"../../generated/keyVaultClient.js\";\nimport { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing.js\";\n\n/**\n * An interface representing the publicly available properties of the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultSelectiveKeyRestoreOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultSelectiveKeyRestoreResult> {}\n\n/**\n * An internal interface representing the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultSelectiveKeyRestorePollOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultSelectiveKeyRestoreResult> {\n /**\n * The name of a Key Vault Key.\n */\n keyName: string;\n /**\n * The Folder name of the blob where the previous successful full backup was stored\n */\n folderName: string;\n /**\n * The URI of the blob storage account where the previous successful full backup was stored.\n */\n folderUri: string;\n /**\n * The SAS token.\n */\n sasToken?: string;\n}\n\n/**\n * The selective restore Key Vault's poll operation.\n */\nexport class KeyVaultSelectiveKeyRestorePollOperation extends KeyVaultAdminPollOperation<\n KeyVaultSelectiveKeyRestorePollOperationState,\n string\n> {\n constructor(\n public state: KeyVaultSelectiveKeyRestorePollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private requestOptions: KeyVaultBeginSelectiveKeyRestoreOptions = {},\n ) {\n super(state, { cancelMessage: \"Cancelling a selective Key Vault restore is not supported.\" });\n }\n\n /**\n * Tracing the selectiveRestore operation\n */\n private selectiveRestore(\n keyName: string,\n options: SelectiveKeyRestoreOperationOptionalParams,\n ): Promise<SelectiveKeyRestoreOperationResponse> {\n return tracingClient.withSpan(\n \"KeyVaultSelectiveKeyRestorePoller.selectiveRestore\",\n options,\n (updatedOptions) =>\n this.client.selectiveKeyRestoreOperation(this.vaultUrl, keyName, updatedOptions),\n );\n }\n\n /**\n * Tracing the restoreStatus operation.\n */\n private restoreStatus(jobId: string, options: OperationOptions): Promise<RestoreStatusResponse> {\n return tracingClient.withSpan(\n \"KeyVaultSelectiveKeyRestorePoller.restoreStatus\",\n options,\n (updatedOptions) => this.client.restoreStatus(this.vaultUrl, jobId, updatedOptions),\n );\n }\n\n /**\n * Reaches to the service and updates the selective restore poll operation.\n */\n async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: KeyVaultSelectiveKeyRestorePollOperationState) => void;\n } = {},\n ): Promise<KeyVaultSelectiveKeyRestorePollOperation> {\n const state = this.state;\n const { keyName, folderUri, sasToken, folderName } = state;\n\n if (options.abortSignal) {\n this.requestOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const selectiveRestoreOperation = await this.selectiveRestore(keyName, {\n ...this.requestOptions,\n restoreBlobDetails: {\n folder: folderName,\n sasTokenParameters: {\n storageResourceUri: folderUri,\n token: sasToken,\n useManagedIdentity: sasToken === undefined,\n },\n },\n });\n this.mapState(selectiveRestoreOperation);\n } else if (!state.isCompleted) {\n if (!state.jobId) {\n throw new Error(`Missing \"jobId\" from the full restore operation.`);\n }\n const serviceOperation = await this.restoreStatus(state.jobId, this.requestOptions);\n this.mapState(serviceOperation);\n }\n\n return this;\n }\n\n private mapState(serviceOperation: RestoreOperation): void {\n const state = this.state;\n const { startTime, jobId, endTime, error, status, statusDetails } = serviceOperation;\n\n if (!startTime) {\n throw new Error(`Missing \"startTime\" from the selective restore operation.`);\n }\n\n state.isStarted = true;\n state.jobId = jobId;\n state.endTime = endTime;\n state.startTime = startTime;\n state.status = status;\n state.statusDetails = statusDetails;\n state.isCompleted = !!endTime;\n\n if (state.isCompleted && error?.code) {\n throw new Error(error?.message || statusDetails);\n }\n\n if (state.isCompleted) {\n state.result = {\n startTime,\n endTime,\n };\n }\n }\n}\n"]}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/operation.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,sEAAuE;AAcvE,iDAAiD;AA+BjD;;GAEG;AACH,MAAa,wCAAyC,SAAQ,mDAG7D;IACC,YACS,KAAoD,EACnD,QAAgB,EAChB,MAAsB,EACtB,iBAA0D,EAAE;QAEpE,KAAK,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,4DAA4D,EAAE,CAAC,CAAC;QALvF,UAAK,GAAL,KAAK,CAA+C;QACnD,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAgB;QACtB,mBAAc,GAAd,cAAc,CAA8C;IAGtE,CAAC;IAED;;OAEG;IACK,gBAAgB,CACtB,OAAe,EACf,OAAmD;QAEnD,OAAO,0BAAa,CAAC,QAAQ,CAC3B,oDAAoD,EACpD,OAAO,EACP,CAAC,cAAc,EAAE,EAAE,CACjB,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CACnF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAa,EAAE,OAAyB;QAC5D,OAAO,0BAAa,CAAC,QAAQ,CAC3B,iDAAiD,EACjD,OAAO,EACP,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC,CACpF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,UAGI,EAAE;QAEN,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAE3D,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,kCAChE,IAAI,CAAC,cAAc,KACtB,kBAAkB,EAAE;oBAClB,MAAM,EAAE,UAAU;oBAClB,kBAAkB,EAAE;wBAClB,kBAAkB,EAAE,SAAS;wBAC7B,KAAK,EAAE,QAAQ;wBACf,kBAAkB,EAAE,QAAQ,KAAK,SAAS;qBAC3C;iBACF,IACD,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YACpF,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,QAAQ,CAAC,gBAAkC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC;QAErF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAC5B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACpC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC;QAE9B,IAAI,KAAK,CAAC,WAAW,KAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAA,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,aAAa,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,KAAK,CAAC,MAAM,GAAG;gBACb,SAAS;gBACT,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA1GD,4FA0GC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { KeyVaultAdminPollOperationState } from \"../keyVaultAdminPoller.js\";\nimport { KeyVaultAdminPollOperation } from \"../keyVaultAdminPoller.js\";\nimport type {\n KeyVaultBeginSelectiveKeyRestoreOptions,\n KeyVaultSelectiveKeyRestoreResult,\n} from \"../../backupClientModels.js\";\nimport type {\n RestoreOperation,\n RestoreStatusResponse,\n SelectiveKeyRestoreOperationOptionalParams,\n SelectiveKeyRestoreOperationResponse,\n} from \"../../generated/models/index.js\";\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\nimport type { KeyVaultClient } from \"../../generated/keyVaultClient.js\";\nimport type { OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"../../tracing.js\";\n\n/**\n * An interface representing the publicly available properties of the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultSelectiveKeyRestoreOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultSelectiveKeyRestoreResult> {}\n\n/**\n * An internal interface representing the state of a restore Key Vault's poll operation.\n */\nexport interface KeyVaultSelectiveKeyRestorePollOperationState\n extends KeyVaultAdminPollOperationState<KeyVaultSelectiveKeyRestoreResult> {\n /**\n * The name of a Key Vault Key.\n */\n keyName: string;\n /**\n * The Folder name of the blob where the previous successful full backup was stored\n */\n folderName: string;\n /**\n * The URI of the blob storage account where the previous successful full backup was stored.\n */\n folderUri: string;\n /**\n * The SAS token.\n */\n sasToken?: string;\n}\n\n/**\n * The selective restore Key Vault's poll operation.\n */\nexport class KeyVaultSelectiveKeyRestorePollOperation extends KeyVaultAdminPollOperation<\n KeyVaultSelectiveKeyRestorePollOperationState,\n string\n> {\n constructor(\n public state: KeyVaultSelectiveKeyRestorePollOperationState,\n private vaultUrl: string,\n private client: KeyVaultClient,\n private requestOptions: KeyVaultBeginSelectiveKeyRestoreOptions = {},\n ) {\n super(state, { cancelMessage: \"Cancelling a selective Key Vault restore is not supported.\" });\n }\n\n /**\n * Tracing the selectiveRestore operation\n */\n private selectiveRestore(\n keyName: string,\n options: SelectiveKeyRestoreOperationOptionalParams,\n ): Promise<SelectiveKeyRestoreOperationResponse> {\n return tracingClient.withSpan(\n \"KeyVaultSelectiveKeyRestorePoller.selectiveRestore\",\n options,\n (updatedOptions) =>\n this.client.selectiveKeyRestoreOperation(this.vaultUrl, keyName, updatedOptions),\n );\n }\n\n /**\n * Tracing the restoreStatus operation.\n */\n private restoreStatus(jobId: string, options: OperationOptions): Promise<RestoreStatusResponse> {\n return tracingClient.withSpan(\n \"KeyVaultSelectiveKeyRestorePoller.restoreStatus\",\n options,\n (updatedOptions) => this.client.restoreStatus(this.vaultUrl, jobId, updatedOptions),\n );\n }\n\n /**\n * Reaches to the service and updates the selective restore poll operation.\n */\n async update(\n options: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: KeyVaultSelectiveKeyRestorePollOperationState) => void;\n } = {},\n ): Promise<KeyVaultSelectiveKeyRestorePollOperation> {\n const state = this.state;\n const { keyName, folderUri, sasToken, folderName } = state;\n\n if (options.abortSignal) {\n this.requestOptions.abortSignal = options.abortSignal;\n }\n\n if (!state.isStarted) {\n const selectiveRestoreOperation = await this.selectiveRestore(keyName, {\n ...this.requestOptions,\n restoreBlobDetails: {\n folder: folderName,\n sasTokenParameters: {\n storageResourceUri: folderUri,\n token: sasToken,\n useManagedIdentity: sasToken === undefined,\n },\n },\n });\n this.mapState(selectiveRestoreOperation);\n } else if (!state.isCompleted) {\n if (!state.jobId) {\n throw new Error(`Missing \"jobId\" from the full restore operation.`);\n }\n const serviceOperation = await this.restoreStatus(state.jobId, this.requestOptions);\n this.mapState(serviceOperation);\n }\n\n return this;\n }\n\n private mapState(serviceOperation: RestoreOperation): void {\n const state = this.state;\n const { startTime, jobId, endTime, error, status, statusDetails } = serviceOperation;\n\n if (!startTime) {\n throw new Error(`Missing \"startTime\" from the selective restore operation.`);\n }\n\n state.isStarted = true;\n state.jobId = jobId;\n state.endTime = endTime;\n state.startTime = startTime;\n state.status = status;\n state.statusDetails = statusDetails;\n state.isCompleted = !!endTime;\n\n if (state.isCompleted && error?.code) {\n throw new Error(error?.message || statusDetails);\n }\n\n if (state.isCompleted) {\n state.result = {\n startTime,\n endTime,\n };\n }\n }\n}\n"]}
@@ -1,6 +1,7 @@
1
- import { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js";
2
- import { KeyVaultSelectiveKeyRestoreOperationState } from "./operation.js";
3
- import { KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js";
1
+ import type { KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js";
2
+ import { KeyVaultAdminPoller } from "../keyVaultAdminPoller.js";
3
+ import type { KeyVaultSelectiveKeyRestoreOperationState } from "./operation.js";
4
+ import type { KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js";
4
5
  export interface KeyVaultSelectiveKeyRestorePollerOptions extends KeyVaultAdminPollerOptions {
5
6
  keyName: string;
6
7
  folderUri: string;
@@ -1 +1 @@
1
- {"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/poller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EACL,yCAAyC,EAG1C,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAEhF,MAAM,WAAW,wCAAyC,SAAQ,0BAA0B;IAC1F,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,mBAAmB,CACxE,yCAAyC,EACzC,iCAAiC,CAClC;gBACa,OAAO,EAAE,wCAAwC;CAoC9D"}
1
+ {"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/poller.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EACV,yCAAyC,EAE1C,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAErF,MAAM,WAAW,wCAAyC,SAAQ,0BAA0B;IAC1F,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,mBAAmB,CACxE,yCAAyC,EACzC,iCAAiC,CAClC;gBACa,OAAO,EAAE,wCAAwC;CAoC9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/poller.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,sEAA4F;AAC5F,iDAIwB;AAUxB;;GAEG;AACH,MAAa,iCAAkC,SAAQ,4CAGtD;IACC,YAAY,OAAiD;QAC3D,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,GAAG,IAAI,EACnB,UAAU,GACX,GAAG,OAAO,CAAC;QAEZ,IAAI,KAAgE,CAAC;QAErE,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACvC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,uDAAwC,iCAEvD,KAAK,KACR,OAAO,EACP,SAAS,EAAE,SAAS,EACpB,QAAQ;YACR,UAAU,KAEZ,QAAQ,EACR,MAAM,EACN,cAAc,CACf,CAAC;QAEF,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAxCD,8EAwCC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from \"../keyVaultAdminPoller.js\";\nimport {\n KeyVaultSelectiveKeyRestoreOperationState,\n KeyVaultSelectiveKeyRestorePollOperation,\n KeyVaultSelectiveKeyRestorePollOperationState,\n} from \"./operation.js\";\nimport { KeyVaultSelectiveKeyRestoreResult } from \"../../backupClientModels.js\";\n\nexport interface KeyVaultSelectiveKeyRestorePollerOptions extends KeyVaultAdminPollerOptions {\n keyName: string;\n folderUri: string;\n sasToken?: string;\n folderName: string;\n}\n\n/**\n * Class that creates a poller that waits until a key of a Key Vault backup ends up being restored.\n */\nexport class KeyVaultSelectiveKeyRestorePoller extends KeyVaultAdminPoller<\n KeyVaultSelectiveKeyRestoreOperationState,\n KeyVaultSelectiveKeyRestoreResult\n> {\n constructor(options: KeyVaultSelectiveKeyRestorePollerOptions) {\n const {\n client,\n vaultUrl,\n keyName,\n folderUri,\n sasToken,\n folderName,\n requestOptions,\n intervalInMs = 2000,\n resumeFrom,\n } = options;\n\n let state: KeyVaultSelectiveKeyRestorePollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new KeyVaultSelectiveKeyRestorePollOperation(\n {\n ...state,\n keyName,\n folderUri: folderUri,\n sasToken,\n folderName,\n },\n vaultUrl,\n client,\n requestOptions,\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n"]}
1
+ {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../../src/lro/selectiveKeyRestore/poller.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,sEAAgE;AAKhE,iDAA0E;AAU1E;;GAEG;AACH,MAAa,iCAAkC,SAAQ,4CAGtD;IACC,YAAY,OAAiD;QAC3D,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,GAAG,IAAI,EACnB,UAAU,GACX,GAAG,OAAO,CAAC;QAEZ,IAAI,KAAgE,CAAC;QAErE,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACvC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,uDAAwC,iCAEvD,KAAK,KACR,OAAO,EACP,SAAS,EAAE,SAAS,EACpB,QAAQ;YACR,UAAU,KAEZ,QAAQ,EACR,MAAM,EACN,cAAc,CACf,CAAC;QAEF,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAxCD,8EAwCC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { KeyVaultAdminPollerOptions } from \"../keyVaultAdminPoller.js\";\nimport { KeyVaultAdminPoller } from \"../keyVaultAdminPoller.js\";\nimport type {\n KeyVaultSelectiveKeyRestoreOperationState,\n KeyVaultSelectiveKeyRestorePollOperationState,\n} from \"./operation.js\";\nimport { KeyVaultSelectiveKeyRestorePollOperation } from \"./operation.js\";\nimport type { KeyVaultSelectiveKeyRestoreResult } from \"../../backupClientModels.js\";\n\nexport interface KeyVaultSelectiveKeyRestorePollerOptions extends KeyVaultAdminPollerOptions {\n keyName: string;\n folderUri: string;\n sasToken?: string;\n folderName: string;\n}\n\n/**\n * Class that creates a poller that waits until a key of a Key Vault backup ends up being restored.\n */\nexport class KeyVaultSelectiveKeyRestorePoller extends KeyVaultAdminPoller<\n KeyVaultSelectiveKeyRestoreOperationState,\n KeyVaultSelectiveKeyRestoreResult\n> {\n constructor(options: KeyVaultSelectiveKeyRestorePollerOptions) {\n const {\n client,\n vaultUrl,\n keyName,\n folderUri,\n sasToken,\n folderName,\n requestOptions,\n intervalInMs = 2000,\n resumeFrom,\n } = options;\n\n let state: KeyVaultSelectiveKeyRestorePollOperationState | undefined;\n\n if (resumeFrom) {\n state = JSON.parse(resumeFrom).state;\n }\n\n const operation = new KeyVaultSelectiveKeyRestorePollOperation(\n {\n ...state,\n keyName,\n folderUri: folderUri,\n sasToken,\n folderName,\n },\n vaultUrl,\n client,\n requestOptions,\n );\n\n super(operation);\n\n this.intervalInMs = intervalInMs;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { KeyVaultRoleAssignment, KeyVaultRoleDefinition } from "./accessControlModels.js";
2
- import { RoleAssignment, RoleDefinition } from "./generated/models/index.js";
1
+ import type { KeyVaultRoleAssignment, KeyVaultRoleDefinition } from "./accessControlModels.js";
2
+ import type { RoleAssignment, RoleDefinition } from "./generated/models/index.js";
3
3
  export declare const mappings: {
4
4
  roleAssignment: {
5
5
  generatedToPublic(roleAssignment: RoleAssignment): KeyVaultRoleAssignment;
@@ -1 +1 @@
1
- {"version":3,"file":"mappings.d.ts","sourceRoot":"","sources":["../../src/mappings.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7E,eAAO,MAAM,QAAQ;;0CAEiB,cAAc,GAAG,sBAAsB;;;0CAgBvC,cAAc,GAAG,sBAAsB;;8BAejD,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;CAc7E,CAAC"}
1
+ {"version":3,"file":"mappings.d.ts","sourceRoot":"","sources":["../../src/mappings.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElF,eAAO,MAAM,QAAQ;;0CAEiB,cAAc,GAAG,sBAAsB;;;0CAgBvC,cAAc,GAAG,sBAAsB;;8BAejD,MAAM,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;CAc7E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../src/mappings.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AASrB,QAAA,QAAQ,GAAG;IACtB,cAAc,EAAE;QACd,iBAAiB,CAAC,cAA8B;YAC9C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;YACtD,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;YAClE,OAAO;gBACL,EAAE,EAAE,EAAG;gBACP,IAAI,EAAE,IAAK;gBACX,IAAI,EAAE,IAAK;gBACX,UAAU,EAAE;oBACV,KAAK,EAAE,KAA0B;oBACjC,gBAAgB,EAAE,gBAAiB;oBACnC,WAAW,EAAE,WAAY;iBAC1B;aACF,CAAC;QACJ,CAAC;KACF;IACD,cAAc,EAAE;QACd,iBAAiB,CAAC,cAA8B;YAC9C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,GACtF,cAAc,CAAC;YACjB,OAAO;gBACL,EAAE,EAAE,EAAG;gBACP,IAAI,EAAE,IAAK;gBACX,IAAI,EAAE,IAAK;gBACX,QAAQ,EAAE,QAAS;gBACnB,WAAW,EAAE,WAAY;gBACzB,QAAQ,EAAE,QAAS;gBACnB,WAAW,EAAE,WAAY;gBACzB,gBAAgB,EAAE,gBAAiB;aACpC,CAAC;QACJ,CAAC;KACF;IACD,cAAc,CAAC,SAAiB;QAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEtC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QAED,OAAO;YACL,UAAU;YACV,SAAS,EAAE,UAAU;SACtB,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n KeyVaultRoleAssignment,\n KeyVaultRoleDefinition,\n KeyVaultRoleScope,\n} from \"./accessControlModels.js\";\nimport { RoleAssignment, RoleDefinition } from \"./generated/models/index.js\";\n\nexport const mappings = {\n roleAssignment: {\n generatedToPublic(roleAssignment: RoleAssignment): KeyVaultRoleAssignment {\n const { id, name, type, properties } = roleAssignment;\n const { scope, roleDefinitionId, principalId } = properties || {};\n return {\n id: id!,\n name: name!,\n kind: type!,\n properties: {\n scope: scope as KeyVaultRoleScope,\n roleDefinitionId: roleDefinitionId!,\n principalId: principalId!,\n },\n };\n },\n },\n roleDefinition: {\n generatedToPublic(roleDefinition: RoleDefinition): KeyVaultRoleDefinition {\n const { id, name, type, roleName, description, roleType, permissions, assignableScopes } =\n roleDefinition;\n return {\n id: id!,\n name: name!,\n kind: type!,\n roleName: roleName!,\n description: description!,\n roleType: roleType!,\n permissions: permissions!,\n assignableScopes: assignableScopes!,\n };\n },\n },\n folderUriParts(folderUri: string): { folderName: string; folderUri: string } {\n const uriParts = folderUri.split(\"/\");\n const folderName = uriParts.pop();\n const storageUri = uriParts.join(\"/\");\n\n if (!folderName) {\n throw new Error(\"The provided folder URI is missing the folder name.\");\n }\n\n return {\n folderName,\n folderUri: storageUri,\n };\n },\n};\n"]}
1
+ {"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../src/mappings.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AASrB,QAAA,QAAQ,GAAG;IACtB,cAAc,EAAE;QACd,iBAAiB,CAAC,cAA8B;YAC9C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;YACtD,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;YAClE,OAAO;gBACL,EAAE,EAAE,EAAG;gBACP,IAAI,EAAE,IAAK;gBACX,IAAI,EAAE,IAAK;gBACX,UAAU,EAAE;oBACV,KAAK,EAAE,KAA0B;oBACjC,gBAAgB,EAAE,gBAAiB;oBACnC,WAAW,EAAE,WAAY;iBAC1B;aACF,CAAC;QACJ,CAAC;KACF;IACD,cAAc,EAAE;QACd,iBAAiB,CAAC,cAA8B;YAC9C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,GACtF,cAAc,CAAC;YACjB,OAAO;gBACL,EAAE,EAAE,EAAG;gBACP,IAAI,EAAE,IAAK;gBACX,IAAI,EAAE,IAAK;gBACX,QAAQ,EAAE,QAAS;gBACnB,WAAW,EAAE,WAAY;gBACzB,QAAQ,EAAE,QAAS;gBACnB,WAAW,EAAE,WAAY;gBACzB,gBAAgB,EAAE,gBAAiB;aACpC,CAAC;QACJ,CAAC;KACF;IACD,cAAc,CAAC,SAAiB;QAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEtC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QAED,OAAO;YACL,UAAU;YACV,SAAS,EAAE,UAAU;SACtB,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n KeyVaultRoleAssignment,\n KeyVaultRoleDefinition,\n KeyVaultRoleScope,\n} from \"./accessControlModels.js\";\nimport type { RoleAssignment, RoleDefinition } from \"./generated/models/index.js\";\n\nexport const mappings = {\n roleAssignment: {\n generatedToPublic(roleAssignment: RoleAssignment): KeyVaultRoleAssignment {\n const { id, name, type, properties } = roleAssignment;\n const { scope, roleDefinitionId, principalId } = properties || {};\n return {\n id: id!,\n name: name!,\n kind: type!,\n properties: {\n scope: scope as KeyVaultRoleScope,\n roleDefinitionId: roleDefinitionId!,\n principalId: principalId!,\n },\n };\n },\n },\n roleDefinition: {\n generatedToPublic(roleDefinition: RoleDefinition): KeyVaultRoleDefinition {\n const { id, name, type, roleName, description, roleType, permissions, assignableScopes } =\n roleDefinition;\n return {\n id: id!,\n name: name!,\n kind: type!,\n roleName: roleName!,\n description: description!,\n roleType: roleType!,\n permissions: permissions!,\n assignableScopes: assignableScopes!,\n };\n },\n },\n folderUriParts(folderUri: string): { folderName: string; folderUri: string } {\n const uriParts = folderUri.split(\"/\");\n const folderName = uriParts.pop();\n const storageUri = uriParts.join(\"/\");\n\n if (!folderName) {\n throw new Error(\"The provided folder URI is missing the folder name.\");\n }\n\n return {\n folderName,\n folderUri: storageUri,\n };\n },\n};\n"]}
@@ -1,5 +1,5 @@
1
- import { TokenCredential } from "@azure/core-auth";
2
- import { UpdateSettingOptions, GetSettingOptions, ListSettingsOptions, ListSettingsResponse, KeyVaultSetting, SettingsClientOptions, BooleanKeyVaultSetting } from "./settingsClientModels.js";
1
+ import type { TokenCredential } from "@azure/core-auth";
2
+ import type { UpdateSettingOptions, GetSettingOptions, ListSettingsOptions, ListSettingsResponse, KeyVaultSetting, SettingsClientOptions, BooleanKeyVaultSetting } from "./settingsClientModels.js";
3
3
  /**
4
4
  * Determines whether a given {@link KeyVaultSetting} is a {@link BooleanKeyVaultSetting}, i.e. has a boolean value.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"settingsClient.d.ts","sourceRoot":"","sources":["../../src/settingsClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKnD,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAkBnC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,IAAI,sBAAsB,CAE5F;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IACjC;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;;OAiBG;gBAES,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,OAAO,GAAE,qBAA0B;IA0B9F;;;;;OAKG;IACG,aAAa,CACjB,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,eAAe,CAAC;IAM3B;;;;;OAKG;IACG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIhG;;;;OAIG;IAEG,WAAW,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAIpF"}
1
+ {"version":3,"file":"settingsClient.d.ts","sourceRoot":"","sources":["../../src/settingsClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMxD,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAkBnC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,IAAI,sBAAsB,CAE5F;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IACjC;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;;OAiBG;gBAES,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,OAAO,GAAE,qBAA0B;IA0B9F;;;;;OAKG;IACG,aAAa,CACjB,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,eAAe,CAAC;IAM3B;;;;;OAKG;IACG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIhG;;;;OAIG;IAEG,WAAW,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAIpF"}
@@ -1 +1 @@
1
- {"version":3,"file":"settingsClient.js","sourceRoot":"","sources":["../../src/settingsClient.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAoClC,4CAEC;AAnCD,4DAAsE;AACtE,iDAAoD;AACpD,mDAAmF;AACnF,qCAAkC;AAWlC,SAAS,WAAW,CAAC,gBAAkC;IACrD,IAAI,gBAAgB,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,KAAK,EAAE,gBAAgB,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;SACxD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,KAAK,EAAE,gBAAgB,CAAC,KAAK;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAwB;IACvD,OAAO,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC;AAC1E,CAAC;AAED;;;GAGG;AACH,MAAa,sBAAsB;IAWjC;;;;;;;;;;;;;;;;;OAiBG;IACH,8DAA8D;IAC9D,YAAY,QAAgB,EAAE,UAA2B,EAAE,UAAiC,EAAE;QAC5F,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,IAAI,iCAAkB,CAAC;QAEhE,MAAM,aAAa,mCACd,OAAO,KACV,cAAc,EAAE;gBACd,MAAM,EAAE,eAAM,CAAC,IAAI;gBACnB,4BAA4B,EAAE;oBAC5B,sBAAsB;oBACtB,4BAA4B;oBAC5B,+BAA+B;iBAChC;aACF,GACF,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAc,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAE5D,wGAAwG;QACxG,2EAA2E;QAC3E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAA,8CAA4B,EAAC,UAAU,EAAE,aAAa,CAAC,EAAE;YACtF,aAAa,EAAE,CAAC,uBAAuB,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CACjB,OAAwB,EACxB,UAAgC,EAAE;QAElC,OAAO,WAAW,CAChB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAC7F,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,UAA6B,EAAE;QACnE,OAAO,WAAW,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACH,8DAA8D;IAC9D,KAAK,CAAC,WAAW,CAAC,UAA+B,EAAE;;QACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3E,OAAO,EAAE,QAAQ,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,WAAW,CAAC,mCAAI,EAAE,EAAE,CAAC;IACxD,CAAC;CACF;AA3FD,wDA2FC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { TokenCredential } from \"@azure/core-auth\";\nimport { keyVaultAuthenticationPolicy } from \"@azure/keyvault-common\";\nimport { LATEST_API_VERSION } from \"./constants.js\";\nimport { KeyVaultClient, Setting as GeneratedSetting } from \"./generated/index.js\";\nimport { logger } from \"./log.js\";\nimport {\n UpdateSettingOptions,\n GetSettingOptions,\n ListSettingsOptions,\n ListSettingsResponse,\n KeyVaultSetting,\n SettingsClientOptions,\n BooleanKeyVaultSetting,\n} from \"./settingsClientModels.js\";\n\nfunction makeSetting(generatedSetting: GeneratedSetting): KeyVaultSetting {\n if (generatedSetting.type === \"boolean\") {\n return {\n kind: \"boolean\",\n name: generatedSetting.name,\n value: generatedSetting.value === \"true\" ? true : false,\n };\n } else {\n return {\n kind: generatedSetting.type,\n name: generatedSetting.name,\n value: generatedSetting.value,\n };\n }\n}\n\n/**\n * Determines whether a given {@link KeyVaultSetting} is a {@link BooleanKeyVaultSetting}, i.e. has a boolean value.\n */\nexport function isBooleanSetting(setting: KeyVaultSetting): setting is BooleanKeyVaultSetting {\n return setting.kind === \"boolean\" && typeof setting.value === \"boolean\";\n}\n\n/**\n * The KeyVaultSettingsClient provides asynchronous methods to create, update, get and list\n * settings for the Azure Key Vault.\n */\nexport class KeyVaultSettingsClient {\n /**\n * The base URL to the vault.\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated Key Vault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of the KeyVaultSettingsClient.\n *\n * Example usage:\n * ```ts\n * import { KeyVaultSettingsClient } from \"@azure/keyvault-admin\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new KeyVaultSettingsClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - the URL of the Key Vault. It should have this shape: `https://${your-key-vault-name}.vault.azure.net`. You should validate that this URL references a valid Key Vault or Managed HSM resource. See https://aka.ms/azsdk/blog/vault-uri for details.\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 options - options used to configure Key Vault API requests.\n\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n constructor(vaultUrl: string, credential: TokenCredential, options: SettingsClientOptions = {}) {\n this.vaultUrl = vaultUrl;\n\n const apiVersion = options.serviceVersion || LATEST_API_VERSION;\n\n const clientOptions = {\n ...options,\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\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(apiVersion, clientOptions);\n\n // The authentication policy must come after the deserialization policy since the deserialization policy\n // converts 401 responses to an Error, and we don't want to deal with that.\n this.client.pipeline.addPolicy(keyVaultAuthenticationPolicy(credential, clientOptions), {\n afterPolicies: [\"deserializationPolicy\"],\n });\n }\n\n /**\n * Updates the named account setting.\n *\n * @param setting - the setting to update. The name of the setting must be a valid settings option.\n * @param options - the optional parameters.\n */\n async updateSetting(\n setting: KeyVaultSetting,\n options: UpdateSettingOptions = {},\n ): Promise<KeyVaultSetting> {\n return makeSetting(\n await this.client.updateSetting(this.vaultUrl, setting.name, String(setting.value), options),\n );\n }\n\n /**\n * Get the value of a specific account setting.\n *\n * @param settingName - the name of the setting.\n * @param options - the optional parameters.\n */\n async getSetting(settingName: string, options: GetSettingOptions = {}): Promise<KeyVaultSetting> {\n return makeSetting(await this.client.getSetting(this.vaultUrl, settingName, options));\n }\n\n /**\n * List the account's settings.\n *\n * @param options - the optional parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n async getSettings(options: ListSettingsOptions = {}): Promise<ListSettingsResponse> {\n const { settings } = await this.client.getSettings(this.vaultUrl, options);\n return { settings: settings?.map(makeSetting) ?? [] };\n }\n}\n"]}
1
+ {"version":3,"file":"settingsClient.js","sourceRoot":"","sources":["../../src/settingsClient.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAqClC,4CAEC;AApCD,4DAAsE;AACtE,iDAAoD;AAEpD,mDAAsD;AACtD,qCAAkC;AAWlC,SAAS,WAAW,CAAC,gBAAkC;IACrD,IAAI,gBAAgB,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,KAAK,EAAE,gBAAgB,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;SACxD,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,IAAI,EAAE,gBAAgB,CAAC,IAAI;YAC3B,KAAK,EAAE,gBAAgB,CAAC,KAAK;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAwB;IACvD,OAAO,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC;AAC1E,CAAC;AAED;;;GAGG;AACH,MAAa,sBAAsB;IAWjC;;;;;;;;;;;;;;;;;OAiBG;IACH,8DAA8D;IAC9D,YAAY,QAAgB,EAAE,UAA2B,EAAE,UAAiC,EAAE;QAC5F,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,IAAI,iCAAkB,CAAC;QAEhE,MAAM,aAAa,mCACd,OAAO,KACV,cAAc,EAAE;gBACd,MAAM,EAAE,eAAM,CAAC,IAAI;gBACnB,4BAA4B,EAAE;oBAC5B,sBAAsB;oBACtB,4BAA4B;oBAC5B,+BAA+B;iBAChC;aACF,GACF,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAc,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAE5D,wGAAwG;QACxG,2EAA2E;QAC3E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAA,8CAA4B,EAAC,UAAU,EAAE,aAAa,CAAC,EAAE;YACtF,aAAa,EAAE,CAAC,uBAAuB,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CACjB,OAAwB,EACxB,UAAgC,EAAE;QAElC,OAAO,WAAW,CAChB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAC7F,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,UAA6B,EAAE;QACnE,OAAO,WAAW,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACH,8DAA8D;IAC9D,KAAK,CAAC,WAAW,CAAC,UAA+B,EAAE;;QACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3E,OAAO,EAAE,QAAQ,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,WAAW,CAAC,mCAAI,EAAE,EAAE,CAAC;IACxD,CAAC;CACF;AA3FD,wDA2FC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport { keyVaultAuthenticationPolicy } from \"@azure/keyvault-common\";\nimport { LATEST_API_VERSION } from \"./constants.js\";\nimport type { Setting as GeneratedSetting } from \"./generated/index.js\";\nimport { KeyVaultClient } from \"./generated/index.js\";\nimport { logger } from \"./log.js\";\nimport type {\n UpdateSettingOptions,\n GetSettingOptions,\n ListSettingsOptions,\n ListSettingsResponse,\n KeyVaultSetting,\n SettingsClientOptions,\n BooleanKeyVaultSetting,\n} from \"./settingsClientModels.js\";\n\nfunction makeSetting(generatedSetting: GeneratedSetting): KeyVaultSetting {\n if (generatedSetting.type === \"boolean\") {\n return {\n kind: \"boolean\",\n name: generatedSetting.name,\n value: generatedSetting.value === \"true\" ? true : false,\n };\n } else {\n return {\n kind: generatedSetting.type,\n name: generatedSetting.name,\n value: generatedSetting.value,\n };\n }\n}\n\n/**\n * Determines whether a given {@link KeyVaultSetting} is a {@link BooleanKeyVaultSetting}, i.e. has a boolean value.\n */\nexport function isBooleanSetting(setting: KeyVaultSetting): setting is BooleanKeyVaultSetting {\n return setting.kind === \"boolean\" && typeof setting.value === \"boolean\";\n}\n\n/**\n * The KeyVaultSettingsClient provides asynchronous methods to create, update, get and list\n * settings for the Azure Key Vault.\n */\nexport class KeyVaultSettingsClient {\n /**\n * The base URL to the vault.\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated Key Vault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of the KeyVaultSettingsClient.\n *\n * Example usage:\n * ```ts\n * import { KeyVaultSettingsClient } from \"@azure/keyvault-admin\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new KeyVaultSettingsClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - the URL of the Key Vault. It should have this shape: `https://${your-key-vault-name}.vault.azure.net`. You should validate that this URL references a valid Key Vault or Managed HSM resource. See https://aka.ms/azsdk/blog/vault-uri for details.\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 options - options used to configure Key Vault API requests.\n\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n constructor(vaultUrl: string, credential: TokenCredential, options: SettingsClientOptions = {}) {\n this.vaultUrl = vaultUrl;\n\n const apiVersion = options.serviceVersion || LATEST_API_VERSION;\n\n const clientOptions = {\n ...options,\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\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(apiVersion, clientOptions);\n\n // The authentication policy must come after the deserialization policy since the deserialization policy\n // converts 401 responses to an Error, and we don't want to deal with that.\n this.client.pipeline.addPolicy(keyVaultAuthenticationPolicy(credential, clientOptions), {\n afterPolicies: [\"deserializationPolicy\"],\n });\n }\n\n /**\n * Updates the named account setting.\n *\n * @param setting - the setting to update. The name of the setting must be a valid settings option.\n * @param options - the optional parameters.\n */\n async updateSetting(\n setting: KeyVaultSetting,\n options: UpdateSettingOptions = {},\n ): Promise<KeyVaultSetting> {\n return makeSetting(\n await this.client.updateSetting(this.vaultUrl, setting.name, String(setting.value), options),\n );\n }\n\n /**\n * Get the value of a specific account setting.\n *\n * @param settingName - the name of the setting.\n * @param options - the optional parameters.\n */\n async getSetting(settingName: string, options: GetSettingOptions = {}): Promise<KeyVaultSetting> {\n return makeSetting(await this.client.getSetting(this.vaultUrl, settingName, options));\n }\n\n /**\n * List the account's settings.\n *\n * @param options - the optional parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n async getSettings(options: ListSettingsOptions = {}): Promise<ListSettingsResponse> {\n const { settings } = await this.client.getSettings(this.vaultUrl, options);\n return { settings: settings?.map(makeSetting) ?? [] };\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { CommonClientOptions, OperationOptions } from "@azure/core-client";
2
- import { SUPPORTED_API_VERSIONS } from "./constants.js";
2
+ import type { SUPPORTED_API_VERSIONS } from "./constants.js";
3
3
  /**
4
4
  * The optional parameters accepted by the KeyVaultSettingsClient.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"settingsClientModels.d.ts","sourceRoot":"","sources":["../../src/settingsClientModels.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE;;OAEG;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC;IAExC;;;OAGG;IACH,oCAAoC,CAAC,EAAE,OAAO,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;CAAG;AAEjE;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;CAAG;AAE9D;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;CAAG;AAEhE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D;;OAEG;IACH,IAAI,EAAE,SAAS,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B"}
1
+ {"version":3,"file":"settingsClientModels.d.ts","sourceRoot":"","sources":["../../src/settingsClientModels.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE;;OAEG;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC;IAExC;;;OAGG;IACH,oCAAoC,CAAC,EAAE,OAAO,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;CAAG;AAEjE;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;CAAG;AAE9D;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;CAAG;AAEhE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D;;OAEG;IACH,IAAI,EAAE,SAAS,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"settingsClientModels.js","sourceRoot":"","sources":["../../src/settingsClientModels.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { SUPPORTED_API_VERSIONS } from \"./constants.js\";\n\n/**\n * The optional parameters accepted by the KeyVaultSettingsClient.\n */\nexport interface SettingsClientOptions extends CommonClientOptions {\n /**\n * The accepted versions of the Key Vault's service API.\n */\n serviceVersion?: SUPPORTED_API_VERSIONS;\n\n /**\n * Whether to disable verification that the authentication challenge resource matches the Key Vault or Managed HSM domain.\n * Defaults to false.\n */\n disableChallengeResourceVerification?: boolean;\n}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.updateSetting}\n */\nexport interface UpdateSettingOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.getSetting}\n */\nexport interface GetSettingOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.listSettings}\n */\nexport interface ListSettingsOptions extends OperationOptions {}\n\n/**\n * A Key Vault setting.\n */\nexport interface KeyVaultSetting {\n /**\n * The kind of the setting.\n */\n kind?: string;\n\n /**\n * The name of the setting.\n */\n name: string;\n\n /**\n * The value of a setting. The type of the value depends on the value of the kind property.\n */\n value: unknown;\n}\n\n/**\n * A Key Vault setting of boolean type. To check if a given KeyVaultSetting is a boolean, use {@link isBooleanSetting}.\n */\nexport interface BooleanKeyVaultSetting extends KeyVaultSetting {\n /**\n * The kind of the setting.\n */\n kind: \"boolean\";\n\n /**\n * The value of the setting as a boolean.\n */\n value: boolean;\n}\n\n/**\n * An interface representing the response returned by {@link KeyVaultSettingsClient.listSettings}\n */\nexport interface ListSettingsResponse {\n /**\n * The account's settings.\n */\n settings: KeyVaultSetting[];\n}\n"]}
1
+ {"version":3,"file":"settingsClientModels.js","sourceRoot":"","sources":["../../src/settingsClientModels.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport type { SUPPORTED_API_VERSIONS } from \"./constants.js\";\n\n/**\n * The optional parameters accepted by the KeyVaultSettingsClient.\n */\nexport interface SettingsClientOptions extends CommonClientOptions {\n /**\n * The accepted versions of the Key Vault's service API.\n */\n serviceVersion?: SUPPORTED_API_VERSIONS;\n\n /**\n * Whether to disable verification that the authentication challenge resource matches the Key Vault or Managed HSM domain.\n * Defaults to false.\n */\n disableChallengeResourceVerification?: boolean;\n}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.updateSetting}\n */\nexport interface UpdateSettingOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.getSetting}\n */\nexport interface GetSettingOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be passed to {@link KeyVaultSettingsClient.listSettings}\n */\nexport interface ListSettingsOptions extends OperationOptions {}\n\n/**\n * A Key Vault setting.\n */\nexport interface KeyVaultSetting {\n /**\n * The kind of the setting.\n */\n kind?: string;\n\n /**\n * The name of the setting.\n */\n name: string;\n\n /**\n * The value of a setting. The type of the value depends on the value of the kind property.\n */\n value: unknown;\n}\n\n/**\n * A Key Vault setting of boolean type. To check if a given KeyVaultSetting is a boolean, use {@link isBooleanSetting}.\n */\nexport interface BooleanKeyVaultSetting extends KeyVaultSetting {\n /**\n * The kind of the setting.\n */\n kind: \"boolean\";\n\n /**\n * The value of the setting as a boolean.\n */\n value: boolean;\n}\n\n/**\n * An interface representing the response returned by {@link KeyVaultSettingsClient.listSettings}\n */\nexport interface ListSettingsResponse {\n /**\n * The account's settings.\n */\n settings: KeyVaultSetting[];\n}\n"]}
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.47.9"
8
+ "packageVersion": "7.47.11"
9
9
  }
10
10
  ]
11
11
  }
@@ -1,6 +1,6 @@
1
- import { AccessControlClientOptions, CreateRoleAssignmentOptions, DeleteRoleAssignmentOptions, DeleteRoleDefinitionOptions, GetRoleAssignmentOptions, GetRoleDefinitionOptions, KeyVaultRoleAssignment, KeyVaultRoleDefinition, KeyVaultRoleScope, ListRoleAssignmentsOptions, ListRoleDefinitionsOptions, SetRoleDefinitionOptions } from "./accessControlModels.js";
2
- import { PagedAsyncIterableIterator } from "@azure/core-paging";
3
- import { TokenCredential } from "@azure/core-auth";
1
+ import type { AccessControlClientOptions, CreateRoleAssignmentOptions, DeleteRoleAssignmentOptions, DeleteRoleDefinitionOptions, GetRoleAssignmentOptions, GetRoleDefinitionOptions, KeyVaultRoleAssignment, KeyVaultRoleDefinition, KeyVaultRoleScope, ListRoleAssignmentsOptions, ListRoleDefinitionsOptions, SetRoleDefinitionOptions } from "./accessControlModels.js";
2
+ import type { PagedAsyncIterableIterator } from "@azure/core-paging";
3
+ import type { TokenCredential } from "@azure/core-auth";
4
4
  /**
5
5
  * The KeyVaultAccessControlClient provides methods to manage
6
6
  * access control and role assignments in any given Azure Key Vault instance.
@@ -1 +1 @@
1
- {"version":3,"file":"accessControlClient.d.ts","sourceRoot":"","sources":["../../src/accessControlClient.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,0BAA0B,EAE1B,0BAA0B,EAE1B,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD;;;;GAIG;AACH,qBAAa,2BAA2B;IACtC;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;OAgBG;gBAED,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAE3B,OAAO,GAAE,0BAA+B;IA2B1C;;;;;;;;;;;;;;;;OAgBG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,sBAAsB,CAAC;IAsBlC;;;;;;;;;;;;;OAaG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,IAAI,CAAC;IAUhB;;;;;;;;;;;;;;OAcG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAgBlC;;;;;OAKG;YACY,uBAAuB;IAyCtC;;;;OAIG;YACY,sBAAsB;IASrC;;;;;;;;;;;;;OAaG;IACI,mBAAmB,CACxB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,0BAA+B,GACvC,0BAA0B,CAAC,sBAAsB,CAAC;IAerD;;;;;OAKG;YACY,uBAAuB;IAuCtC;;;;OAIG;YACY,sBAAsB;IASrC;;;;;;;;;;;;;OAaG;IACI,mBAAmB,CACxB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,0BAA+B,GACvC,0BAA0B,CAAC,sBAAsB,CAAC;IAerD;;;;;;;;;;;;OAYG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAgBlC;;;;;;;;;;;;;OAaG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAyBlC;;;;;;;;;;;;OAYG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,IAAI,CAAC;CASjB"}
1
+ {"version":3,"file":"accessControlClient.d.ts","sourceRoot":"","sources":["../../src/accessControlClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,0BAA0B,EAE1B,0BAA0B,EAE1B,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAErE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOxD;;;;GAIG;AACH,qBAAa,2BAA2B;IACtC;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;OAgBG;gBAED,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAE3B,OAAO,GAAE,0BAA+B;IA2B1C;;;;;;;;;;;;;;;;OAgBG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,sBAAsB,CAAC;IAsBlC;;;;;;;;;;;;;OAaG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,IAAI,CAAC;IAUhB;;;;;;;;;;;;;;OAcG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAgBlC;;;;;OAKG;YACY,uBAAuB;IAyCtC;;;;OAIG;YACY,sBAAsB;IASrC;;;;;;;;;;;;;OAaG;IACI,mBAAmB,CACxB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,0BAA+B,GACvC,0BAA0B,CAAC,sBAAsB,CAAC;IAerD;;;;;OAKG;YACY,uBAAuB;IAuCtC;;;;OAIG;YACY,sBAAsB;IASrC;;;;;;;;;;;;;OAaG;IACI,mBAAmB,CACxB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,0BAA+B,GACvC,0BAA0B,CAAC,sBAAsB,CAAC;IAerD;;;;;;;;;;;;OAYG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAgBlC;;;;;;;;;;;;;OAaG;IACI,iBAAiB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC;IAyBlC;;;;;;;;;;;;OAYG;IACI,oBAAoB,CACzB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,IAAI,CAAC;CASjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"accessControlClient.js","sourceRoot":"","sources":["../../src/accessControlClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n AccessControlClientOptions,\n CreateRoleAssignmentOptions,\n DeleteRoleAssignmentOptions,\n DeleteRoleDefinitionOptions,\n GetRoleAssignmentOptions,\n GetRoleDefinitionOptions,\n KeyVaultRoleAssignment,\n KeyVaultRoleDefinition,\n KeyVaultRoleScope,\n ListRoleAssignmentsOptions,\n ListRoleAssignmentsPageSettings,\n ListRoleDefinitionsOptions,\n ListRoleDefinitionsPageSettings,\n SetRoleDefinitionOptions,\n} from \"./accessControlModels.js\";\nimport { KeyVaultClient } from \"./generated/keyVaultClient.js\";\nimport { LATEST_API_VERSION } from \"./constants.js\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { RoleAssignmentsListForScopeOptionalParams } from \"./generated/models/index.js\";\nimport { TokenCredential } from \"@azure/core-auth\";\nimport { keyVaultAuthenticationPolicy } from \"@azure/keyvault-common\";\nimport { logger } from \"./log.js\";\nimport { mappings } from \"./mappings.js\";\nimport { tracingClient } from \"./tracing.js\";\nimport { randomUUID } from \"@azure/core-util\";\n\n/**\n * The KeyVaultAccessControlClient provides methods to manage\n * access control and role assignments in any given Azure Key Vault instance.\n * The client supports creating, retrieving and deleting roles.\n */\nexport class KeyVaultAccessControlClient {\n /**\n * The base URL to the vault\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated Key Vault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of the KeyVaultAccessControlClient.\n *\n * Example usage:\n * ```ts\n * import { KeyVaultAccessControlClient } from \"@azure/keyvault-admin\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new KeyVaultAccessControlClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - the URL of the Key Vault. It should have this shape: `https://${your-key-vault-name}.vault.azure.net`. You should validate that this URL references a valid Key Vault or Managed HSM resource. See https://aka.ms/azsdk/blog/vault-uri for details.\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 options - Options used to configure Key Vault API requests. Omit this parameter to use the default configuration.\n */\n constructor(\n vaultUrl: string,\n credential: TokenCredential,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: AccessControlClientOptions = {},\n ) {\n this.vaultUrl = vaultUrl;\n\n const serviceVersion = options.serviceVersion || LATEST_API_VERSION;\n\n const clientOptions = {\n ...options,\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\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(serviceVersion, clientOptions);\n\n // The authentication policy must come after the deserialization policy since the deserialization policy\n // converts 401 responses to an Error, and we don't want to deal with that.\n this.client.pipeline.addPolicy(keyVaultAuthenticationPolicy(credential, clientOptions), {\n afterPolicies: [\"deserializationPolicy\"],\n });\n }\n\n /**\n * Creates a role assignment in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.listRoleDefinitions(\"/\").next();\n * const principalId = \"4871f6a6-374f-4b6b-8b0c-f5d84db823f6\";\n * const result = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\", roleDefinition, principalId);\n * ```\n * Creates a new role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment. Must be a UUID.\n * @param roleDefinitionId - The role definition ID used in the role assignment.\n * @param principalId - The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group.\n * @param options - The optional parameters.\n */\n public createRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n roleDefinitionId: string,\n principalId: string,\n options: CreateRoleAssignmentOptions = {},\n ): Promise<KeyVaultRoleAssignment> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.createRoleAssignment\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleAssignments.create(\n this.vaultUrl,\n roleScope,\n name,\n {\n properties: {\n roleDefinitionId,\n principalId,\n },\n },\n updatedOptions,\n );\n return mappings.roleAssignment.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deletes role assignments previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleAssignment = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\");\n * await client.deleteRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);\n * ```\n * Deletes an existing role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment.\n * @param options - The optional parameters.\n */\n public deleteRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: DeleteRoleAssignmentOptions = {},\n ): Promise<void> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.deleteRoleAssignment\",\n options,\n async (updatedOptions) => {\n await this.client.roleAssignments.delete(this.vaultUrl, roleScope, name, updatedOptions);\n },\n );\n }\n\n /**\n * Gets a role assignments previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * let roleAssignment = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\");\n * roleAssignment = const await client.getRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);\n * console.log(roleAssignment);\n * ```\n * Gets an existing role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment.\n * @param options - The optional parameters.\n */\n public getRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: GetRoleAssignmentOptions = {},\n ): Promise<KeyVaultRoleAssignment> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.getRoleAssignment\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleAssignments.get(\n this.vaultUrl,\n roleScope,\n name,\n updatedOptions,\n );\n return mappings.roleAssignment.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deals with the pagination of {@link listRoleAssignments}.\n * @param roleScope - The scope of the role assignments.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleAssignmentsPage(\n roleScope: KeyVaultRoleScope,\n continuationState: ListRoleAssignmentsPageSettings,\n options?: ListRoleAssignmentsOptions,\n ): AsyncIterableIterator<KeyVaultRoleAssignment[]> {\n if (!continuationState.continuationToken) {\n const optionsComplete: RoleAssignmentsListForScopeOptionalParams = options || {};\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleAssignmentsPage\",\n optionsComplete,\n async (updatedOptions) => {\n return this.client.roleAssignments.listForScope(this.vaultUrl, roleScope, updatedOptions);\n },\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleAssignment.generatedToPublic, this);\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleAssignmentsPage\",\n options || {},\n async (updatedOptions) => {\n return this.client.roleAssignments.listForScopeNext(\n this.vaultUrl,\n roleScope,\n continuationState.continuationToken!,\n updatedOptions,\n );\n },\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleAssignment.generatedToPublic, this);\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRoleAssignments}.\n * @param roleScope - The scope of the role assignments.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleAssignmentsAll(\n roleScope: KeyVaultRoleScope,\n options?: ListRoleAssignmentsOptions,\n ): AsyncIterableIterator<KeyVaultRoleAssignment> {\n for await (const page of this.listRoleAssignmentsPage(roleScope, {}, options)) {\n yield* page;\n }\n }\n\n /**\n * Iterates over all of the available role assignments in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * let client = new KeyVaultAccessControlClient(url, credentials);\n * for await (const roleAssignment of client.listRoleAssignments(\"/\")) {\n * console.log(\"Role assignment: \", roleAssignment);\n * }\n * ```\n * Lists all of the role assignments in a given scope.\n * @param roleScope - The scope of the role assignments.\n * @param options - The optional parameters.\n */\n public listRoleAssignments(\n roleScope: KeyVaultRoleScope,\n options: ListRoleAssignmentsOptions = {},\n ): PagedAsyncIterableIterator<KeyVaultRoleAssignment> {\n const iter = this.listRoleAssignmentsAll(roleScope, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: ListRoleAssignmentsPageSettings = {}) =>\n this.listRoleAssignmentsPage(roleScope, settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listRoleDefinitions}.\n * @param roleScope - The scope of the role definition.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleDefinitionsPage(\n roleScope: KeyVaultRoleScope,\n continuationState: ListRoleDefinitionsPageSettings,\n options: ListRoleDefinitionsOptions = {},\n ): AsyncIterableIterator<KeyVaultRoleDefinition[]> {\n if (!continuationState.continuationToken) {\n const optionsComplete: RoleAssignmentsListForScopeOptionalParams = options || {};\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleDefinitionsPage\",\n optionsComplete,\n (updatedOptions) =>\n this.client.roleDefinitions.list(this.vaultUrl, roleScope, updatedOptions),\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleDefinition.generatedToPublic, this);\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleDefinitionsPage\",\n options,\n (updatedOptions) =>\n this.client.roleDefinitions.listNext(\n this.vaultUrl,\n roleScope,\n continuationState.continuationToken!,\n updatedOptions,\n ),\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleDefinition.generatedToPublic, this);\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRoleDefinitions}.\n * @param roleScope - The scope of the role definition.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleDefinitionsAll(\n roleScope: KeyVaultRoleScope,\n options?: ListRoleDefinitionsOptions,\n ): AsyncIterableIterator<KeyVaultRoleDefinition> {\n for await (const page of this.listRoleDefinitionsPage(roleScope, {}, options)) {\n yield* page;\n }\n }\n\n /**\n * Iterates over all of the available role definitions in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * let client = new KeyVaultAccessControlClient(url, credentials);\n * for await (const roleDefinitions of client.listRoleDefinitions(\"/\")) {\n * console.log(\"Role definition: \", roleDefinitions);\n * }\n * ```\n * Lists all of the role definition in a given scope.\n * @param roleScope - The scope of the role definition.\n * @param options - The optional parameters.\n */\n public listRoleDefinitions(\n roleScope: KeyVaultRoleScope,\n options: ListRoleDefinitionsOptions = {},\n ): PagedAsyncIterableIterator<KeyVaultRoleDefinition> {\n const iter = this.listRoleDefinitionsAll(roleScope, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: ListRoleDefinitionsPageSettings = {}) =>\n this.listRoleDefinitionsPage(roleScope, settings, options),\n };\n }\n\n /**\n * Gets a role definition from Azure Key Vault.\n *\n * Example usage:\n * ```\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.getRoleDefinition(\"/\", \"b86a8fe4-44ce-4948-aee5-eccb2c155cd7\");\n * console.log(roleDefinition);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param name - The name of the role definition.\n * @param options - The optional parameters.\n */\n public getRoleDefinition(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: GetRoleDefinitionOptions = {},\n ): Promise<KeyVaultRoleDefinition> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.getRoleDefinition\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleDefinitions.get(\n this.vaultUrl,\n roleScope,\n name,\n updatedOptions,\n );\n return mappings.roleDefinition.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Creates or updates a role definition in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const permissions = [{ dataActions: [KnownKeyVaultDataAction.BackupHsmKeys] }];\n * const roleDefinitionName = \"23b8bb1a-39c0-4c89-a85b-dd3c99273a8a\";\n * const roleDefinition = await client.setRoleDefinition(KnownKeyVaultRoleScope.Global, { permissions, roleDefinitionName });\n * console.log(roleDefinition);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param options - The optional parameters.\n */\n public setRoleDefinition(\n roleScope: KeyVaultRoleScope,\n options: SetRoleDefinitionOptions = {},\n ): Promise<KeyVaultRoleDefinition> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.setRoleDefinition\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleDefinitions.createOrUpdate(\n this.vaultUrl,\n roleScope,\n options.roleDefinitionName || randomUUID(),\n {\n properties: {\n description: options.description,\n permissions: options.permissions,\n assignableScopes: [roleScope],\n roleName: options.roleName,\n roleType: \"CustomRole\",\n },\n },\n updatedOptions,\n );\n return mappings.roleDefinition.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deletes a custom role definition previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.setRoleDefinition(\"/\", \"23b8bb1a-39c0-4c89-a85b-dd3c99273a8a\", []);\n * await client.deleteRoleDefinition(\"/\", roleDefinition.name);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param name - The name of the role definition to delete.\n * @param options - The optional parameters.\n */\n public deleteRoleDefinition(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: DeleteRoleDefinitionOptions = {},\n ): Promise<void> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.deleteRoleDefinition\",\n options,\n async (updatedOptions) => {\n await this.client.roleDefinitions.delete(this.vaultUrl, roleScope, name, updatedOptions);\n },\n );\n }\n}\n"]}
1
+ {"version":3,"file":"accessControlClient.js","sourceRoot":"","sources":["../../src/accessControlClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport type {\n AccessControlClientOptions,\n CreateRoleAssignmentOptions,\n DeleteRoleAssignmentOptions,\n DeleteRoleDefinitionOptions,\n GetRoleAssignmentOptions,\n GetRoleDefinitionOptions,\n KeyVaultRoleAssignment,\n KeyVaultRoleDefinition,\n KeyVaultRoleScope,\n ListRoleAssignmentsOptions,\n ListRoleAssignmentsPageSettings,\n ListRoleDefinitionsOptions,\n ListRoleDefinitionsPageSettings,\n SetRoleDefinitionOptions,\n} from \"./accessControlModels.js\";\nimport { KeyVaultClient } from \"./generated/keyVaultClient.js\";\nimport { LATEST_API_VERSION } from \"./constants.js\";\nimport type { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport type { RoleAssignmentsListForScopeOptionalParams } from \"./generated/models/index.js\";\nimport type { TokenCredential } from \"@azure/core-auth\";\nimport { keyVaultAuthenticationPolicy } from \"@azure/keyvault-common\";\nimport { logger } from \"./log.js\";\nimport { mappings } from \"./mappings.js\";\nimport { tracingClient } from \"./tracing.js\";\nimport { randomUUID } from \"@azure/core-util\";\n\n/**\n * The KeyVaultAccessControlClient provides methods to manage\n * access control and role assignments in any given Azure Key Vault instance.\n * The client supports creating, retrieving and deleting roles.\n */\nexport class KeyVaultAccessControlClient {\n /**\n * The base URL to the vault\n */\n public readonly vaultUrl: string;\n\n /**\n * A reference to the auto-generated Key Vault HTTP client.\n */\n private readonly client: KeyVaultClient;\n\n /**\n * Creates an instance of the KeyVaultAccessControlClient.\n *\n * Example usage:\n * ```ts\n * import { KeyVaultAccessControlClient } from \"@azure/keyvault-admin\";\n * import { DefaultAzureCredential } from \"@azure/identity\";\n *\n * let vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;\n * let credentials = new DefaultAzureCredential();\n *\n * let client = new KeyVaultAccessControlClient(vaultUrl, credentials);\n * ```\n * @param vaultUrl - the URL of the Key Vault. It should have this shape: `https://${your-key-vault-name}.vault.azure.net`. You should validate that this URL references a valid Key Vault or Managed HSM resource. See https://aka.ms/azsdk/blog/vault-uri for details.\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 options - Options used to configure Key Vault API requests. Omit this parameter to use the default configuration.\n */\n constructor(\n vaultUrl: string,\n credential: TokenCredential,\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: AccessControlClientOptions = {},\n ) {\n this.vaultUrl = vaultUrl;\n\n const serviceVersion = options.serviceVersion || LATEST_API_VERSION;\n\n const clientOptions = {\n ...options,\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\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(serviceVersion, clientOptions);\n\n // The authentication policy must come after the deserialization policy since the deserialization policy\n // converts 401 responses to an Error, and we don't want to deal with that.\n this.client.pipeline.addPolicy(keyVaultAuthenticationPolicy(credential, clientOptions), {\n afterPolicies: [\"deserializationPolicy\"],\n });\n }\n\n /**\n * Creates a role assignment in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.listRoleDefinitions(\"/\").next();\n * const principalId = \"4871f6a6-374f-4b6b-8b0c-f5d84db823f6\";\n * const result = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\", roleDefinition, principalId);\n * ```\n * Creates a new role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment. Must be a UUID.\n * @param roleDefinitionId - The role definition ID used in the role assignment.\n * @param principalId - The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group.\n * @param options - The optional parameters.\n */\n public createRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n roleDefinitionId: string,\n principalId: string,\n options: CreateRoleAssignmentOptions = {},\n ): Promise<KeyVaultRoleAssignment> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.createRoleAssignment\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleAssignments.create(\n this.vaultUrl,\n roleScope,\n name,\n {\n properties: {\n roleDefinitionId,\n principalId,\n },\n },\n updatedOptions,\n );\n return mappings.roleAssignment.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deletes role assignments previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleAssignment = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\");\n * await client.deleteRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);\n * ```\n * Deletes an existing role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment.\n * @param options - The optional parameters.\n */\n public deleteRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: DeleteRoleAssignmentOptions = {},\n ): Promise<void> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.deleteRoleAssignment\",\n options,\n async (updatedOptions) => {\n await this.client.roleAssignments.delete(this.vaultUrl, roleScope, name, updatedOptions);\n },\n );\n }\n\n /**\n * Gets a role assignments previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * let roleAssignment = await client.createRoleAssignment(\"/\", \"295c179b-9ad3-4117-99cd-b1aa66cf4517\");\n * roleAssignment = const await client.getRoleAssignment(roleAssignment.properties.roleScope, roleAssignment.name);\n * console.log(roleAssignment);\n * ```\n * Gets an existing role assignment.\n * @param roleScope - The scope of the role assignment.\n * @param name - The name of the role assignment.\n * @param options - The optional parameters.\n */\n public getRoleAssignment(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: GetRoleAssignmentOptions = {},\n ): Promise<KeyVaultRoleAssignment> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.getRoleAssignment\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleAssignments.get(\n this.vaultUrl,\n roleScope,\n name,\n updatedOptions,\n );\n return mappings.roleAssignment.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deals with the pagination of {@link listRoleAssignments}.\n * @param roleScope - The scope of the role assignments.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleAssignmentsPage(\n roleScope: KeyVaultRoleScope,\n continuationState: ListRoleAssignmentsPageSettings,\n options?: ListRoleAssignmentsOptions,\n ): AsyncIterableIterator<KeyVaultRoleAssignment[]> {\n if (!continuationState.continuationToken) {\n const optionsComplete: RoleAssignmentsListForScopeOptionalParams = options || {};\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleAssignmentsPage\",\n optionsComplete,\n async (updatedOptions) => {\n return this.client.roleAssignments.listForScope(this.vaultUrl, roleScope, updatedOptions);\n },\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleAssignment.generatedToPublic, this);\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleAssignmentsPage\",\n options || {},\n async (updatedOptions) => {\n return this.client.roleAssignments.listForScopeNext(\n this.vaultUrl,\n roleScope,\n continuationState.continuationToken!,\n updatedOptions,\n );\n },\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleAssignment.generatedToPublic, this);\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRoleAssignments}.\n * @param roleScope - The scope of the role assignments.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleAssignmentsAll(\n roleScope: KeyVaultRoleScope,\n options?: ListRoleAssignmentsOptions,\n ): AsyncIterableIterator<KeyVaultRoleAssignment> {\n for await (const page of this.listRoleAssignmentsPage(roleScope, {}, options)) {\n yield* page;\n }\n }\n\n /**\n * Iterates over all of the available role assignments in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * let client = new KeyVaultAccessControlClient(url, credentials);\n * for await (const roleAssignment of client.listRoleAssignments(\"/\")) {\n * console.log(\"Role assignment: \", roleAssignment);\n * }\n * ```\n * Lists all of the role assignments in a given scope.\n * @param roleScope - The scope of the role assignments.\n * @param options - The optional parameters.\n */\n public listRoleAssignments(\n roleScope: KeyVaultRoleScope,\n options: ListRoleAssignmentsOptions = {},\n ): PagedAsyncIterableIterator<KeyVaultRoleAssignment> {\n const iter = this.listRoleAssignmentsAll(roleScope, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: ListRoleAssignmentsPageSettings = {}) =>\n this.listRoleAssignmentsPage(roleScope, settings, options),\n };\n }\n\n /**\n * Deals with the pagination of {@link listRoleDefinitions}.\n * @param roleScope - The scope of the role definition.\n * @param continuationState - An object that indicates the position of the paginated request.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleDefinitionsPage(\n roleScope: KeyVaultRoleScope,\n continuationState: ListRoleDefinitionsPageSettings,\n options: ListRoleDefinitionsOptions = {},\n ): AsyncIterableIterator<KeyVaultRoleDefinition[]> {\n if (!continuationState.continuationToken) {\n const optionsComplete: RoleAssignmentsListForScopeOptionalParams = options || {};\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleDefinitionsPage\",\n optionsComplete,\n (updatedOptions) =>\n this.client.roleDefinitions.list(this.vaultUrl, roleScope, updatedOptions),\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleDefinition.generatedToPublic, this);\n }\n }\n while (continuationState.continuationToken) {\n const currentSetResponse = await tracingClient.withSpan(\n \"KeyVaultAccessControlClient.listRoleDefinitionsPage\",\n options,\n (updatedOptions) =>\n this.client.roleDefinitions.listNext(\n this.vaultUrl,\n roleScope,\n continuationState.continuationToken!,\n updatedOptions,\n ),\n );\n continuationState.continuationToken = currentSetResponse.nextLink;\n if (currentSetResponse.value) {\n yield currentSetResponse.value.map(mappings.roleDefinition.generatedToPublic, this);\n } else {\n break;\n }\n }\n }\n\n /**\n * Deals with the iteration of all the available results of {@link listRoleDefinitions}.\n * @param roleScope - The scope of the role definition.\n * @param options - Common options for the iterative endpoints.\n */\n private async *listRoleDefinitionsAll(\n roleScope: KeyVaultRoleScope,\n options?: ListRoleDefinitionsOptions,\n ): AsyncIterableIterator<KeyVaultRoleDefinition> {\n for await (const page of this.listRoleDefinitionsPage(roleScope, {}, options)) {\n yield* page;\n }\n }\n\n /**\n * Iterates over all of the available role definitions in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * let client = new KeyVaultAccessControlClient(url, credentials);\n * for await (const roleDefinitions of client.listRoleDefinitions(\"/\")) {\n * console.log(\"Role definition: \", roleDefinitions);\n * }\n * ```\n * Lists all of the role definition in a given scope.\n * @param roleScope - The scope of the role definition.\n * @param options - The optional parameters.\n */\n public listRoleDefinitions(\n roleScope: KeyVaultRoleScope,\n options: ListRoleDefinitionsOptions = {},\n ): PagedAsyncIterableIterator<KeyVaultRoleDefinition> {\n const iter = this.listRoleDefinitionsAll(roleScope, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: ListRoleDefinitionsPageSettings = {}) =>\n this.listRoleDefinitionsPage(roleScope, settings, options),\n };\n }\n\n /**\n * Gets a role definition from Azure Key Vault.\n *\n * Example usage:\n * ```\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.getRoleDefinition(\"/\", \"b86a8fe4-44ce-4948-aee5-eccb2c155cd7\");\n * console.log(roleDefinition);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param name - The name of the role definition.\n * @param options - The optional parameters.\n */\n public getRoleDefinition(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: GetRoleDefinitionOptions = {},\n ): Promise<KeyVaultRoleDefinition> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.getRoleDefinition\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleDefinitions.get(\n this.vaultUrl,\n roleScope,\n name,\n updatedOptions,\n );\n return mappings.roleDefinition.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Creates or updates a role definition in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const permissions = [{ dataActions: [KnownKeyVaultDataAction.BackupHsmKeys] }];\n * const roleDefinitionName = \"23b8bb1a-39c0-4c89-a85b-dd3c99273a8a\";\n * const roleDefinition = await client.setRoleDefinition(KnownKeyVaultRoleScope.Global, { permissions, roleDefinitionName });\n * console.log(roleDefinition);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param options - The optional parameters.\n */\n public setRoleDefinition(\n roleScope: KeyVaultRoleScope,\n options: SetRoleDefinitionOptions = {},\n ): Promise<KeyVaultRoleDefinition> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.setRoleDefinition\",\n options,\n async (updatedOptions) => {\n const response = await this.client.roleDefinitions.createOrUpdate(\n this.vaultUrl,\n roleScope,\n options.roleDefinitionName || randomUUID(),\n {\n properties: {\n description: options.description,\n permissions: options.permissions,\n assignableScopes: [roleScope],\n roleName: options.roleName,\n roleType: \"CustomRole\",\n },\n },\n updatedOptions,\n );\n return mappings.roleDefinition.generatedToPublic(response);\n },\n );\n }\n\n /**\n * Deletes a custom role definition previously created in an Azure Key Vault.\n *\n * Example usage:\n * ```ts\n * const client = new KeyVaultAccessControlClient(url, credentials);\n * const roleDefinition = await client.setRoleDefinition(\"/\", \"23b8bb1a-39c0-4c89-a85b-dd3c99273a8a\", []);\n * await client.deleteRoleDefinition(\"/\", roleDefinition.name);\n * ```\n * @param roleScope - The scope of the role definition.\n * @param name - The name of the role definition to delete.\n * @param options - The optional parameters.\n */\n public deleteRoleDefinition(\n roleScope: KeyVaultRoleScope,\n name: string,\n options: DeleteRoleDefinitionOptions = {},\n ): Promise<void> {\n return tracingClient.withSpan(\n \"KeyVaultAccessControlClient.deleteRoleDefinition\",\n options,\n async (updatedOptions) => {\n await this.client.roleDefinitions.delete(this.vaultUrl, roleScope, name, updatedOptions);\n },\n );\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
- import { CommonClientOptions, OperationOptions } from "@azure/core-client";
1
+ import type { CommonClientOptions, OperationOptions } from "@azure/core-client";
2
2
  import { DataAction as KeyVaultDataAction, RoleScope as KeyVaultRoleScope, KnownDataAction as KnownKeyVaultDataAction, KnownRoleScope as KnownKeyVaultRoleScope } from "./generated/index.js";
3
- import { SUPPORTED_API_VERSIONS } from "./constants.js";
3
+ import type { SUPPORTED_API_VERSIONS } from "./constants.js";
4
4
  export { KeyVaultDataAction, KeyVaultRoleScope, KnownKeyVaultDataAction, KnownKeyVaultRoleScope };
5
5
  /**
6
6
  * The optional parameters accepted by the Key Vault's AccessControlClient
@@ -1 +1 @@
1
- {"version":3,"file":"accessControlModels.d.ts","sourceRoot":"","sources":["../../src/accessControlModels.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accessControlModels.d.ts","sourceRoot":"","sources":["../../src/accessControlModels.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"accessControlModels.js","sourceRoot":"","sources":["../../src/accessControlModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAGlC,OAAO,EAGL,eAAe,IAAI,uBAAuB,EAC1C,cAAc,IAAI,sBAAsB,GACzC,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAyC,uBAAuB,EAAE,sBAAsB,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport {\n DataAction as KeyVaultDataAction,\n RoleScope as KeyVaultRoleScope,\n KnownDataAction as KnownKeyVaultDataAction,\n KnownRoleScope as KnownKeyVaultRoleScope,\n} from \"./generated/index.js\";\nimport { SUPPORTED_API_VERSIONS } from \"./constants.js\";\n\nexport { KeyVaultDataAction, KeyVaultRoleScope, KnownKeyVaultDataAction, KnownKeyVaultRoleScope };\n\n/**\n * The optional parameters accepted by the Key Vault's AccessControlClient\n */\nexport interface AccessControlClientOptions extends CommonClientOptions {\n /**\n * The accepted versions of the Key Vault's service API.\n */\n serviceVersion?: SUPPORTED_API_VERSIONS;\n\n /**\n * Whether to disable verification that the authentication challenge resource matches the Key Vault or Managed HSM domain.\n * Defaults to false.\n */\n disableChallengeResourceVerification?: boolean;\n}\n\n/**\n * A Key Vault role assignment.\n */\nexport interface KeyVaultRoleAssignment {\n /**\n * The role assignment ID.\n */\n readonly id: string;\n /**\n * The role assignment name.\n */\n readonly name: string;\n /**\n * The role assignment type.\n */\n readonly kind: string;\n /**\n * Role assignment properties.\n */\n properties: KeyVaultRoleAssignmentProperties;\n}\n\n/**\n * A list of Key Vault permissions.\n */\nexport interface KeyVaultPermission {\n /**\n * Allowed actions.\n */\n actions?: string[];\n /**\n * Actions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.\n */\n notActions?: string[];\n /**\n * Allowed Data actions.\n */\n dataActions?: KeyVaultDataAction[];\n /**\n * Data actions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.\n */\n notDataActions?: KeyVaultDataAction[];\n}\n\n/**\n * A Key Vault role definition.\n */\nexport interface KeyVaultRoleDefinition {\n /**\n * The role definition ID.\n */\n readonly id: string;\n /**\n * The role definition name.\n */\n readonly name: string;\n /**\n * The role definition type.\n */\n readonly kind: string;\n /**\n * The role name.\n */\n roleName: string;\n /**\n * The role definition description.\n */\n description: string;\n /**\n * The role type.\n */\n roleType: string;\n /**\n * A list of Key Vault permissions.\n */\n permissions: KeyVaultPermission[];\n /**\n * Role definition assignable scopes.\n */\n assignableScopes: string[];\n}\n\n/**\n * Role assignment properties.\n */\nexport interface KeyVaultRoleAssignmentProperties {\n /**\n * The role definition ID.\n */\n roleDefinitionId: string;\n /**\n * The principal ID.\n */\n principalId: string;\n /**\n * The role assignment scope.\n */\n scope?: KeyVaultRoleScope;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link createRoleAssignment}\n */\nexport interface CreateRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link deleteRoleAssignment}\n */\nexport interface DeleteRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link getRoleAssignment}\n */\nexport interface GetRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link listRoleAssignments}.\n */\nexport interface ListRoleAssignmentsOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link listRoleDefinitions}.\n */\nexport interface ListRoleDefinitionsOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link getRoleDefinition}.\n */\nexport interface GetRoleDefinitionOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link setRoleDefinition}.\n */\nexport interface SetRoleDefinitionOptions extends OperationOptions {\n /**\n * UUID used as the name of the role definition to create. If it's not provided, a new UUID will be generated.\n */\n roleDefinitionName?: string;\n /**\n * Friendly display name for the role definition.\n */\n roleName?: string;\n /**\n * Long-form description of the role definition.\n */\n description?: string;\n /**\n * List of Key Vault permissions\n */\n permissions?: KeyVaultPermission[];\n /**\n * List of assignable Key Vault role scopes\n */\n assignableScopes?: KeyVaultRoleScope[];\n}\n\n/**\n * An interface representing optional parameters passed to {@link deleteRoleDefinition}.\n */\nexport interface DeleteRoleDefinitionOptions extends OperationOptions {}\n\n/**\n * Arguments for retrieving the next page of search results.\n */\nexport interface ListRoleDefinitionsPageSettings {\n /**\n * A token used for retrieving the next page of results when the server\n * enforces pagination.\n */\n continuationToken?: string;\n}\n\n/**\n * Arguments for retrieving the next page of search results.\n */\nexport interface ListRoleAssignmentsPageSettings {\n /**\n * A token used for retrieving the next page of results when the server\n * enforces pagination.\n */\n continuationToken?: string;\n}\n"]}
1
+ {"version":3,"file":"accessControlModels.js","sourceRoot":"","sources":["../../src/accessControlModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAGlC,OAAO,EAGL,eAAe,IAAI,uBAAuB,EAC1C,cAAc,IAAI,sBAAsB,GACzC,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAyC,uBAAuB,EAAE,sBAAsB,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport {\n DataAction as KeyVaultDataAction,\n RoleScope as KeyVaultRoleScope,\n KnownDataAction as KnownKeyVaultDataAction,\n KnownRoleScope as KnownKeyVaultRoleScope,\n} from \"./generated/index.js\";\nimport type { SUPPORTED_API_VERSIONS } from \"./constants.js\";\n\nexport { KeyVaultDataAction, KeyVaultRoleScope, KnownKeyVaultDataAction, KnownKeyVaultRoleScope };\n\n/**\n * The optional parameters accepted by the Key Vault's AccessControlClient\n */\nexport interface AccessControlClientOptions extends CommonClientOptions {\n /**\n * The accepted versions of the Key Vault's service API.\n */\n serviceVersion?: SUPPORTED_API_VERSIONS;\n\n /**\n * Whether to disable verification that the authentication challenge resource matches the Key Vault or Managed HSM domain.\n * Defaults to false.\n */\n disableChallengeResourceVerification?: boolean;\n}\n\n/**\n * A Key Vault role assignment.\n */\nexport interface KeyVaultRoleAssignment {\n /**\n * The role assignment ID.\n */\n readonly id: string;\n /**\n * The role assignment name.\n */\n readonly name: string;\n /**\n * The role assignment type.\n */\n readonly kind: string;\n /**\n * Role assignment properties.\n */\n properties: KeyVaultRoleAssignmentProperties;\n}\n\n/**\n * A list of Key Vault permissions.\n */\nexport interface KeyVaultPermission {\n /**\n * Allowed actions.\n */\n actions?: string[];\n /**\n * Actions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.\n */\n notActions?: string[];\n /**\n * Allowed Data actions.\n */\n dataActions?: KeyVaultDataAction[];\n /**\n * Data actions that are excluded but not denied. They may be granted by other role definitions assigned to a principal.\n */\n notDataActions?: KeyVaultDataAction[];\n}\n\n/**\n * A Key Vault role definition.\n */\nexport interface KeyVaultRoleDefinition {\n /**\n * The role definition ID.\n */\n readonly id: string;\n /**\n * The role definition name.\n */\n readonly name: string;\n /**\n * The role definition type.\n */\n readonly kind: string;\n /**\n * The role name.\n */\n roleName: string;\n /**\n * The role definition description.\n */\n description: string;\n /**\n * The role type.\n */\n roleType: string;\n /**\n * A list of Key Vault permissions.\n */\n permissions: KeyVaultPermission[];\n /**\n * Role definition assignable scopes.\n */\n assignableScopes: string[];\n}\n\n/**\n * Role assignment properties.\n */\nexport interface KeyVaultRoleAssignmentProperties {\n /**\n * The role definition ID.\n */\n roleDefinitionId: string;\n /**\n * The principal ID.\n */\n principalId: string;\n /**\n * The role assignment scope.\n */\n scope?: KeyVaultRoleScope;\n}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link createRoleAssignment}\n */\nexport interface CreateRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link deleteRoleAssignment}\n */\nexport interface DeleteRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing the optional parameters that can be\n * passed to {@link getRoleAssignment}\n */\nexport interface GetRoleAssignmentOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link listRoleAssignments}.\n */\nexport interface ListRoleAssignmentsOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link listRoleDefinitions}.\n */\nexport interface ListRoleDefinitionsOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link getRoleDefinition}.\n */\nexport interface GetRoleDefinitionOptions extends OperationOptions {}\n\n/**\n * An interface representing optional parameters passed to {@link setRoleDefinition}.\n */\nexport interface SetRoleDefinitionOptions extends OperationOptions {\n /**\n * UUID used as the name of the role definition to create. If it's not provided, a new UUID will be generated.\n */\n roleDefinitionName?: string;\n /**\n * Friendly display name for the role definition.\n */\n roleName?: string;\n /**\n * Long-form description of the role definition.\n */\n description?: string;\n /**\n * List of Key Vault permissions\n */\n permissions?: KeyVaultPermission[];\n /**\n * List of assignable Key Vault role scopes\n */\n assignableScopes?: KeyVaultRoleScope[];\n}\n\n/**\n * An interface representing optional parameters passed to {@link deleteRoleDefinition}.\n */\nexport interface DeleteRoleDefinitionOptions extends OperationOptions {}\n\n/**\n * Arguments for retrieving the next page of search results.\n */\nexport interface ListRoleDefinitionsPageSettings {\n /**\n * A token used for retrieving the next page of results when the server\n * enforces pagination.\n */\n continuationToken?: string;\n}\n\n/**\n * Arguments for retrieving the next page of search results.\n */\nexport interface ListRoleAssignmentsPageSettings {\n /**\n * A token used for retrieving the next page of results when the server\n * enforces pagination.\n */\n continuationToken?: string;\n}\n"]}
@@ -1,10 +1,10 @@
1
- import { KeyVaultBackupClientOptions, KeyVaultBackupResult, KeyVaultBeginBackupOptions, KeyVaultBeginRestoreOptions, KeyVaultBeginSelectiveKeyRestoreOptions, KeyVaultRestoreResult, KeyVaultSelectiveKeyRestoreResult } from "./backupClientModels.js";
1
+ import type { KeyVaultBackupClientOptions, KeyVaultBackupResult, KeyVaultBeginBackupOptions, KeyVaultBeginRestoreOptions, KeyVaultBeginSelectiveKeyRestoreOptions, KeyVaultRestoreResult, KeyVaultSelectiveKeyRestoreResult } from "./backupClientModels.js";
2
2
  import { KeyVaultAdminPollOperationState } from "./lro/keyVaultAdminPoller.js";
3
3
  import { KeyVaultBackupOperationState } from "./lro/backup/operation.js";
4
4
  import { KeyVaultRestoreOperationState } from "./lro/restore/operation.js";
5
5
  import { KeyVaultSelectiveKeyRestoreOperationState } from "./lro/selectiveKeyRestore/operation.js";
6
- import { PollerLike } from "@azure/core-lro";
7
- import { TokenCredential } from "@azure/core-auth";
6
+ import type { PollerLike } from "@azure/core-lro";
7
+ import type { TokenCredential } from "@azure/core-auth";
8
8
  export { KeyVaultBackupOperationState, KeyVaultRestoreOperationState, KeyVaultSelectiveKeyRestoreOperationState, KeyVaultAdminPollOperationState, };
9
9
  /**
10
10
  * The KeyVaultBackupClient provides methods to generate backups
@@ -1 +1 @@
1
- {"version":3,"file":"backupClient.d.ts","sourceRoot":"","sources":["../../src/backupClient.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACvC,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAE3E,OAAO,EAAE,yCAAyC,EAAE,MAAM,wCAAwC,CAAC;AAGnG,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKnD,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,yCAAyC,EACzC,+BAA+B,GAChC,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;OAgBG;gBAED,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAC3B,OAAO,GAAE,2BAAgC;IA0B3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,WAAW,CACtB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,UAAU,CAAC,4BAA4B,EAAE,oBAAoB,CAAC,CAAC;IAE1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,WAAW,CACtB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,UAAU,CAAC,4BAA4B,EAAE,oBAAoB,CAAC,CAAC;IA2B1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,UAAU,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,UAAU,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;IA2B5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,uCAAuC,GAChD,OAAO,CACR,UAAU,CAAC,yCAAyC,EAAE,iCAAiC,CAAC,CACzF;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uCAAuC,GAChD,OAAO,CACR,UAAU,CAAC,yCAAyC,EAAE,iCAAiC,CAAC,CACzF;CA8BF"}
1
+ {"version":3,"file":"backupClient.d.ts","sourceRoot":"","sources":["../../src/backupClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,2BAA2B,EAC3B,oBAAoB,EACpB,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACvC,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAE3E,OAAO,EAAE,yCAAyC,EAAE,MAAM,wCAAwC,CAAC;AAGnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,yCAAyC,EACzC,+BAA+B,GAChC,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;;;;;;;;;;;;;OAgBG;gBAED,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAC3B,OAAO,GAAE,2BAAgC;IA0B3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,WAAW,CACtB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,UAAU,CAAC,4BAA4B,EAAE,oBAAoB,CAAC,CAAC;IAE1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,WAAW,CACtB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,UAAU,CAAC,4BAA4B,EAAE,oBAAoB,CAAC,CAAC;IA2B1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,UAAU,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,UAAU,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC;IA2B5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,uCAAuC,GAChD,OAAO,CACR,UAAU,CAAC,yCAAyC,EAAE,iCAAiC,CAAC,CACzF;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uCAAuC,GAChD,OAAO,CACR,UAAU,CAAC,yCAAyC,EAAE,iCAAiC,CAAC,CACzF;CA8BF"}