@azure/storage-blob 12.13.0-beta.1 → 12.20.0-alpha.20230303.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 (117) hide show
  1. package/dist/index.js +13661 -14216
  2. package/dist/index.js.map +1 -1
  3. package/dist-esm/storage-blob/src/BatchResponse.js.map +1 -1
  4. package/dist-esm/storage-blob/src/BatchResponseParser.js +3 -2
  5. package/dist-esm/storage-blob/src/BatchResponseParser.js.map +1 -1
  6. package/dist-esm/storage-blob/src/BlobBatch.js +74 -87
  7. package/dist-esm/storage-blob/src/BlobBatch.js.map +1 -1
  8. package/dist-esm/storage-blob/src/BlobBatchClient.js +10 -23
  9. package/dist-esm/storage-blob/src/BlobBatchClient.js.map +1 -1
  10. package/dist-esm/storage-blob/src/BlobDownloadResponse.js +1 -1
  11. package/dist-esm/storage-blob/src/BlobDownloadResponse.js.map +1 -1
  12. package/dist-esm/storage-blob/src/BlobLeaseClient.js +54 -83
  13. package/dist-esm/storage-blob/src/BlobLeaseClient.js.map +1 -1
  14. package/dist-esm/storage-blob/src/BlobQueryResponse.browser.js.map +1 -1
  15. package/dist-esm/storage-blob/src/BlobQueryResponse.js +1 -1
  16. package/dist-esm/storage-blob/src/BlobQueryResponse.js.map +1 -1
  17. package/dist-esm/storage-blob/src/BlobServiceClient.js +67 -165
  18. package/dist-esm/storage-blob/src/BlobServiceClient.js.map +1 -1
  19. package/dist-esm/storage-blob/src/Clients.js +651 -889
  20. package/dist-esm/storage-blob/src/Clients.js.map +1 -1
  21. package/dist-esm/storage-blob/src/ContainerClient.js +115 -238
  22. package/dist-esm/storage-blob/src/ContainerClient.js.map +1 -1
  23. package/dist-esm/storage-blob/src/PageBlobRangeResponse.js.map +1 -1
  24. package/dist-esm/storage-blob/src/Pipeline.js +194 -40
  25. package/dist-esm/storage-blob/src/Pipeline.js.map +1 -1
  26. package/dist-esm/storage-blob/src/StorageBrowserPolicyFactory.js.map +1 -1
  27. package/dist-esm/storage-blob/src/StorageClient.js +4 -17
  28. package/dist-esm/storage-blob/src/StorageClient.js.map +1 -1
  29. package/dist-esm/storage-blob/src/StorageRetryPolicyFactory.js.map +1 -1
  30. package/dist-esm/storage-blob/src/credentials/AnonymousCredential.js.map +1 -1
  31. package/dist-esm/storage-blob/src/credentials/Credential.js.map +1 -1
  32. package/dist-esm/storage-blob/src/credentials/StorageSharedKeyCredential.js.map +1 -1
  33. package/dist-esm/storage-blob/src/generated/src/index.js +1 -1
  34. package/dist-esm/storage-blob/src/generated/src/index.js.map +1 -1
  35. package/dist-esm/storage-blob/src/generated/src/models/index.js +248 -1
  36. package/dist-esm/storage-blob/src/generated/src/models/index.js.map +1 -1
  37. package/dist-esm/storage-blob/src/generated/src/models/mappers.js +13 -11
  38. package/dist-esm/storage-blob/src/generated/src/models/mappers.js.map +1 -1
  39. package/dist-esm/storage-blob/src/generated/src/models/parameters.js +5 -5
  40. package/dist-esm/storage-blob/src/generated/src/models/parameters.js.map +1 -1
  41. package/dist-esm/storage-blob/src/generated/src/operations/appendBlob.js +11 -27
  42. package/dist-esm/storage-blob/src/generated/src/operations/appendBlob.js.map +1 -1
  43. package/dist-esm/storage-blob/src/generated/src/operations/blob.js +28 -110
  44. package/dist-esm/storage-blob/src/generated/src/operations/blob.js.map +1 -1
  45. package/dist-esm/storage-blob/src/generated/src/operations/blockBlob.js +16 -43
  46. package/dist-esm/storage-blob/src/generated/src/operations/blockBlob.js.map +1 -1
  47. package/dist-esm/storage-blob/src/generated/src/operations/container.js +22 -86
  48. package/dist-esm/storage-blob/src/generated/src/operations/container.js.map +1 -1
  49. package/dist-esm/storage-blob/src/generated/src/operations/pageBlob.js +16 -54
  50. package/dist-esm/storage-blob/src/generated/src/operations/pageBlob.js.map +1 -1
  51. package/dist-esm/storage-blob/src/generated/src/operations/service.js +12 -42
  52. package/dist-esm/storage-blob/src/generated/src/operations/service.js.map +1 -1
  53. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/appendBlob.js +9 -0
  54. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/appendBlob.js.map +1 -0
  55. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/blob.js +9 -0
  56. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/blob.js.map +1 -0
  57. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/blockBlob.js +9 -0
  58. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/blockBlob.js.map +1 -0
  59. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/container.js +9 -0
  60. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/container.js.map +1 -0
  61. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/index.js +14 -0
  62. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/index.js.map +1 -0
  63. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/pageBlob.js +9 -0
  64. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/pageBlob.js.map +1 -0
  65. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/service.js +9 -0
  66. package/dist-esm/storage-blob/src/generated/src/operationsInterfaces/service.js.map +1 -0
  67. package/dist-esm/storage-blob/src/generated/src/storageClient.js +32 -10
  68. package/dist-esm/storage-blob/src/generated/src/storageClient.js.map +1 -1
  69. package/dist-esm/storage-blob/src/generatedModels.js.map +1 -1
  70. package/dist-esm/storage-blob/src/index.browser.js +3 -2
  71. package/dist-esm/storage-blob/src/index.browser.js.map +1 -1
  72. package/dist-esm/storage-blob/src/index.js +3 -2
  73. package/dist-esm/storage-blob/src/index.js.map +1 -1
  74. package/dist-esm/storage-blob/src/policies/AnonymousCredentialPolicy.js.map +1 -1
  75. package/dist-esm/storage-blob/src/policies/CredentialPolicy.js +1 -1
  76. package/dist-esm/storage-blob/src/policies/CredentialPolicy.js.map +1 -1
  77. package/dist-esm/storage-blob/src/policies/PathParameterWorkaroundPolicy.js +25 -0
  78. package/dist-esm/storage-blob/src/policies/PathParameterWorkaroundPolicy.js.map +1 -0
  79. package/dist-esm/storage-blob/src/policies/RequestPolicy.js +40 -0
  80. package/dist-esm/storage-blob/src/policies/RequestPolicy.js.map +1 -0
  81. package/dist-esm/storage-blob/src/policies/StorageBrowserPolicy.js +2 -1
  82. package/dist-esm/storage-blob/src/policies/StorageBrowserPolicy.js.map +1 -1
  83. package/dist-esm/storage-blob/src/policies/StorageBrowserPolicyV2.js +31 -0
  84. package/dist-esm/storage-blob/src/policies/StorageBrowserPolicyV2.js.map +1 -0
  85. package/dist-esm/storage-blob/src/policies/StorageRetryPolicy.js +1 -1
  86. package/dist-esm/storage-blob/src/policies/StorageRetryPolicy.js.map +1 -1
  87. package/dist-esm/storage-blob/src/policies/StorageRetryPolicyV2.js +165 -0
  88. package/dist-esm/storage-blob/src/policies/StorageRetryPolicyV2.js.map +1 -0
  89. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.js.map +1 -1
  90. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.js +18 -0
  91. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.js.map +1 -0
  92. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.js +131 -0
  93. package/dist-esm/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.js.map +1 -0
  94. package/dist-esm/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.js +1 -1
  95. package/dist-esm/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.js.map +1 -1
  96. package/dist-esm/storage-blob/src/utils/BlobQuickQueryStream.js.map +1 -1
  97. package/dist-esm/storage-blob/src/utils/RetriableReadableStream.js +10 -2
  98. package/dist-esm/storage-blob/src/utils/RetriableReadableStream.js.map +1 -1
  99. package/dist-esm/storage-blob/src/utils/cache.js +5 -2
  100. package/dist-esm/storage-blob/src/utils/cache.js.map +1 -1
  101. package/dist-esm/storage-blob/src/utils/constants.js +2 -2
  102. package/dist-esm/storage-blob/src/utils/constants.js.map +1 -1
  103. package/dist-esm/storage-blob/src/utils/tracing.js +5 -18
  104. package/dist-esm/storage-blob/src/utils/tracing.js.map +1 -1
  105. package/dist-esm/storage-blob/src/utils/utils.common.js +83 -42
  106. package/dist-esm/storage-blob/src/utils/utils.common.js.map +1 -1
  107. package/package.json +22 -15
  108. package/types/3.1/storage-blob.d.ts +2311 -604
  109. package/types/latest/storage-blob.d.ts +2612 -725
  110. package/dist-esm/storage-blob/src/TelemetryPolicyFactory.js +0 -50
  111. package/dist-esm/storage-blob/src/TelemetryPolicyFactory.js.map +0 -1
  112. package/dist-esm/storage-blob/src/generated/src/storageClientContext.js +0 -39
  113. package/dist-esm/storage-blob/src/generated/src/storageClientContext.js.map +0 -1
  114. package/dist-esm/storage-blob/src/policies/StorageBearerTokenChallengeAuthenticationPolicy.js +0 -245
  115. package/dist-esm/storage-blob/src/policies/StorageBearerTokenChallengeAuthenticationPolicy.js.map +0 -1
  116. package/dist-esm/storage-blob/src/policies/TelemetryPolicy.js +0 -36
  117. package/dist-esm/storage-blob/src/policies/TelemetryPolicy.js.map +0 -1
@@ -1,31 +1,29 @@
1
1
  /// <reference types="node" />
2
2
  import { AbortSignalLike } from '@azure/abort-controller';
3
3
  import { AzureLogger } from '@azure/logger';
4
- import { BaseRequestPolicy } from '@azure/core-http';
5
4
  import { CancelOnProgress } from '@azure/core-lro';
6
- import * as coreHttp from '@azure/core-http';
7
- import { deserializationPolicy } from '@azure/core-http';
8
- import { HttpHeaders } from '@azure/core-http';
9
- import { HttpOperationResponse } from '@azure/core-http';
10
- import { HttpRequestBody } from '@azure/core-http';
11
- import { HttpResponse } from '@azure/core-http';
12
- import { HttpClient as IHttpClient } from '@azure/core-http';
13
- import { KeepAliveOptions } from '@azure/core-http';
5
+ import * as coreClient from '@azure/core-client';
6
+ import * as coreHttpCompat from '@azure/core-http-compat';
7
+ import * as coreRestPipeline from '@azure/core-rest-pipeline';
8
+ import { HttpHeadersLike as HttpHeaders } from '@azure/core-http-compat';
9
+ import { CompatResponse as HttpOperationResponse } from '@azure/core-http-compat';
10
+ import { HttpPipelineLogLevel } from '@azure/core-http-compat';
11
+ import { RequestBodyType as HttpRequestBody } from '@azure/core-rest-pipeline';
12
+ import { KeepAliveOptions } from '@azure/core-http-compat';
14
13
  import { OperationTracingOptions } from '@azure/core-tracing';
15
14
  import { PagedAsyncIterableIterator } from '@azure/core-paging';
16
15
  import { PollerLike } from '@azure/core-lro';
17
16
  import { PollOperationState } from '@azure/core-lro';
18
- import { ProxyOptions } from '@azure/core-http';
17
+ import { ProxySettings } from '@azure/core-rest-pipeline';
19
18
  import { Readable } from 'stream';
20
- import { RequestPolicy } from '@azure/core-http';
21
- import { RequestPolicyFactory } from '@azure/core-http';
22
- import { RequestPolicyOptions } from '@azure/core-http';
23
- import { RestError } from '@azure/core-http';
24
- import { ServiceClientOptions } from '@azure/core-http';
25
- import { TokenCredential } from '@azure/core-http';
26
- import { TransferProgressEvent } from '@azure/core-http';
27
- import { UserAgentOptions } from '@azure/core-http';
28
- import { WebResource } from '@azure/core-http';
19
+ import { RequestPolicy } from '@azure/core-http-compat';
20
+ import { RequestPolicyFactory } from '@azure/core-http-compat';
21
+ import { RequestPolicyOptionsLike as RequestPolicyOptions } from '@azure/core-http-compat';
22
+ import { RestError } from '@azure/core-rest-pipeline';
23
+ import { TokenCredential } from '@azure/core-auth';
24
+ import { TransferProgressEvent } from '@azure/core-rest-pipeline';
25
+ import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline';
26
+ import { WebResourceLike as WebResource } from '@azure/core-http-compat';
29
27
  /** An Access policy */
30
28
  export declare interface AccessPolicy {
31
29
  /** the date-time the policy is active */
@@ -343,6 +341,40 @@ export declare class AnonymousCredentialPolicy extends CredentialPolicy {
343
341
  */
344
342
  constructor(nextPolicy: RequestPolicy, options: RequestPolicyOptions);
345
343
  }
344
+ /** Interface representing a AppendBlob. */
345
+ declare interface AppendBlob {
346
+ /**
347
+ * The Create Append Blob operation creates a new append blob.
348
+ * @param contentLength The length of the request.
349
+ * @param options The options parameters.
350
+ */
351
+ create(contentLength: number, options?: AppendBlobCreateOptionalParams): Promise<AppendBlobCreateResponse_2>;
352
+ /**
353
+ * The Append Block operation commits a new block of data to the end of an existing append blob. The
354
+ * Append Block operation is permitted only if the blob was created with x-ms-blob-type set to
355
+ * AppendBlob. Append Block is supported only on version 2015-02-21 version or later.
356
+ * @param contentLength The length of the request.
357
+ * @param body Initial data
358
+ * @param options The options parameters.
359
+ */
360
+ appendBlock(contentLength: number, body: coreRestPipeline.RequestBodyType, options?: AppendBlobAppendBlockOptionalParams): Promise<AppendBlobAppendBlockResponse_2>;
361
+ /**
362
+ * The Append Block operation commits a new block of data to the end of an existing append blob where
363
+ * the contents are read from a source url. The Append Block operation is permitted only if the blob
364
+ * was created with x-ms-blob-type set to AppendBlob. Append Block is supported only on version
365
+ * 2015-02-21 version or later.
366
+ * @param sourceUrl Specify a URL to the copy source.
367
+ * @param contentLength The length of the request.
368
+ * @param options The options parameters.
369
+ */
370
+ appendBlockFromUrl(sourceUrl: string, contentLength: number, options?: AppendBlobAppendBlockFromUrlOptionalParams): Promise<AppendBlobAppendBlockFromUrlResponse_2>;
371
+ /**
372
+ * The Seal operation seals the Append Blob to make it read-only. Seal is supported only on version
373
+ * 2019-12-12 version or later.
374
+ * @param options The options parameters.
375
+ */
376
+ seal(options?: AppendBlobSealOptionalParams): Promise<AppendBlobSealResponse>;
377
+ }
346
378
  /** Defines headers for AppendBlob_appendBlockFromUrl operation. */
347
379
  export declare interface AppendBlobAppendBlockFromUrlHeaders {
348
380
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -372,6 +404,35 @@ export declare interface AppendBlobAppendBlockFromUrlHeaders {
372
404
  /** Error Code */
373
405
  errorCode?: string;
374
406
  }
407
+ /** Optional parameters. */
408
+ declare interface AppendBlobAppendBlockFromUrlOptionalParams extends coreClient.OperationOptions {
409
+ /** Parameter group */
410
+ leaseAccessConditions?: LeaseAccessConditions;
411
+ /** Parameter group */
412
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
413
+ /** Parameter group */
414
+ cpkInfo?: CpkInfo;
415
+ /** Parameter group */
416
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
417
+ /** Parameter group */
418
+ appendPositionAccessConditions?: AppendPositionAccessConditions;
419
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
420
+ timeoutInSeconds?: number;
421
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
422
+ requestId?: string;
423
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
424
+ encryptionScope?: string;
425
+ /** Specify the md5 calculated for the range of bytes that must be read from the copy source. */
426
+ sourceContentMD5?: Uint8Array;
427
+ /** Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source. */
428
+ copySourceAuthorization?: string;
429
+ /** Specify the transactional md5 for the body, to be validated by the service. */
430
+ transactionalContentMD5?: Uint8Array;
431
+ /** Specify the crc64 calculated for the range of bytes that must be read from the copy source. */
432
+ sourceContentCrc64?: Uint8Array;
433
+ /** Bytes of source data in the specified range. */
434
+ sourceRange?: string;
435
+ }
375
436
  /**
376
437
  * Options to configure the {@link AppendBlobClient.appendBlockFromURL} operation.
377
438
  */
@@ -422,13 +483,9 @@ export declare interface AppendBlobAppendBlockFromURLOptions extends CommonOptio
422
483
  sourceAuthorization?: HttpAuthorization;
423
484
  }
424
485
  /** Contains response data for the appendBlockFromUrl operation. */
425
- export declare type AppendBlobAppendBlockFromUrlResponse = AppendBlobAppendBlockFromUrlHeaders & {
426
- /** The underlying HTTP response. */
427
- _response: coreHttp.HttpResponse & {
428
- /** The parsed HTTP response headers. */
429
- parsedHeaders: AppendBlobAppendBlockFromUrlHeaders;
430
- };
431
- };
486
+ export declare type AppendBlobAppendBlockFromUrlResponse = WithResponse<AppendBlobAppendBlockFromUrlHeaders, AppendBlobAppendBlockFromUrlHeaders>;
487
+ /** Contains response data for the appendBlockFromUrl operation. */
488
+ declare type AppendBlobAppendBlockFromUrlResponse_2 = AppendBlobAppendBlockFromUrlHeaders;
432
489
  /** Defines headers for AppendBlob_appendBlock operation. */
433
490
  export declare interface AppendBlobAppendBlockHeaders {
434
491
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -460,6 +517,27 @@ export declare interface AppendBlobAppendBlockHeaders {
460
517
  /** Error Code */
461
518
  errorCode?: string;
462
519
  }
520
+ /** Optional parameters. */
521
+ declare interface AppendBlobAppendBlockOptionalParams extends coreClient.OperationOptions {
522
+ /** Parameter group */
523
+ leaseAccessConditions?: LeaseAccessConditions;
524
+ /** Parameter group */
525
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
526
+ /** Parameter group */
527
+ cpkInfo?: CpkInfo;
528
+ /** Parameter group */
529
+ appendPositionAccessConditions?: AppendPositionAccessConditions;
530
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
531
+ timeoutInSeconds?: number;
532
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
533
+ requestId?: string;
534
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
535
+ encryptionScope?: string;
536
+ /** Specify the transactional md5 for the body, to be validated by the service. */
537
+ transactionalContentMD5?: Uint8Array;
538
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
539
+ transactionalContentCrc64?: Uint8Array;
540
+ }
463
541
  /**
464
542
  * Options to configure the {@link AppendBlobClient.appendBlock} operation.
465
543
  */
@@ -504,13 +582,9 @@ export declare interface AppendBlobAppendBlockOptions extends CommonOptions {
504
582
  encryptionScope?: string;
505
583
  }
506
584
  /** Contains response data for the appendBlock operation. */
507
- export declare type AppendBlobAppendBlockResponse = AppendBlobAppendBlockHeaders & {
508
- /** The underlying HTTP response. */
509
- _response: coreHttp.HttpResponse & {
510
- /** The parsed HTTP response headers. */
511
- parsedHeaders: AppendBlobAppendBlockHeaders;
512
- };
513
- };
585
+ export declare type AppendBlobAppendBlockResponse = WithResponse<AppendBlobAppendBlockHeaders, AppendBlobAppendBlockHeaders>;
586
+ /** Contains response data for the appendBlock operation. */
587
+ declare type AppendBlobAppendBlockResponse_2 = AppendBlobAppendBlockHeaders;
514
588
  /**
515
589
  * AppendBlobClient defines a set of operations applicable to append blobs.
516
590
  */
@@ -729,6 +803,35 @@ export declare interface AppendBlobCreateIfNotExistsResponse extends AppendBlobC
729
803
  */
730
804
  succeeded: boolean;
731
805
  }
806
+ /** Optional parameters. */
807
+ declare interface AppendBlobCreateOptionalParams extends coreClient.OperationOptions {
808
+ /** Parameter group */
809
+ leaseAccessConditions?: LeaseAccessConditions;
810
+ /** Parameter group */
811
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
812
+ /** Parameter group */
813
+ cpkInfo?: CpkInfo;
814
+ /** Parameter group */
815
+ blobHttpHeaders?: BlobHTTPHeaders;
816
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
817
+ timeoutInSeconds?: number;
818
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
819
+ requestId?: string;
820
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
821
+ metadata?: {
822
+ [propertyName: string]: string;
823
+ };
824
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
825
+ immutabilityPolicyExpiry?: Date;
826
+ /** Specifies the immutability policy mode to set on the blob. */
827
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
828
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
829
+ encryptionScope?: string;
830
+ /** Optional. Used to set blob tags in various blob operations. */
831
+ blobTagsString?: string;
832
+ /** Specified if a legal hold should be set on the blob. */
833
+ legalHold?: boolean;
834
+ }
732
835
  /**
733
836
  * Options to configure {@link AppendBlobClient.create} operation.
734
837
  */
@@ -782,18 +885,44 @@ export declare interface AppendBlobCreateOptions extends CommonOptions {
782
885
  tags?: Tags;
783
886
  }
784
887
  /** Contains response data for the create operation. */
785
- export declare type AppendBlobCreateResponse = AppendBlobCreateHeaders & {
786
- /** The underlying HTTP response. */
787
- _response: coreHttp.HttpResponse & {
788
- /** The parsed HTTP response headers. */
789
- parsedHeaders: AppendBlobCreateHeaders;
790
- };
791
- };
888
+ export declare type AppendBlobCreateResponse = WithResponse<AppendBlobCreateHeaders, AppendBlobCreateHeaders>;
889
+ /** Contains response data for the create operation. */
890
+ declare type AppendBlobCreateResponse_2 = AppendBlobCreateHeaders;
792
891
  /**
793
892
  * Conditions to add to the creation of this append blob.
794
893
  */
795
894
  export declare interface AppendBlobRequestConditions extends BlobRequestConditions, AppendPositionAccessConditions {
796
895
  }
896
+ /** Defines headers for AppendBlob_seal operation. */
897
+ declare interface AppendBlobSealHeaders {
898
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
899
+ etag?: string;
900
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
901
+ lastModified?: Date;
902
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
903
+ clientRequestId?: string;
904
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
905
+ requestId?: string;
906
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
907
+ version?: string;
908
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
909
+ date?: Date;
910
+ /** If this blob has been sealed */
911
+ isSealed?: boolean;
912
+ }
913
+ /** Optional parameters. */
914
+ declare interface AppendBlobSealOptionalParams extends coreClient.OperationOptions {
915
+ /** Parameter group */
916
+ leaseAccessConditions?: LeaseAccessConditions;
917
+ /** Parameter group */
918
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
919
+ /** Parameter group */
920
+ appendPositionAccessConditions?: AppendPositionAccessConditions;
921
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
922
+ timeoutInSeconds?: number;
923
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
924
+ requestId?: string;
925
+ }
797
926
  /**
798
927
  * Options to configure {@link AppendBlobClient.seal} operation.
799
928
  */
@@ -808,6 +937,8 @@ export declare interface AppendBlobSealOptions extends CommonOptions {
808
937
  */
809
938
  conditions?: AppendBlobRequestConditions;
810
939
  }
940
+ /** Contains response data for the seal operation. */
941
+ declare type AppendBlobSealResponse = AppendBlobSealHeaders;
811
942
  /** Parameter group */
812
943
  export declare interface AppendPositionAccessConditions {
813
944
  /** Optional conditional header. The max length in bytes permitted for the append blob. If the Append Block operation would cause the blob to exceed that limit or if the blob size is already greater than the value specified in this header, the request will fail with MaxBlobSizeConditionNotMet error (HTTP status code 412 - Precondition Failed). */
@@ -817,7 +948,60 @@ export declare interface AppendPositionAccessConditions {
817
948
  }
818
949
  /** Defines values for ArchiveStatus. */
819
950
  export declare type ArchiveStatus = "rehydrate-pending-to-hot" | "rehydrate-pending-to-cool";
820
- export { BaseRequestPolicy };
951
+ /** Groups the settings used for formatting the response if the response should be Arrow formatted. */
952
+ declare interface ArrowConfiguration {
953
+ schema: ArrowField[];
954
+ }
955
+ /** Groups settings regarding specific field of an arrow schema */
956
+ declare interface ArrowField {
957
+ type: string;
958
+ name?: string;
959
+ precision?: number;
960
+ scale?: number;
961
+ }
962
+ /**
963
+ * The base class from which all request policies derive.
964
+ */
965
+ export declare abstract class BaseRequestPolicy implements RequestPolicy {
966
+ /**
967
+ * The next policy in the pipeline. Each policy is responsible for executing the next one if the request is to continue through the pipeline.
968
+ */
969
+ readonly _nextPolicy: RequestPolicy;
970
+ /**
971
+ * The options that can be passed to a given request policy.
972
+ */
973
+ readonly _options: RequestPolicyOptions;
974
+ /**
975
+ * The main method to implement that manipulates a request/response.
976
+ */
977
+ protected constructor(
978
+ /**
979
+ * The next policy in the pipeline. Each policy is responsible for executing the next one if the request is to continue through the pipeline.
980
+ */
981
+ _nextPolicy: RequestPolicy,
982
+ /**
983
+ * The options that can be passed to a given request policy.
984
+ */
985
+ _options: RequestPolicyOptions);
986
+ /**
987
+ * Sends a network request based on the given web resource.
988
+ * @param webResource - A {@link WebResourceLike} that describes a HTTP request to be made.
989
+ */
990
+ abstract sendRequest(webResource: WebResource): Promise<HttpOperationResponse>;
991
+ /**
992
+ * Get whether or not a log with the provided log level should be logged.
993
+ * @param logLevel - The log level of the log that will be logged.
994
+ * @returns Whether or not a log with the provided log level should be logged.
995
+ */
996
+ shouldLog(logLevel: HttpPipelineLogLevel): boolean;
997
+ /**
998
+ * Attempt to log the provided message to the provided logger. If no logger was provided or if
999
+ * the log level does not meat the logger's threshold, then nothing will be logged.
1000
+ * @param logLevel - The log level of this log.
1001
+ * @param message - The message of this log.
1002
+ */
1003
+ log(logLevel: HttpPipelineLogLevel, message: string): void;
1004
+ }
821
1005
  /**
822
1006
  * A request associated with a batch operation.
823
1007
  */
@@ -862,6 +1046,174 @@ export declare interface BatchSubResponse {
862
1046
  */
863
1047
  _request: BatchSubRequest;
864
1048
  }
1049
+ /** Interface representing a Blob. */
1050
+ declare interface Blob_2 {
1051
+ /**
1052
+ * The Download operation reads or downloads a blob from the system, including its metadata and
1053
+ * properties. You can also call Download to read a snapshot.
1054
+ * @param options The options parameters.
1055
+ */
1056
+ download(options?: BlobDownloadOptionalParams): Promise<BlobDownloadResponseInternal>;
1057
+ /**
1058
+ * The Get Properties operation returns all user-defined metadata, standard HTTP properties, and system
1059
+ * properties for the blob. It does not return the content of the blob.
1060
+ * @param options The options parameters.
1061
+ */
1062
+ getProperties(options?: BlobGetPropertiesOptionalParams): Promise<BlobGetPropertiesResponse_2>;
1063
+ /**
1064
+ * If the storage account's soft delete feature is disabled then, when a blob is deleted, it is
1065
+ * permanently removed from the storage account. If the storage account's soft delete feature is
1066
+ * enabled, then, when a blob is deleted, it is marked for deletion and becomes inaccessible
1067
+ * immediately. However, the blob service retains the blob or snapshot for the number of days specified
1068
+ * by the DeleteRetentionPolicy section of [Storage service properties]
1069
+ * (Set-Blob-Service-Properties.md). After the specified number of days has passed, the blob's data is
1070
+ * permanently removed from the storage account. Note that you continue to be charged for the
1071
+ * soft-deleted blob's storage until it is permanently removed. Use the List Blobs API and specify the
1072
+ * "include=deleted" query parameter to discover which blobs and snapshots have been soft deleted. You
1073
+ * can then use the Undelete Blob API to restore a soft-deleted blob. All other operations on a
1074
+ * soft-deleted blob or snapshot causes the service to return an HTTP status code of 404
1075
+ * (ResourceNotFound).
1076
+ * @param options The options parameters.
1077
+ */
1078
+ delete(options?: BlobDeleteOptionalParams): Promise<BlobDeleteResponse_2>;
1079
+ /**
1080
+ * Undelete a blob that was previously soft deleted
1081
+ * @param options The options parameters.
1082
+ */
1083
+ undelete(options?: BlobUndeleteOptionalParams): Promise<BlobUndeleteResponse_2>;
1084
+ /**
1085
+ * Sets the time a blob will expire and be deleted.
1086
+ * @param expiryOptions Required. Indicates mode of the expiry time
1087
+ * @param options The options parameters.
1088
+ */
1089
+ setExpiry(expiryOptions: BlobExpiryOptions, options?: BlobSetExpiryOptionalParams): Promise<BlobSetExpiryResponse>;
1090
+ /**
1091
+ * The Set HTTP Headers operation sets system properties on the blob
1092
+ * @param options The options parameters.
1093
+ */
1094
+ setHttpHeaders(options?: BlobSetHttpHeadersOptionalParams): Promise<BlobSetHttpHeadersResponse>;
1095
+ /**
1096
+ * The Set Immutability Policy operation sets the immutability policy on the blob
1097
+ * @param options The options parameters.
1098
+ */
1099
+ setImmutabilityPolicy(options?: BlobSetImmutabilityPolicyOptionalParams): Promise<BlobSetImmutabilityPolicyResponse_2>;
1100
+ /**
1101
+ * The Delete Immutability Policy operation deletes the immutability policy on the blob
1102
+ * @param options The options parameters.
1103
+ */
1104
+ deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptionalParams): Promise<BlobDeleteImmutabilityPolicyResponse_2>;
1105
+ /**
1106
+ * The Set Legal Hold operation sets a legal hold on the blob.
1107
+ * @param legalHold Specified if a legal hold should be set on the blob.
1108
+ * @param options The options parameters.
1109
+ */
1110
+ setLegalHold(legalHold: boolean, options?: BlobSetLegalHoldOptionalParams): Promise<BlobSetLegalHoldResponse_2>;
1111
+ /**
1112
+ * The Set Blob Metadata operation sets user-defined metadata for the specified blob as one or more
1113
+ * name-value pairs
1114
+ * @param options The options parameters.
1115
+ */
1116
+ setMetadata(options?: BlobSetMetadataOptionalParams): Promise<BlobSetMetadataResponse_2>;
1117
+ /**
1118
+ * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
1119
+ * operations
1120
+ * @param options The options parameters.
1121
+ */
1122
+ acquireLease(options?: BlobAcquireLeaseOptionalParams): Promise<BlobAcquireLeaseResponse>;
1123
+ /**
1124
+ * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
1125
+ * operations
1126
+ * @param leaseId Specifies the current lease ID on the resource.
1127
+ * @param options The options parameters.
1128
+ */
1129
+ releaseLease(leaseId: string, options?: BlobReleaseLeaseOptionalParams): Promise<BlobReleaseLeaseResponse>;
1130
+ /**
1131
+ * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
1132
+ * operations
1133
+ * @param leaseId Specifies the current lease ID on the resource.
1134
+ * @param options The options parameters.
1135
+ */
1136
+ renewLease(leaseId: string, options?: BlobRenewLeaseOptionalParams): Promise<BlobRenewLeaseResponse>;
1137
+ /**
1138
+ * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
1139
+ * operations
1140
+ * @param leaseId Specifies the current lease ID on the resource.
1141
+ * @param proposedLeaseId Proposed lease ID, in a GUID string format. The Blob service returns 400
1142
+ * (Invalid request) if the proposed lease ID is not in the correct format. See Guid Constructor
1143
+ * (String) for a list of valid GUID string formats.
1144
+ * @param options The options parameters.
1145
+ */
1146
+ changeLease(leaseId: string, proposedLeaseId: string, options?: BlobChangeLeaseOptionalParams): Promise<BlobChangeLeaseResponse>;
1147
+ /**
1148
+ * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
1149
+ * operations
1150
+ * @param options The options parameters.
1151
+ */
1152
+ breakLease(options?: BlobBreakLeaseOptionalParams): Promise<BlobBreakLeaseResponse>;
1153
+ /**
1154
+ * The Create Snapshot operation creates a read-only snapshot of a blob
1155
+ * @param options The options parameters.
1156
+ */
1157
+ createSnapshot(options?: BlobCreateSnapshotOptionalParams): Promise<BlobCreateSnapshotResponse_2>;
1158
+ /**
1159
+ * The Start Copy From URL operation copies a blob or an internet resource to a new blob.
1160
+ * @param copySource Specifies the name of the source page blob snapshot. This value is a URL of up to
1161
+ * 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would
1162
+ * appear in a request URI. The source blob must either be public or must be authenticated via a shared
1163
+ * access signature.
1164
+ * @param options The options parameters.
1165
+ */
1166
+ startCopyFromURL(copySource: string, options?: BlobStartCopyFromURLOptionalParams): Promise<BlobStartCopyFromURLResponse_2>;
1167
+ /**
1168
+ * The Copy From URL operation copies a blob or an internet resource to a new blob. It will not return
1169
+ * a response until the copy is complete.
1170
+ * @param copySource Specifies the name of the source page blob snapshot. This value is a URL of up to
1171
+ * 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would
1172
+ * appear in a request URI. The source blob must either be public or must be authenticated via a shared
1173
+ * access signature.
1174
+ * @param options The options parameters.
1175
+ */
1176
+ copyFromURL(copySource: string, options?: BlobCopyFromURLOptionalParams): Promise<BlobCopyFromURLResponse_2>;
1177
+ /**
1178
+ * The Abort Copy From URL operation aborts a pending Copy From URL operation, and leaves a destination
1179
+ * blob with zero length and full metadata.
1180
+ * @param copyId The copy identifier provided in the x-ms-copy-id header of the original Copy Blob
1181
+ * operation.
1182
+ * @param options The options parameters.
1183
+ */
1184
+ abortCopyFromURL(copyId: string, options?: BlobAbortCopyFromURLOptionalParams): Promise<BlobAbortCopyFromURLResponse_2>;
1185
+ /**
1186
+ * The Set Tier operation sets the tier on a blob. The operation is allowed on a page blob in a premium
1187
+ * storage account and on a block blob in a blob storage account (locally redundant storage only). A
1188
+ * premium page blob's tier determines the allowed size, IOPS, and bandwidth of the blob. A block
1189
+ * blob's tier determines Hot/Cool/Archive storage type. This operation does not update the blob's
1190
+ * ETag.
1191
+ * @param tier Indicates the tier to be set on the blob.
1192
+ * @param options The options parameters.
1193
+ */
1194
+ setTier(tier: AccessTier, options?: BlobSetTierOptionalParams): Promise<BlobSetTierResponse_2>;
1195
+ /**
1196
+ * Returns the sku name and account kind
1197
+ * @param options The options parameters.
1198
+ */
1199
+ getAccountInfo(options?: BlobGetAccountInfoOptionalParams): Promise<BlobGetAccountInfoResponse>;
1200
+ /**
1201
+ * The Query operation enables users to select/project on blob data by providing simple query
1202
+ * expressions.
1203
+ * @param options The options parameters.
1204
+ */
1205
+ query(options?: BlobQueryOptionalParams): Promise<BlobQueryResponseInternal>;
1206
+ /**
1207
+ * The Get Tags operation enables users to get the tags associated with a blob.
1208
+ * @param options The options parameters.
1209
+ */
1210
+ getTags(options?: BlobGetTagsOptionalParams): Promise<BlobGetTagsResponse_2>;
1211
+ /**
1212
+ * The Set Tags operation enables users to set tags on a blob.
1213
+ * @param options The options parameters.
1214
+ */
1215
+ setTags(options?: BlobSetTagsOptionalParams): Promise<BlobSetTagsResponse_2>;
1216
+ }
865
1217
  /** Defines headers for Blob_abortCopyFromURL operation. */
866
1218
  export declare interface BlobAbortCopyFromURLHeaders {
867
1219
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -875,6 +1227,15 @@ export declare interface BlobAbortCopyFromURLHeaders {
875
1227
  /** Error Code */
876
1228
  errorCode?: string;
877
1229
  }
1230
+ /** Optional parameters. */
1231
+ declare interface BlobAbortCopyFromURLOptionalParams extends coreClient.OperationOptions {
1232
+ /** Parameter group */
1233
+ leaseAccessConditions?: LeaseAccessConditions;
1234
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
1235
+ timeoutInSeconds?: number;
1236
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
1237
+ requestId?: string;
1238
+ }
878
1239
  /**
879
1240
  * Options to configure the {@link BlobClient.abortCopyFromURL} operation.
880
1241
  */
@@ -891,13 +1252,39 @@ export declare interface BlobAbortCopyFromURLOptions extends CommonOptions {
891
1252
  conditions?: LeaseAccessConditions;
892
1253
  }
893
1254
  /** Contains response data for the abortCopyFromURL operation. */
894
- export declare type BlobAbortCopyFromURLResponse = BlobAbortCopyFromURLHeaders & {
895
- /** The underlying HTTP response. */
896
- _response: coreHttp.HttpResponse & {
897
- /** The parsed HTTP response headers. */
898
- parsedHeaders: BlobAbortCopyFromURLHeaders;
899
- };
900
- };
1255
+ export declare type BlobAbortCopyFromURLResponse = WithResponse<BlobAbortCopyFromURLHeaders, BlobAbortCopyFromURLHeaders>;
1256
+ /** Contains response data for the abortCopyFromURL operation. */
1257
+ declare type BlobAbortCopyFromURLResponse_2 = BlobAbortCopyFromURLHeaders;
1258
+ /** Defines headers for Blob_acquireLease operation. */
1259
+ declare interface BlobAcquireLeaseHeaders {
1260
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
1261
+ etag?: string;
1262
+ /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
1263
+ lastModified?: Date;
1264
+ /** Uniquely identifies a blobs' lease */
1265
+ leaseId?: string;
1266
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
1267
+ clientRequestId?: string;
1268
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
1269
+ requestId?: string;
1270
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
1271
+ version?: string;
1272
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
1273
+ date?: Date;
1274
+ }
1275
+ /** Optional parameters. */
1276
+ declare interface BlobAcquireLeaseOptionalParams extends coreClient.OperationOptions {
1277
+ /** Parameter group */
1278
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
1279
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
1280
+ timeoutInSeconds?: number;
1281
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
1282
+ requestId?: string;
1283
+ /** Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change. */
1284
+ duration?: number;
1285
+ /** Proposed lease ID, in a GUID string format. The Blob service returns 400 (Invalid request) if the proposed lease ID is not in the correct format. See Guid Constructor (String) for a list of valid GUID string formats. */
1286
+ proposedLeaseId?: string;
1287
+ }
901
1288
  /**
902
1289
  * Options to configure Blob - Acquire Lease operation.
903
1290
  */
@@ -912,6 +1299,8 @@ export declare interface BlobAcquireLeaseOptions extends CommonOptions {
912
1299
  */
913
1300
  conditions?: ModifiedAccessConditions;
914
1301
  }
1302
+ /** Contains response data for the acquireLease operation. */
1303
+ declare type BlobAcquireLeaseResponse = BlobAcquireLeaseHeaders;
915
1304
  /**
916
1305
  * A BlobBatch represents an aggregated set of operations on blobs.
917
1306
  * Currently, only `delete` and `setAccessTier` are supported.
@@ -1143,17 +1532,7 @@ export declare interface BlobBatchSubmitBatchOptionalParams extends ServiceSubmi
1143
1532
  /**
1144
1533
  * Contains response data for blob batch operations.
1145
1534
  */
1146
- export declare type BlobBatchSubmitBatchResponse = ParsedBatchResponse & ServiceSubmitBatchHeaders & {
1147
- /**
1148
- * The underlying HTTP response.
1149
- */
1150
- _response: HttpResponse & {
1151
- /**
1152
- * The parsed HTTP response headers.
1153
- */
1154
- parsedHeaders: ServiceSubmitBatchHeaders;
1155
- };
1156
- };
1535
+ export declare type BlobBatchSubmitBatchResponse = WithResponse<ParsedBatchResponse & ServiceSubmitBatchHeaders, ServiceSubmitBatchHeaders>;
1157
1536
  /**
1158
1537
  * Options to configure the {@link BlobClient.beginCopyFromURL} operation.
1159
1538
  */
@@ -1212,6 +1591,34 @@ export declare interface BlobBeginCopyFromUrlPollState extends PollOperationStat
1212
1591
  */
1213
1592
  export declare interface BlobBeginCopyFromURLResponse extends BlobStartCopyFromURLResponse {
1214
1593
  }
1594
+ /** Defines headers for Blob_breakLease operation. */
1595
+ declare interface BlobBreakLeaseHeaders {
1596
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
1597
+ etag?: string;
1598
+ /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
1599
+ lastModified?: Date;
1600
+ /** Approximate time remaining in the lease period, in seconds. */
1601
+ leaseTime?: number;
1602
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
1603
+ clientRequestId?: string;
1604
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
1605
+ requestId?: string;
1606
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
1607
+ version?: string;
1608
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
1609
+ date?: Date;
1610
+ }
1611
+ /** Optional parameters. */
1612
+ declare interface BlobBreakLeaseOptionalParams extends coreClient.OperationOptions {
1613
+ /** Parameter group */
1614
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
1615
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
1616
+ timeoutInSeconds?: number;
1617
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
1618
+ requestId?: string;
1619
+ /** For a break operation, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60. This break period is only used if it is shorter than the time remaining on the lease. If longer, the time remaining on the lease is used. A new lease will not be available before the break period has expired, but the lease may be held for longer than the break period. If this header does not appear with a break operation, a fixed-duration lease breaks after the remaining lease period elapses, and an infinite lease breaks immediately. */
1620
+ breakPeriod?: number;
1621
+ }
1215
1622
  /**
1216
1623
  * Options to configure Blob - Break Lease operation.
1217
1624
  */
@@ -1226,6 +1633,34 @@ export declare interface BlobBreakLeaseOptions extends CommonOptions {
1226
1633
  */
1227
1634
  conditions?: ModifiedAccessConditions;
1228
1635
  }
1636
+ /** Contains response data for the breakLease operation. */
1637
+ declare type BlobBreakLeaseResponse = BlobBreakLeaseHeaders;
1638
+ /** Defines headers for Blob_changeLease operation. */
1639
+ declare interface BlobChangeLeaseHeaders {
1640
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
1641
+ etag?: string;
1642
+ /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
1643
+ lastModified?: Date;
1644
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
1645
+ clientRequestId?: string;
1646
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
1647
+ requestId?: string;
1648
+ /** Uniquely identifies a blobs' lease */
1649
+ leaseId?: string;
1650
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
1651
+ version?: string;
1652
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
1653
+ date?: Date;
1654
+ }
1655
+ /** Optional parameters. */
1656
+ declare interface BlobChangeLeaseOptionalParams extends coreClient.OperationOptions {
1657
+ /** Parameter group */
1658
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
1659
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
1660
+ timeoutInSeconds?: number;
1661
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
1662
+ requestId?: string;
1663
+ }
1229
1664
  /**
1230
1665
  * Options to configure Blob - Change Lease operation.
1231
1666
  */
@@ -1240,6 +1675,8 @@ export declare interface BlobChangeLeaseOptions extends CommonOptions {
1240
1675
  */
1241
1676
  conditions?: ModifiedAccessConditions;
1242
1677
  }
1678
+ /** Contains response data for the changeLease operation. */
1679
+ declare type BlobChangeLeaseResponse = BlobChangeLeaseHeaders;
1243
1680
  /**
1244
1681
  * A BlobClient represents a URL to an Azure Storage blob; the blob may be a block blob,
1245
1682
  * append blob, or page blob.
@@ -1693,7 +2130,7 @@ export declare class BlobClient extends StorageClient {
1693
2130
  */
1694
2131
  deleteImmutabilityPolicy(options?: BlobDeleteImmutabilityPolicyOptions): Promise<BlobDeleteImmutabilityPolicyResponse>;
1695
2132
  /**
1696
- * Set immutablility policy on the blob.
2133
+ * Set immutability policy on the blob.
1697
2134
  *
1698
2135
  * @param options - Optional options to set immutability policy on the blob.
1699
2136
  */
@@ -1724,7 +2161,7 @@ export declare interface BlobCopyFromURLHeaders {
1724
2161
  /** String identifier for this copy operation. */
1725
2162
  copyId?: string;
1726
2163
  /** State of the copy operation identified by x-ms-copy-id. */
1727
- copyStatus?: SyncCopyStatusType;
2164
+ copyStatus?: "success";
1728
2165
  /** This response header is returned so that the client can check for the integrity of the copied content. This header is only returned if the source content MD5 was specified. */
1729
2166
  contentMD5?: Uint8Array;
1730
2167
  /** This response header is returned so that the client can check for the integrity of the copied content. */
@@ -1734,14 +2171,45 @@ export declare interface BlobCopyFromURLHeaders {
1734
2171
  /** Error Code */
1735
2172
  errorCode?: string;
1736
2173
  }
1737
- /** Contains response data for the copyFromURL operation. */
1738
- export declare type BlobCopyFromURLResponse = BlobCopyFromURLHeaders & {
1739
- /** The underlying HTTP response. */
1740
- _response: coreHttp.HttpResponse & {
1741
- /** The parsed HTTP response headers. */
1742
- parsedHeaders: BlobCopyFromURLHeaders;
2174
+ /** Optional parameters. */
2175
+ declare interface BlobCopyFromURLOptionalParams extends coreClient.OperationOptions {
2176
+ /** Parameter group */
2177
+ leaseAccessConditions?: LeaseAccessConditions;
2178
+ /** Parameter group */
2179
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
2180
+ /** Parameter group */
2181
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
2182
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2183
+ timeoutInSeconds?: number;
2184
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2185
+ requestId?: string;
2186
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
2187
+ metadata?: {
2188
+ [propertyName: string]: string;
1743
2189
  };
1744
- };
2190
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
2191
+ immutabilityPolicyExpiry?: Date;
2192
+ /** Specifies the immutability policy mode to set on the blob. */
2193
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
2194
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
2195
+ encryptionScope?: string;
2196
+ /** Optional. Indicates the tier to be set on the blob. */
2197
+ tier?: AccessTier;
2198
+ /** Optional. Used to set blob tags in various blob operations. */
2199
+ blobTagsString?: string;
2200
+ /** Specified if a legal hold should be set on the blob. */
2201
+ legalHold?: boolean;
2202
+ /** Specify the md5 calculated for the range of bytes that must be read from the copy source. */
2203
+ sourceContentMD5?: Uint8Array;
2204
+ /** Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source. */
2205
+ copySourceAuthorization?: string;
2206
+ /** Optional, default 'replace'. Indicates if source tags should be copied or replaced with the tags specified by x-ms-tags. */
2207
+ copySourceTags?: BlobCopySourceTags;
2208
+ }
2209
+ /** Contains response data for the copyFromURL operation. */
2210
+ export declare type BlobCopyFromURLResponse = WithResponse<BlobCopyFromURLHeaders, BlobCopyFromURLHeaders>;
2211
+ /** Contains response data for the copyFromURL operation. */
2212
+ declare type BlobCopyFromURLResponse_2 = BlobCopyFromURLHeaders;
1745
2213
  /** Defines values for BlobCopySourceTags. */
1746
2214
  export declare type BlobCopySourceTags = "REPLACE" | "COPY";
1747
2215
  /** Defines headers for Blob_createSnapshot operation. */
@@ -1767,6 +2235,25 @@ export declare interface BlobCreateSnapshotHeaders {
1767
2235
  /** Error Code */
1768
2236
  errorCode?: string;
1769
2237
  }
2238
+ /** Optional parameters. */
2239
+ declare interface BlobCreateSnapshotOptionalParams extends coreClient.OperationOptions {
2240
+ /** Parameter group */
2241
+ leaseAccessConditions?: LeaseAccessConditions;
2242
+ /** Parameter group */
2243
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
2244
+ /** Parameter group */
2245
+ cpkInfo?: CpkInfo;
2246
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2247
+ timeoutInSeconds?: number;
2248
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2249
+ requestId?: string;
2250
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
2251
+ metadata?: {
2252
+ [propertyName: string]: string;
2253
+ };
2254
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
2255
+ encryptionScope?: string;
2256
+ }
1770
2257
  /**
1771
2258
  * Options to configure the {@link BlobClient.createSnapshot} operation.
1772
2259
  */
@@ -1797,13 +2284,9 @@ export declare interface BlobCreateSnapshotOptions extends CommonOptions {
1797
2284
  encryptionScope?: string;
1798
2285
  }
1799
2286
  /** Contains response data for the createSnapshot operation. */
1800
- export declare type BlobCreateSnapshotResponse = BlobCreateSnapshotHeaders & {
1801
- /** The underlying HTTP response. */
1802
- _response: coreHttp.HttpResponse & {
1803
- /** The parsed HTTP response headers. */
1804
- parsedHeaders: BlobCreateSnapshotHeaders;
1805
- };
1806
- };
2287
+ export declare type BlobCreateSnapshotResponse = WithResponse<BlobCreateSnapshotHeaders, BlobCreateSnapshotHeaders>;
2288
+ /** Contains response data for the createSnapshot operation. */
2289
+ declare type BlobCreateSnapshotResponse_2 = BlobCreateSnapshotHeaders;
1807
2290
  /** Defines headers for Blob_delete operation. */
1808
2291
  export declare interface BlobDeleteHeaders {
1809
2292
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -1837,6 +2320,13 @@ export declare interface BlobDeleteImmutabilityPolicyHeaders {
1837
2320
  /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
1838
2321
  date?: Date;
1839
2322
  }
2323
+ /** Optional parameters. */
2324
+ declare interface BlobDeleteImmutabilityPolicyOptionalParams extends coreClient.OperationOptions {
2325
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2326
+ timeoutInSeconds?: number;
2327
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2328
+ requestId?: string;
2329
+ }
1840
2330
  /**
1841
2331
  * Options for deleting immutability policy {@link BlobClient.deleteImmutabilityPolicy} operation.
1842
2332
  */
@@ -1848,13 +2338,28 @@ export declare interface BlobDeleteImmutabilityPolicyOptions extends CommonOptio
1848
2338
  abortSignal?: AbortSignalLike;
1849
2339
  }
1850
2340
  /** Contains response data for the deleteImmutabilityPolicy operation. */
1851
- export declare type BlobDeleteImmutabilityPolicyResponse = BlobDeleteImmutabilityPolicyHeaders & {
1852
- /** The underlying HTTP response. */
1853
- _response: coreHttp.HttpResponse & {
1854
- /** The parsed HTTP response headers. */
1855
- parsedHeaders: BlobDeleteImmutabilityPolicyHeaders;
1856
- };
1857
- };
2341
+ export declare type BlobDeleteImmutabilityPolicyResponse = WithResponse<BlobDeleteImmutabilityPolicyHeaders, BlobDeleteImmutabilityPolicyHeaders>;
2342
+ /** Contains response data for the deleteImmutabilityPolicy operation. */
2343
+ declare type BlobDeleteImmutabilityPolicyResponse_2 = BlobDeleteImmutabilityPolicyHeaders;
2344
+ /** Optional parameters. */
2345
+ declare interface BlobDeleteOptionalParams extends coreClient.OperationOptions {
2346
+ /** Parameter group */
2347
+ leaseAccessConditions?: LeaseAccessConditions;
2348
+ /** Parameter group */
2349
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
2350
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2351
+ timeoutInSeconds?: number;
2352
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2353
+ requestId?: string;
2354
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
2355
+ snapshot?: string;
2356
+ /** The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer. */
2357
+ versionId?: string;
2358
+ /** Required if the blob has associated snapshots. Specify one of the following two options: include: Delete the base blob and all of its snapshots. only: Delete only the blob's snapshots and not the blob itself */
2359
+ deleteSnapshots?: DeleteSnapshotsOptionType;
2360
+ /** Optional. Only possible value is 'permanent', which specifies to permanently delete a blob if blob soft delete is enabled. */
2361
+ blobDeleteType?: string;
2362
+ }
1858
2363
  /**
1859
2364
  * Options to configure the {@link BlobClient.delete} operation.
1860
2365
  */
@@ -1880,13 +2385,9 @@ export declare interface BlobDeleteOptions extends CommonOptions {
1880
2385
  customerProvidedKey?: CpkInfo;
1881
2386
  }
1882
2387
  /** Contains response data for the delete operation. */
1883
- export declare type BlobDeleteResponse = BlobDeleteHeaders & {
1884
- /** The underlying HTTP response. */
1885
- _response: coreHttp.HttpResponse & {
1886
- /** The parsed HTTP response headers. */
1887
- parsedHeaders: BlobDeleteHeaders;
1888
- };
1889
- };
2388
+ export declare type BlobDeleteResponse = WithResponse<BlobDeleteHeaders, BlobDeleteHeaders>;
2389
+ /** Contains response data for the delete operation. */
2390
+ declare type BlobDeleteResponse_2 = BlobDeleteHeaders;
1890
2391
  /** Defines headers for Blob_download operation. */
1891
2392
  export declare interface BlobDownloadHeaders {
1892
2393
  /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
@@ -1982,7 +2483,7 @@ export declare interface BlobDownloadHeaders {
1982
2483
  contentCrc64?: Uint8Array;
1983
2484
  }
1984
2485
  /** Optional parameters. */
1985
- export declare interface BlobDownloadOptionalParams extends coreHttp.OperationOptions {
2486
+ export declare interface BlobDownloadOptionalParams extends coreClient.OperationOptions {
1986
2487
  /** Parameter group */
1987
2488
  leaseAccessConditions?: LeaseAccessConditions;
1988
2489
  /** Parameter group */
@@ -2058,7 +2559,7 @@ export declare interface BlobDownloadOptions extends CommonOptions {
2058
2559
  customerProvidedKey?: CpkInfo;
2059
2560
  }
2060
2561
  /** Contains response data for the download operation. */
2061
- export declare type BlobDownloadResponseModel = BlobDownloadHeaders & {
2562
+ export declare type BlobDownloadResponseInternal = BlobDownloadHeaders & {
2062
2563
  /**
2063
2564
  * BROWSER ONLY
2064
2565
  *
@@ -2073,12 +2574,9 @@ export declare type BlobDownloadResponseModel = BlobDownloadHeaders & {
2073
2574
  * Always `undefined` in the browser.
2074
2575
  */
2075
2576
  readableStreamBody?: NodeJS.ReadableStream;
2076
- /** The underlying HTTP response. */
2077
- _response: coreHttp.HttpResponse & {
2078
- /** The parsed HTTP response headers. */
2079
- parsedHeaders: BlobDownloadHeaders;
2080
- };
2081
2577
  };
2578
+ /** Contains response data for the download operation. */
2579
+ export declare type BlobDownloadResponseModel = WithResponse<BlobDownloadResponseInternal, BlobDownloadHeaders>;
2082
2580
  /**
2083
2581
  * Contains response data for the {@link BlobClient.download} operation.
2084
2582
  */
@@ -2156,12 +2654,26 @@ export declare interface BlobExistsOptions extends CommonOptions {
2156
2654
  */
2157
2655
  conditions?: BlobRequestConditions;
2158
2656
  }
2657
+ /**
2658
+ * Defines values for BlobExpiryOptions. \
2659
+ * {@link KnownBlobExpiryOptions} can be used interchangeably with BlobExpiryOptions,
2660
+ * this enum contains the known values that the service supports.
2661
+ * ### Known values supported by the service
2662
+ * **NeverExpire** \
2663
+ * **RelativeToCreation** \
2664
+ * **RelativeToNow** \
2665
+ * **Absolute**
2666
+ */
2667
+ declare type BlobExpiryOptions = string;
2159
2668
  /**
2160
2669
  * An interface representing BlobFlatListSegment.
2161
2670
  */
2162
2671
  export declare interface BlobFlatListSegment {
2163
2672
  blobItems: BlobItem[];
2164
2673
  }
2674
+ declare interface BlobFlatListSegment_2 {
2675
+ blobItems: BlobItemInternal_2[];
2676
+ }
2165
2677
  export declare interface BlobFlatListSegmentModel {
2166
2678
  blobItems: BlobItemInternal[];
2167
2679
  }
@@ -2174,6 +2686,26 @@ export declare interface BlobGenerateSasUrlOptions extends CommonGenerateSasUrlO
2174
2686
  */
2175
2687
  permissions?: BlobSASPermissions;
2176
2688
  }
2689
+ /** Defines headers for Blob_getAccountInfo operation. */
2690
+ declare interface BlobGetAccountInfoHeaders {
2691
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
2692
+ clientRequestId?: string;
2693
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
2694
+ requestId?: string;
2695
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
2696
+ version?: string;
2697
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
2698
+ date?: Date;
2699
+ /** Identifies the sku name of the account */
2700
+ skuName?: SkuName;
2701
+ /** Identifies the account kind */
2702
+ accountKind?: AccountKind;
2703
+ }
2704
+ /** Optional parameters. */
2705
+ declare interface BlobGetAccountInfoOptionalParams extends coreClient.OperationOptions {
2706
+ }
2707
+ /** Contains response data for the getAccountInfo operation. */
2708
+ declare type BlobGetAccountInfoResponse = BlobGetAccountInfoHeaders;
2177
2709
  /** Defines headers for Blob_getProperties operation. */
2178
2710
  export declare interface BlobGetPropertiesHeaders {
2179
2711
  /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
@@ -2280,6 +2812,23 @@ export declare interface BlobGetPropertiesHeaders {
2280
2812
  /** Error Code */
2281
2813
  errorCode?: string;
2282
2814
  }
2815
+ /** Optional parameters. */
2816
+ declare interface BlobGetPropertiesOptionalParams extends coreClient.OperationOptions {
2817
+ /** Parameter group */
2818
+ leaseAccessConditions?: LeaseAccessConditions;
2819
+ /** Parameter group */
2820
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
2821
+ /** Parameter group */
2822
+ cpkInfo?: CpkInfo;
2823
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2824
+ timeoutInSeconds?: number;
2825
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2826
+ requestId?: string;
2827
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
2828
+ snapshot?: string;
2829
+ /** The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer. */
2830
+ versionId?: string;
2831
+ }
2283
2832
  /**
2284
2833
  * Options to configure the {@link BlobClient.getProperties} operation.
2285
2834
  */
@@ -2312,13 +2861,9 @@ export declare interface BlobGetPropertiesResponse extends BlobGetPropertiesResp
2312
2861
  objectReplicationDestinationPolicyId?: string;
2313
2862
  }
2314
2863
  /** Contains response data for the getProperties operation. */
2315
- export declare type BlobGetPropertiesResponseModel = BlobGetPropertiesHeaders & {
2316
- /** The underlying HTTP response. */
2317
- _response: coreHttp.HttpResponse & {
2318
- /** The parsed HTTP response headers. */
2319
- parsedHeaders: BlobGetPropertiesHeaders;
2320
- };
2321
- };
2864
+ declare type BlobGetPropertiesResponse_2 = BlobGetPropertiesHeaders;
2865
+ /** Contains response data for the getProperties operation. */
2866
+ export declare type BlobGetPropertiesResponseModel = WithResponse<BlobGetPropertiesHeaders, BlobGetPropertiesHeaders>;
2322
2867
  /** Defines headers for Blob_getTags operation. */
2323
2868
  export declare interface BlobGetTagsHeaders {
2324
2869
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -2332,6 +2877,21 @@ export declare interface BlobGetTagsHeaders {
2332
2877
  /** Error Code */
2333
2878
  errorCode?: string;
2334
2879
  }
2880
+ /** Optional parameters. */
2881
+ declare interface BlobGetTagsOptionalParams extends coreClient.OperationOptions {
2882
+ /** Parameter group */
2883
+ leaseAccessConditions?: LeaseAccessConditions;
2884
+ /** Parameter group */
2885
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
2886
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
2887
+ timeoutInSeconds?: number;
2888
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
2889
+ requestId?: string;
2890
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
2891
+ snapshot?: string;
2892
+ /** The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer. */
2893
+ versionId?: string;
2894
+ }
2335
2895
  /**
2336
2896
  * Options to configure the {@link BlobClient.getTags} operation.
2337
2897
  */
@@ -2349,27 +2909,11 @@ export declare interface BlobGetTagsOptions extends CommonOptions {
2349
2909
  /**
2350
2910
  * Contains response data for the {@link BlobClient.getTags} operation.
2351
2911
  */
2352
- export declare type BlobGetTagsResponse = {
2912
+ export declare type BlobGetTagsResponse = WithResponse<{
2353
2913
  tags: Tags;
2354
- } & BlobGetTagsHeaders & {
2355
- /**
2356
- * The underlying HTTP response.
2357
- */
2358
- _response: HttpResponse & {
2359
- /**
2360
- * The parsed HTTP response headers.
2361
- */
2362
- parsedHeaders: BlobGetTagsHeaders;
2363
- /**
2364
- * The response body as text (string format)
2365
- */
2366
- bodyAsText: string;
2367
- /**
2368
- * The response body as parsed JSON or XML
2369
- */
2370
- parsedBody: BlobTags;
2371
- };
2372
- };
2914
+ } & BlobGetTagsHeaders, BlobGetTagsHeaders, BlobTags>;
2915
+ /** Contains response data for the getTags operation. */
2916
+ declare type BlobGetTagsResponse_2 = BlobGetTagsHeaders & BlobTags;
2373
2917
  /**
2374
2918
  * An interface representing BlobHierarchyListSegment.
2375
2919
  */
@@ -2377,6 +2921,10 @@ export declare interface BlobHierarchyListSegment {
2377
2921
  blobPrefixes?: BlobPrefix[];
2378
2922
  blobItems: BlobItem[];
2379
2923
  }
2924
+ declare interface BlobHierarchyListSegment_2 {
2925
+ blobPrefixes?: BlobPrefix_2[];
2926
+ blobItems: BlobItemInternal_2[];
2927
+ }
2380
2928
  export declare interface BlobHierarchyListSegmentModel {
2381
2929
  blobPrefixes?: BlobPrefix[];
2382
2930
  blobItems: BlobItemInternal[];
@@ -2450,6 +2998,28 @@ export declare interface BlobItemInternal {
2450
2998
  /** Inactive root blobs which have any versions would have such tag with value true. */
2451
2999
  hasVersionsOnly?: boolean;
2452
3000
  }
3001
+ /** An Azure Storage blob */
3002
+ declare interface BlobItemInternal_2 {
3003
+ name: BlobName;
3004
+ deleted: boolean;
3005
+ snapshot: string;
3006
+ versionId?: string;
3007
+ isCurrentVersion?: boolean;
3008
+ /** Properties of a blob */
3009
+ properties: BlobProperties;
3010
+ /** Dictionary of <string> */
3011
+ metadata?: {
3012
+ [propertyName: string]: string;
3013
+ };
3014
+ /** Blob tags */
3015
+ blobTags?: BlobTags;
3016
+ /** Dictionary of <string> */
3017
+ objectReplicationMetadata?: {
3018
+ [propertyName: string]: string;
3019
+ };
3020
+ /** Inactive root blobs which have any versions would have such tag with value true. */
3021
+ hasVersionsOnly?: boolean;
3022
+ }
2453
3023
  /**
2454
3024
  * A client that manages leases for a {@link ContainerClient} or a {@link BlobClient}.
2455
3025
  */
@@ -2534,9 +3104,18 @@ export declare class BlobLeaseClient {
2534
3104
  */
2535
3105
  breakLease(breakPeriod: number, options?: LeaseOperationOptions): Promise<LeaseOperationResponse>;
2536
3106
  }
3107
+ declare interface BlobName {
3108
+ /** Indicates if the blob name is encoded. */
3109
+ encoded?: boolean;
3110
+ /** The name of the blob. */
3111
+ content?: string;
3112
+ }
2537
3113
  export declare interface BlobPrefix {
2538
3114
  name: string;
2539
3115
  }
3116
+ declare interface BlobPrefix_2 {
3117
+ name: BlobName;
3118
+ }
2540
3119
  /** Properties of a blob */
2541
3120
  export declare interface BlobProperties {
2542
3121
  createdOn?: Date;
@@ -2759,6 +3338,23 @@ export declare interface BlobQueryJsonTextConfiguration {
2759
3338
  */
2760
3339
  kind: "json";
2761
3340
  }
3341
+ /** Optional parameters. */
3342
+ declare interface BlobQueryOptionalParams extends coreClient.OperationOptions {
3343
+ /** Parameter group */
3344
+ leaseAccessConditions?: LeaseAccessConditions;
3345
+ /** Parameter group */
3346
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
3347
+ /** Parameter group */
3348
+ cpkInfo?: CpkInfo;
3349
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
3350
+ timeoutInSeconds?: number;
3351
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
3352
+ requestId?: string;
3353
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
3354
+ snapshot?: string;
3355
+ /** the query request */
3356
+ queryRequest?: QueryRequest;
3357
+ }
2762
3358
  /**
2763
3359
  * Options to query blob with Parquet format. Only valid for {@link BlockBlobQueryOptions.inputTextConfiguration}.
2764
3360
  */
@@ -2769,7 +3365,7 @@ export declare interface BlobQueryParquetConfiguration {
2769
3365
  kind: "parquet";
2770
3366
  }
2771
3367
  /** Contains response data for the query operation. */
2772
- export declare type BlobQueryResponseModel = BlobQueryHeaders & {
3368
+ export declare type BlobQueryResponseInternal = BlobQueryHeaders & {
2773
3369
  /**
2774
3370
  * BROWSER ONLY
2775
3371
  *
@@ -2784,12 +3380,33 @@ export declare type BlobQueryResponseModel = BlobQueryHeaders & {
2784
3380
  * Always `undefined` in the browser.
2785
3381
  */
2786
3382
  readableStreamBody?: NodeJS.ReadableStream;
2787
- /** The underlying HTTP response. */
2788
- _response: coreHttp.HttpResponse & {
2789
- /** The parsed HTTP response headers. */
2790
- parsedHeaders: BlobQueryHeaders;
2791
- };
2792
3383
  };
3384
+ /** Contains response data for the query operation. */
3385
+ export declare type BlobQueryResponseModel = WithResponse<BlobQueryResponseInternal, BlobQueryHeaders>;
3386
+ /** Defines headers for Blob_releaseLease operation. */
3387
+ declare interface BlobReleaseLeaseHeaders {
3388
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
3389
+ etag?: string;
3390
+ /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
3391
+ lastModified?: Date;
3392
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
3393
+ clientRequestId?: string;
3394
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
3395
+ requestId?: string;
3396
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
3397
+ version?: string;
3398
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
3399
+ date?: Date;
3400
+ }
3401
+ /** Optional parameters. */
3402
+ declare interface BlobReleaseLeaseOptionalParams extends coreClient.OperationOptions {
3403
+ /** Parameter group */
3404
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
3405
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
3406
+ timeoutInSeconds?: number;
3407
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
3408
+ requestId?: string;
3409
+ }
2793
3410
  /**
2794
3411
  * Options to configure Blob - Release Lease operation.
2795
3412
  */
@@ -2804,6 +3421,34 @@ export declare interface BlobReleaseLeaseOptions extends CommonOptions {
2804
3421
  */
2805
3422
  conditions?: ModifiedAccessConditions;
2806
3423
  }
3424
+ /** Contains response data for the releaseLease operation. */
3425
+ declare type BlobReleaseLeaseResponse = BlobReleaseLeaseHeaders;
3426
+ /** Defines headers for Blob_renewLease operation. */
3427
+ declare interface BlobRenewLeaseHeaders {
3428
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
3429
+ etag?: string;
3430
+ /** Returns the date and time the blob was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
3431
+ lastModified?: Date;
3432
+ /** Uniquely identifies a blobs' lease */
3433
+ leaseId?: string;
3434
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
3435
+ clientRequestId?: string;
3436
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
3437
+ requestId?: string;
3438
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
3439
+ version?: string;
3440
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
3441
+ date?: Date;
3442
+ }
3443
+ /** Optional parameters. */
3444
+ declare interface BlobRenewLeaseOptionalParams extends coreClient.OperationOptions {
3445
+ /** Parameter group */
3446
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
3447
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
3448
+ timeoutInSeconds?: number;
3449
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
3450
+ requestId?: string;
3451
+ }
2807
3452
  /**
2808
3453
  * Options to configure Blob - Renew Lease operation.
2809
3454
  */
@@ -2818,6 +3463,8 @@ export declare interface BlobRenewLeaseOptions extends CommonOptions {
2818
3463
  */
2819
3464
  conditions?: ModifiedAccessConditions;
2820
3465
  }
3466
+ /** Contains response data for the renewLease operation. */
3467
+ declare type BlobRenewLeaseResponse = BlobRenewLeaseHeaders;
2821
3468
  /**
2822
3469
  * standard HTTP conditional headers, tags condition and lease condition
2823
3470
  */
@@ -3494,6 +4141,32 @@ export declare interface BlobServiceStatistics {
3494
4141
  /** Geo-Replication information for the Secondary Storage Service */
3495
4142
  geoReplication?: GeoReplication;
3496
4143
  }
4144
+ /** Defines headers for Blob_setExpiry operation. */
4145
+ declare interface BlobSetExpiryHeaders {
4146
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
4147
+ etag?: string;
4148
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
4149
+ lastModified?: Date;
4150
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
4151
+ clientRequestId?: string;
4152
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
4153
+ requestId?: string;
4154
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
4155
+ version?: string;
4156
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated. */
4157
+ date?: Date;
4158
+ }
4159
+ /** Optional parameters. */
4160
+ declare interface BlobSetExpiryOptionalParams extends coreClient.OperationOptions {
4161
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4162
+ timeoutInSeconds?: number;
4163
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4164
+ requestId?: string;
4165
+ /** The time to set the blob to expiry */
4166
+ expiresOn?: string;
4167
+ }
4168
+ /** Contains response data for the setExpiry operation. */
4169
+ declare type BlobSetExpiryResponse = BlobSetExpiryHeaders;
3497
4170
  /** Defines headers for Blob_setHttpHeaders operation. */
3498
4171
  export declare interface BlobSetHTTPHeadersHeaders {
3499
4172
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -3513,6 +4186,19 @@ export declare interface BlobSetHTTPHeadersHeaders {
3513
4186
  /** Error Code */
3514
4187
  errorCode?: string;
3515
4188
  }
4189
+ /** Optional parameters. */
4190
+ declare interface BlobSetHttpHeadersOptionalParams extends coreClient.OperationOptions {
4191
+ /** Parameter group */
4192
+ leaseAccessConditions?: LeaseAccessConditions;
4193
+ /** Parameter group */
4194
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4195
+ /** Parameter group */
4196
+ blobHttpHeaders?: BlobHTTPHeaders;
4197
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4198
+ timeoutInSeconds?: number;
4199
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4200
+ requestId?: string;
4201
+ }
3516
4202
  /**
3517
4203
  * Options to configure the {@link BlobClient.setHTTPHeaders} operation.
3518
4204
  */
@@ -3532,13 +4218,9 @@ export declare interface BlobSetHTTPHeadersOptions extends CommonOptions {
3532
4218
  customerProvidedKey?: CpkInfo;
3533
4219
  }
3534
4220
  /** Contains response data for the setHttpHeaders operation. */
3535
- export declare type BlobSetHTTPHeadersResponse = BlobSetHTTPHeadersHeaders & {
3536
- /** The underlying HTTP response. */
3537
- _response: coreHttp.HttpResponse & {
3538
- /** The parsed HTTP response headers. */
3539
- parsedHeaders: BlobSetHTTPHeadersHeaders;
3540
- };
3541
- };
4221
+ export declare type BlobSetHTTPHeadersResponse = WithResponse<BlobSetHTTPHeadersHeaders, BlobSetHTTPHeadersHeaders>;
4222
+ /** Contains response data for the setHttpHeaders operation. */
4223
+ declare type BlobSetHttpHeadersResponse = BlobSetHTTPHeadersHeaders;
3542
4224
  /** Defines headers for Blob_setImmutabilityPolicy operation. */
3543
4225
  export declare interface BlobSetImmutabilityPolicyHeaders {
3544
4226
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -3554,6 +4236,19 @@ export declare interface BlobSetImmutabilityPolicyHeaders {
3554
4236
  /** Indicates immutability policy mode. */
3555
4237
  immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
3556
4238
  }
4239
+ /** Optional parameters. */
4240
+ declare interface BlobSetImmutabilityPolicyOptionalParams extends coreClient.OperationOptions {
4241
+ /** Parameter group */
4242
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4243
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4244
+ timeoutInSeconds?: number;
4245
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4246
+ requestId?: string;
4247
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
4248
+ immutabilityPolicyExpiry?: Date;
4249
+ /** Specifies the immutability policy mode to set on the blob. */
4250
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
4251
+ }
3557
4252
  /**
3558
4253
  * Options for setting immutability policy {@link BlobClient.setImmutabilityPolicy} operation.
3559
4254
  */
@@ -3566,13 +4261,9 @@ export declare interface BlobSetImmutabilityPolicyOptions extends CommonOptions
3566
4261
  modifiedAccessCondition?: ModificationConditions;
3567
4262
  }
3568
4263
  /** Contains response data for the setImmutabilityPolicy operation. */
3569
- export declare type BlobSetImmutabilityPolicyResponse = BlobSetImmutabilityPolicyHeaders & {
3570
- /** The underlying HTTP response. */
3571
- _response: coreHttp.HttpResponse & {
3572
- /** The parsed HTTP response headers. */
3573
- parsedHeaders: BlobSetImmutabilityPolicyHeaders;
3574
- };
3575
- };
4264
+ export declare type BlobSetImmutabilityPolicyResponse = WithResponse<BlobSetImmutabilityPolicyHeaders, BlobSetImmutabilityPolicyHeaders>;
4265
+ /** Contains response data for the setImmutabilityPolicy operation. */
4266
+ declare type BlobSetImmutabilityPolicyResponse_2 = BlobSetImmutabilityPolicyHeaders;
3576
4267
  /** Defines headers for Blob_setLegalHold operation. */
3577
4268
  export declare interface BlobSetLegalHoldHeaders {
3578
4269
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -3586,6 +4277,13 @@ export declare interface BlobSetLegalHoldHeaders {
3586
4277
  /** Indicates if the blob has a legal hold. */
3587
4278
  legalHold?: boolean;
3588
4279
  }
4280
+ /** Optional parameters. */
4281
+ declare interface BlobSetLegalHoldOptionalParams extends coreClient.OperationOptions {
4282
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4283
+ timeoutInSeconds?: number;
4284
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4285
+ requestId?: string;
4286
+ }
3589
4287
  /**
3590
4288
  * Options for setting legal hold {@link BlobClient.setLegalHold} operation.
3591
4289
  */
@@ -3597,13 +4295,9 @@ export declare interface BlobSetLegalHoldOptions extends CommonOptions {
3597
4295
  abortSignal?: AbortSignalLike;
3598
4296
  }
3599
4297
  /** Contains response data for the setLegalHold operation. */
3600
- export declare type BlobSetLegalHoldResponse = BlobSetLegalHoldHeaders & {
3601
- /** The underlying HTTP response. */
3602
- _response: coreHttp.HttpResponse & {
3603
- /** The parsed HTTP response headers. */
3604
- parsedHeaders: BlobSetLegalHoldHeaders;
3605
- };
3606
- };
4298
+ export declare type BlobSetLegalHoldResponse = WithResponse<BlobSetLegalHoldHeaders, BlobSetLegalHoldHeaders>;
4299
+ /** Contains response data for the setLegalHold operation. */
4300
+ declare type BlobSetLegalHoldResponse_2 = BlobSetLegalHoldHeaders;
3607
4301
  /** Defines headers for Blob_setMetadata operation. */
3608
4302
  export declare interface BlobSetMetadataHeaders {
3609
4303
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -3626,8 +4320,27 @@ export declare interface BlobSetMetadataHeaders {
3626
4320
  encryptionKeySha256?: string;
3627
4321
  /** Returns the name of the encryption scope used to encrypt the blob contents and application metadata. Note that the absence of this header implies use of the default account encryption scope. */
3628
4322
  encryptionScope?: string;
3629
- /** Error Code */
3630
- errorCode?: string;
4323
+ /** Error Code */
4324
+ errorCode?: string;
4325
+ }
4326
+ /** Optional parameters. */
4327
+ declare interface BlobSetMetadataOptionalParams extends coreClient.OperationOptions {
4328
+ /** Parameter group */
4329
+ leaseAccessConditions?: LeaseAccessConditions;
4330
+ /** Parameter group */
4331
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4332
+ /** Parameter group */
4333
+ cpkInfo?: CpkInfo;
4334
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4335
+ timeoutInSeconds?: number;
4336
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4337
+ requestId?: string;
4338
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
4339
+ metadata?: {
4340
+ [propertyName: string]: string;
4341
+ };
4342
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
4343
+ encryptionScope?: string;
3631
4344
  }
3632
4345
  /**
3633
4346
  * Options to configure the {@link BlobClient.setMetadata} operation.
@@ -3655,13 +4368,9 @@ export declare interface BlobSetMetadataOptions extends CommonOptions {
3655
4368
  encryptionScope?: string;
3656
4369
  }
3657
4370
  /** Contains response data for the setMetadata operation. */
3658
- export declare type BlobSetMetadataResponse = BlobSetMetadataHeaders & {
3659
- /** The underlying HTTP response. */
3660
- _response: coreHttp.HttpResponse & {
3661
- /** The parsed HTTP response headers. */
3662
- parsedHeaders: BlobSetMetadataHeaders;
3663
- };
3664
- };
4371
+ export declare type BlobSetMetadataResponse = WithResponse<BlobSetMetadataHeaders, BlobSetMetadataHeaders>;
4372
+ /** Contains response data for the setMetadata operation. */
4373
+ declare type BlobSetMetadataResponse_2 = BlobSetMetadataHeaders;
3665
4374
  /** Defines headers for Blob_setTags operation. */
3666
4375
  export declare interface BlobSetTagsHeaders {
3667
4376
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -3675,6 +4384,25 @@ export declare interface BlobSetTagsHeaders {
3675
4384
  /** Error Code */
3676
4385
  errorCode?: string;
3677
4386
  }
4387
+ /** Optional parameters. */
4388
+ declare interface BlobSetTagsOptionalParams extends coreClient.OperationOptions {
4389
+ /** Parameter group */
4390
+ leaseAccessConditions?: LeaseAccessConditions;
4391
+ /** Parameter group */
4392
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4393
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4394
+ timeoutInSeconds?: number;
4395
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4396
+ requestId?: string;
4397
+ /** The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer. */
4398
+ versionId?: string;
4399
+ /** Blob tags */
4400
+ tags?: BlobTags;
4401
+ /** Specify the transactional md5 for the body, to be validated by the service. */
4402
+ transactionalContentMD5?: Uint8Array;
4403
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
4404
+ transactionalContentCrc64?: Uint8Array;
4405
+ }
3678
4406
  /**
3679
4407
  * Options to configure the {@link BlobClient.setTags} operation.
3680
4408
  */
@@ -3690,13 +4418,9 @@ export declare interface BlobSetTagsOptions extends CommonOptions {
3690
4418
  conditions?: TagConditions & LeaseAccessConditions;
3691
4419
  }
3692
4420
  /** Contains response data for the setTags operation. */
3693
- export declare type BlobSetTagsResponse = BlobSetTagsHeaders & {
3694
- /** The underlying HTTP response. */
3695
- _response: coreHttp.HttpResponse & {
3696
- /** The parsed HTTP response headers. */
3697
- parsedHeaders: BlobSetTagsHeaders;
3698
- };
3699
- };
4421
+ export declare type BlobSetTagsResponse = WithResponse<BlobSetTagsHeaders, BlobSetTagsHeaders>;
4422
+ /** Contains response data for the setTags operation. */
4423
+ declare type BlobSetTagsResponse_2 = BlobSetTagsHeaders;
3700
4424
  /** Defines headers for Blob_setTier operation. */
3701
4425
  export declare interface BlobSetTierHeaders {
3702
4426
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -3708,6 +4432,23 @@ export declare interface BlobSetTierHeaders {
3708
4432
  /** Error Code */
3709
4433
  errorCode?: string;
3710
4434
  }
4435
+ /** Optional parameters. */
4436
+ declare interface BlobSetTierOptionalParams extends coreClient.OperationOptions {
4437
+ /** Parameter group */
4438
+ leaseAccessConditions?: LeaseAccessConditions;
4439
+ /** Parameter group */
4440
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4441
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4442
+ timeoutInSeconds?: number;
4443
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4444
+ requestId?: string;
4445
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
4446
+ snapshot?: string;
4447
+ /** The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer. */
4448
+ versionId?: string;
4449
+ /** Optional: Indicates the priority with which to rehydrate an archived blob. */
4450
+ rehydratePriority?: RehydratePriority;
4451
+ }
3711
4452
  /**
3712
4453
  * Options to configure the {@link BlobClient.setAccessTier} operation.
3713
4454
  */
@@ -3729,13 +4470,9 @@ export declare interface BlobSetTierOptions extends CommonOptions {
3729
4470
  rehydratePriority?: RehydratePriority;
3730
4471
  }
3731
4472
  /** Contains response data for the setTier operation. */
3732
- export declare type BlobSetTierResponse = BlobSetTierHeaders & {
3733
- /** The underlying HTTP response. */
3734
- _response: coreHttp.HttpResponse & {
3735
- /** The parsed HTTP response headers. */
3736
- parsedHeaders: BlobSetTierHeaders;
3737
- };
3738
- };
4473
+ export declare type BlobSetTierResponse = WithResponse<BlobSetTierHeaders, BlobSetTierHeaders>;
4474
+ /** Contains response data for the setTier operation. */
4475
+ declare type BlobSetTierResponse_2 = BlobSetTierHeaders;
3739
4476
  /** Defines headers for Blob_startCopyFromURL operation. */
3740
4477
  export declare interface BlobStartCopyFromURLHeaders {
3741
4478
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -3759,6 +4496,37 @@ export declare interface BlobStartCopyFromURLHeaders {
3759
4496
  /** Error Code */
3760
4497
  errorCode?: string;
3761
4498
  }
4499
+ /** Optional parameters. */
4500
+ declare interface BlobStartCopyFromURLOptionalParams extends coreClient.OperationOptions {
4501
+ /** Parameter group */
4502
+ leaseAccessConditions?: LeaseAccessConditions;
4503
+ /** Parameter group */
4504
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
4505
+ /** Parameter group */
4506
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
4507
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4508
+ timeoutInSeconds?: number;
4509
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4510
+ requestId?: string;
4511
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
4512
+ metadata?: {
4513
+ [propertyName: string]: string;
4514
+ };
4515
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
4516
+ immutabilityPolicyExpiry?: Date;
4517
+ /** Specifies the immutability policy mode to set on the blob. */
4518
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
4519
+ /** Optional. Indicates the tier to be set on the blob. */
4520
+ tier?: AccessTier;
4521
+ /** Optional: Indicates the priority with which to rehydrate an archived blob. */
4522
+ rehydratePriority?: RehydratePriority;
4523
+ /** Optional. Used to set blob tags in various blob operations. */
4524
+ blobTagsString?: string;
4525
+ /** Overrides the sealed state of the destination blob. Service version 2019-12-12 and newer. */
4526
+ sealBlob?: boolean;
4527
+ /** Specified if a legal hold should be set on the blob. */
4528
+ legalHold?: boolean;
4529
+ }
3762
4530
  /**
3763
4531
  * Options to configure the {@link BlobClient.beginCopyFromURL} operation.
3764
4532
  */
@@ -3812,13 +4580,9 @@ export declare interface BlobStartCopyFromURLOptions extends CommonOptions {
3812
4580
  sealBlob?: boolean;
3813
4581
  }
3814
4582
  /** Contains response data for the startCopyFromURL operation. */
3815
- export declare type BlobStartCopyFromURLResponse = BlobStartCopyFromURLHeaders & {
3816
- /** The underlying HTTP response. */
3817
- _response: coreHttp.HttpResponse & {
3818
- /** The parsed HTTP response headers. */
3819
- parsedHeaders: BlobStartCopyFromURLHeaders;
3820
- };
3821
- };
4583
+ export declare type BlobStartCopyFromURLResponse = WithResponse<BlobStartCopyFromURLHeaders, BlobStartCopyFromURLHeaders>;
4584
+ /** Contains response data for the startCopyFromURL operation. */
4585
+ declare type BlobStartCopyFromURLResponse_2 = BlobStartCopyFromURLHeaders;
3822
4586
  /**
3823
4587
  * Options to configure the {@link BlobClient.syncCopyFromURL} operation.
3824
4588
  */
@@ -3901,6 +4665,13 @@ export declare interface BlobUndeleteHeaders {
3901
4665
  /** Error Code */
3902
4666
  errorCode?: string;
3903
4667
  }
4668
+ /** Optional parameters. */
4669
+ declare interface BlobUndeleteOptionalParams extends coreClient.OperationOptions {
4670
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
4671
+ timeoutInSeconds?: number;
4672
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
4673
+ requestId?: string;
4674
+ }
3904
4675
  /**
3905
4676
  * Options to configure the {@link BlobClient.undelete} operation.
3906
4677
  */
@@ -3916,23 +4687,14 @@ export declare interface BlobUndeleteOptions extends CommonOptions {
3916
4687
  customerProvidedKey?: CpkInfo;
3917
4688
  }
3918
4689
  /** Contains response data for the undelete operation. */
3919
- export declare type BlobUndeleteResponse = BlobUndeleteHeaders & {
3920
- /** The underlying HTTP response. */
3921
- _response: coreHttp.HttpResponse & {
3922
- /** The parsed HTTP response headers. */
3923
- parsedHeaders: BlobUndeleteHeaders;
3924
- };
3925
- };
4690
+ export declare type BlobUndeleteResponse = WithResponse<BlobUndeleteHeaders, BlobUndeleteHeaders>;
4691
+ /** Contains response data for the undelete operation. */
4692
+ declare type BlobUndeleteResponse_2 = BlobUndeleteHeaders;
3926
4693
  /**
3927
4694
  * Response type for {@link BlockBlobClient.uploadFile}, {@link BlockBlobClient.uploadStream}, and
3928
4695
  * {@link BlockBlobClient.uploadBrowserDate}.
3929
4696
  */
3930
- export declare type BlobUploadCommonResponse = BlockBlobUploadHeaders & {
3931
- /**
3932
- * The underlying HTTP response.
3933
- */
3934
- _response: HttpResponse;
3935
- };
4697
+ export declare type BlobUploadCommonResponse = WithResponse<BlockBlobUploadHeaders>;
3936
4698
  /** Represents a single block in a block blob. It describes the block's ID and size. */
3937
4699
  export declare interface Block {
3938
4700
  /** The base64 encoded block ID. */
@@ -3940,6 +4702,74 @@ export declare interface Block {
3940
4702
  /** The block size in bytes. */
3941
4703
  size: number;
3942
4704
  }
4705
+ /** Interface representing a BlockBlob. */
4706
+ declare interface BlockBlob {
4707
+ /**
4708
+ * The Upload Block Blob operation updates the content of an existing block blob. Updating an existing
4709
+ * block blob overwrites any existing metadata on the blob. Partial updates are not supported with Put
4710
+ * Blob; the content of the existing blob is overwritten with the content of the new blob. To perform a
4711
+ * partial update of the content of a block blob, use the Put Block List operation.
4712
+ * @param contentLength The length of the request.
4713
+ * @param body Initial data
4714
+ * @param options The options parameters.
4715
+ */
4716
+ upload(contentLength: number, body: coreRestPipeline.RequestBodyType, options?: BlockBlobUploadOptionalParams): Promise<BlockBlobUploadResponse_2>;
4717
+ /**
4718
+ * The Put Blob from URL operation creates a new Block Blob where the contents of the blob are read
4719
+ * from a given URL. This API is supported beginning with the 2020-04-08 version. Partial updates are
4720
+ * not supported with Put Blob from URL; the content of an existing blob is overwritten with the
4721
+ * content of the new blob. To perform partial updates to a block blob’s contents using a source URL,
4722
+ * use the Put Block from URL API in conjunction with Put Block List.
4723
+ * @param contentLength The length of the request.
4724
+ * @param copySource Specifies the name of the source page blob snapshot. This value is a URL of up to
4725
+ * 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would
4726
+ * appear in a request URI. The source blob must either be public or must be authenticated via a shared
4727
+ * access signature.
4728
+ * @param options The options parameters.
4729
+ */
4730
+ putBlobFromUrl(contentLength: number, copySource: string, options?: BlockBlobPutBlobFromUrlOptionalParams): Promise<BlockBlobPutBlobFromUrlResponse_2>;
4731
+ /**
4732
+ * The Stage Block operation creates a new block to be committed as part of a blob
4733
+ * @param blockId A valid Base64 string value that identifies the block. Prior to encoding, the string
4734
+ * must be less than or equal to 64 bytes in size. For a given blob, the length of the value specified
4735
+ * for the blockid parameter must be the same size for each block.
4736
+ * @param contentLength The length of the request.
4737
+ * @param body Initial data
4738
+ * @param options The options parameters.
4739
+ */
4740
+ stageBlock(blockId: string, contentLength: number, body: coreRestPipeline.RequestBodyType, options?: BlockBlobStageBlockOptionalParams): Promise<BlockBlobStageBlockResponse_2>;
4741
+ /**
4742
+ * The Stage Block operation creates a new block to be committed as part of a blob where the contents
4743
+ * are read from a URL.
4744
+ * @param blockId A valid Base64 string value that identifies the block. Prior to encoding, the string
4745
+ * must be less than or equal to 64 bytes in size. For a given blob, the length of the value specified
4746
+ * for the blockid parameter must be the same size for each block.
4747
+ * @param contentLength The length of the request.
4748
+ * @param sourceUrl Specify a URL to the copy source.
4749
+ * @param options The options parameters.
4750
+ */
4751
+ stageBlockFromURL(blockId: string, contentLength: number, sourceUrl: string, options?: BlockBlobStageBlockFromURLOptionalParams): Promise<BlockBlobStageBlockFromURLResponse_2>;
4752
+ /**
4753
+ * The Commit Block List operation writes a blob by specifying the list of block IDs that make up the
4754
+ * blob. In order to be written as part of a blob, a block must have been successfully written to the
4755
+ * server in a prior Put Block operation. You can call Put Block List to update a blob by uploading
4756
+ * only those blocks that have changed, then committing the new and existing blocks together. You can
4757
+ * do this by specifying whether to commit a block from the committed block list or from the
4758
+ * uncommitted block list, or to commit the most recently uploaded version of the block, whichever list
4759
+ * it may belong to.
4760
+ * @param blocks Blob Blocks.
4761
+ * @param options The options parameters.
4762
+ */
4763
+ commitBlockList(blocks: BlockLookupList, options?: BlockBlobCommitBlockListOptionalParams): Promise<BlockBlobCommitBlockListResponse_2>;
4764
+ /**
4765
+ * The Get Block List operation retrieves the list of blocks that have been uploaded as part of a block
4766
+ * blob
4767
+ * @param listType Specifies whether to return the list of committed blocks, the list of uncommitted
4768
+ * blocks, or both lists together.
4769
+ * @param options The options parameters.
4770
+ */
4771
+ getBlockList(listType: BlockListType, options?: BlockBlobGetBlockListOptionalParams): Promise<BlockBlobGetBlockListResponseInternal>;
4772
+ }
3943
4773
  /**
3944
4774
  * BlockBlobClient defines a set of operations applicable to block blobs.
3945
4775
  */
@@ -4264,6 +5094,41 @@ export declare interface BlockBlobCommitBlockListHeaders {
4264
5094
  /** Error Code */
4265
5095
  errorCode?: string;
4266
5096
  }
5097
+ /** Optional parameters. */
5098
+ declare interface BlockBlobCommitBlockListOptionalParams extends coreClient.OperationOptions {
5099
+ /** Parameter group */
5100
+ leaseAccessConditions?: LeaseAccessConditions;
5101
+ /** Parameter group */
5102
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
5103
+ /** Parameter group */
5104
+ cpkInfo?: CpkInfo;
5105
+ /** Parameter group */
5106
+ blobHttpHeaders?: BlobHTTPHeaders;
5107
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5108
+ timeoutInSeconds?: number;
5109
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5110
+ requestId?: string;
5111
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
5112
+ metadata?: {
5113
+ [propertyName: string]: string;
5114
+ };
5115
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
5116
+ immutabilityPolicyExpiry?: Date;
5117
+ /** Specifies the immutability policy mode to set on the blob. */
5118
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
5119
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
5120
+ encryptionScope?: string;
5121
+ /** Optional. Indicates the tier to be set on the blob. */
5122
+ tier?: AccessTier;
5123
+ /** Optional. Used to set blob tags in various blob operations. */
5124
+ blobTagsString?: string;
5125
+ /** Specified if a legal hold should be set on the blob. */
5126
+ legalHold?: boolean;
5127
+ /** Specify the transactional md5 for the body, to be validated by the service. */
5128
+ transactionalContentMD5?: Uint8Array;
5129
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
5130
+ transactionalContentCrc64?: Uint8Array;
5131
+ }
4267
5132
  /**
4268
5133
  * Options to configure {@link BlockBlobClient.commitBlockList} operation.
4269
5134
  */
@@ -4319,13 +5184,9 @@ export declare interface BlockBlobCommitBlockListOptions extends CommonOptions {
4319
5184
  tags?: Tags;
4320
5185
  }
4321
5186
  /** Contains response data for the commitBlockList operation. */
4322
- export declare type BlockBlobCommitBlockListResponse = BlockBlobCommitBlockListHeaders & {
4323
- /** The underlying HTTP response. */
4324
- _response: coreHttp.HttpResponse & {
4325
- /** The parsed HTTP response headers. */
4326
- parsedHeaders: BlockBlobCommitBlockListHeaders;
4327
- };
4328
- };
5187
+ export declare type BlockBlobCommitBlockListResponse = WithResponse<BlockBlobCommitBlockListHeaders, BlockBlobCommitBlockListHeaders>;
5188
+ /** Contains response data for the commitBlockList operation. */
5189
+ declare type BlockBlobCommitBlockListResponse_2 = BlockBlobCommitBlockListHeaders;
4329
5190
  /** Defines headers for BlockBlob_getBlockList operation. */
4330
5191
  export declare interface BlockBlobGetBlockListHeaders {
4331
5192
  /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
@@ -4347,6 +5208,19 @@ export declare interface BlockBlobGetBlockListHeaders {
4347
5208
  /** Error Code */
4348
5209
  errorCode?: string;
4349
5210
  }
5211
+ /** Optional parameters. */
5212
+ declare interface BlockBlobGetBlockListOptionalParams extends coreClient.OperationOptions {
5213
+ /** Parameter group */
5214
+ leaseAccessConditions?: LeaseAccessConditions;
5215
+ /** Parameter group */
5216
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
5217
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5218
+ timeoutInSeconds?: number;
5219
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5220
+ requestId?: string;
5221
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
5222
+ snapshot?: string;
5223
+ }
4350
5224
  /**
4351
5225
  * Options to configure {@link BlockBlobClient.getBlockList} operation.
4352
5226
  */
@@ -4363,17 +5237,9 @@ export declare interface BlockBlobGetBlockListOptions extends CommonOptions {
4363
5237
  conditions?: LeaseAccessConditions & TagConditions;
4364
5238
  }
4365
5239
  /** Contains response data for the getBlockList operation. */
4366
- export declare type BlockBlobGetBlockListResponse = BlockBlobGetBlockListHeaders & BlockList & {
4367
- /** The underlying HTTP response. */
4368
- _response: coreHttp.HttpResponse & {
4369
- /** The response body as text (string format) */
4370
- bodyAsText: string;
4371
- /** The response body as parsed JSON or XML */
4372
- parsedBody: BlockList;
4373
- /** The parsed HTTP response headers. */
4374
- parsedHeaders: BlockBlobGetBlockListHeaders;
4375
- };
4376
- };
5240
+ export declare type BlockBlobGetBlockListResponse = WithResponse<BlockBlobGetBlockListResponseInternal, BlockBlobGetBlockListHeaders>;
5241
+ /** Contains response data for the getBlockList operation. */
5242
+ export declare type BlockBlobGetBlockListResponseInternal = BlockBlobGetBlockListHeaders & BlockList;
4377
5243
  /**
4378
5244
  * Option interface for {@link BlockBlobClient.uploadFile} and {@link BlockBlobClient.uploadSeekableStream}.
4379
5245
  */
@@ -4463,14 +5329,47 @@ export declare interface BlockBlobPutBlobFromUrlHeaders {
4463
5329
  /** Error Code */
4464
5330
  errorCode?: string;
4465
5331
  }
4466
- /** Contains response data for the putBlobFromUrl operation. */
4467
- export declare type BlockBlobPutBlobFromUrlResponse = BlockBlobPutBlobFromUrlHeaders & {
4468
- /** The underlying HTTP response. */
4469
- _response: coreHttp.HttpResponse & {
4470
- /** The parsed HTTP response headers. */
4471
- parsedHeaders: BlockBlobPutBlobFromUrlHeaders;
5332
+ /** Optional parameters. */
5333
+ declare interface BlockBlobPutBlobFromUrlOptionalParams extends coreClient.OperationOptions {
5334
+ /** Parameter group */
5335
+ leaseAccessConditions?: LeaseAccessConditions;
5336
+ /** Parameter group */
5337
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
5338
+ /** Parameter group */
5339
+ cpkInfo?: CpkInfo;
5340
+ /** Parameter group */
5341
+ blobHttpHeaders?: BlobHTTPHeaders;
5342
+ /** Parameter group */
5343
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
5344
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5345
+ timeoutInSeconds?: number;
5346
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5347
+ requestId?: string;
5348
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
5349
+ metadata?: {
5350
+ [propertyName: string]: string;
4472
5351
  };
4473
- };
5352
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
5353
+ encryptionScope?: string;
5354
+ /** Optional. Indicates the tier to be set on the blob. */
5355
+ tier?: AccessTier;
5356
+ /** Optional. Used to set blob tags in various blob operations. */
5357
+ blobTagsString?: string;
5358
+ /** Specify the md5 calculated for the range of bytes that must be read from the copy source. */
5359
+ sourceContentMD5?: Uint8Array;
5360
+ /** Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source. */
5361
+ copySourceAuthorization?: string;
5362
+ /** Optional, default 'replace'. Indicates if source tags should be copied or replaced with the tags specified by x-ms-tags. */
5363
+ copySourceTags?: BlobCopySourceTags;
5364
+ /** Specify the transactional md5 for the body, to be validated by the service. */
5365
+ transactionalContentMD5?: Uint8Array;
5366
+ /** Optional, default is true. Indicates if properties from the source blob should be copied. */
5367
+ copySourceBlobProperties?: boolean;
5368
+ }
5369
+ /** Contains response data for the putBlobFromUrl operation. */
5370
+ export declare type BlockBlobPutBlobFromUrlResponse = WithResponse<BlockBlobPutBlobFromUrlHeaders, BlockBlobPutBlobFromUrlHeaders>;
5371
+ /** Contains response data for the putBlobFromUrl operation. */
5372
+ declare type BlockBlobPutBlobFromUrlResponse_2 = BlockBlobPutBlobFromUrlHeaders;
4474
5373
  /**
4475
5374
  * Options to configure {@link BlockBlobClient.query} operation.
4476
5375
  */
@@ -4528,6 +5427,29 @@ export declare interface BlockBlobStageBlockFromURLHeaders {
4528
5427
  /** Error Code */
4529
5428
  errorCode?: string;
4530
5429
  }
5430
+ /** Optional parameters. */
5431
+ declare interface BlockBlobStageBlockFromURLOptionalParams extends coreClient.OperationOptions {
5432
+ /** Parameter group */
5433
+ leaseAccessConditions?: LeaseAccessConditions;
5434
+ /** Parameter group */
5435
+ cpkInfo?: CpkInfo;
5436
+ /** Parameter group */
5437
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
5438
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5439
+ timeoutInSeconds?: number;
5440
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5441
+ requestId?: string;
5442
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
5443
+ encryptionScope?: string;
5444
+ /** Specify the md5 calculated for the range of bytes that must be read from the copy source. */
5445
+ sourceContentMD5?: Uint8Array;
5446
+ /** Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source. */
5447
+ copySourceAuthorization?: string;
5448
+ /** Specify the crc64 calculated for the range of bytes that must be read from the copy source. */
5449
+ sourceContentCrc64?: Uint8Array;
5450
+ /** Bytes of source data in the specified range. */
5451
+ sourceRange?: string;
5452
+ }
4531
5453
  /**
4532
5454
  * Options to configure {@link BlockBlobClient.stageBlockFromURL} operation.
4533
5455
  */
@@ -4580,13 +5502,9 @@ export declare interface BlockBlobStageBlockFromURLOptions extends CommonOptions
4580
5502
  sourceAuthorization?: HttpAuthorization;
4581
5503
  }
4582
5504
  /** Contains response data for the stageBlockFromURL operation. */
4583
- export declare type BlockBlobStageBlockFromURLResponse = BlockBlobStageBlockFromURLHeaders & {
4584
- /** The underlying HTTP response. */
4585
- _response: coreHttp.HttpResponse & {
4586
- /** The parsed HTTP response headers. */
4587
- parsedHeaders: BlockBlobStageBlockFromURLHeaders;
4588
- };
4589
- };
5505
+ export declare type BlockBlobStageBlockFromURLResponse = WithResponse<BlockBlobStageBlockFromURLHeaders, BlockBlobStageBlockFromURLHeaders>;
5506
+ /** Contains response data for the stageBlockFromURL operation. */
5507
+ declare type BlockBlobStageBlockFromURLResponse_2 = BlockBlobStageBlockFromURLHeaders;
4590
5508
  /** Defines headers for BlockBlob_stageBlock operation. */
4591
5509
  export declare interface BlockBlobStageBlockHeaders {
4592
5510
  /** This header is returned so that the client can check for message content integrity. The value of this header is computed by the Blob service; it is not necessarily the same value specified in the request headers. */
@@ -4610,6 +5528,23 @@ export declare interface BlockBlobStageBlockHeaders {
4610
5528
  /** Error Code */
4611
5529
  errorCode?: string;
4612
5530
  }
5531
+ /** Optional parameters. */
5532
+ declare interface BlockBlobStageBlockOptionalParams extends coreClient.OperationOptions {
5533
+ /** Parameter group */
5534
+ leaseAccessConditions?: LeaseAccessConditions;
5535
+ /** Parameter group */
5536
+ cpkInfo?: CpkInfo;
5537
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5538
+ timeoutInSeconds?: number;
5539
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5540
+ requestId?: string;
5541
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
5542
+ encryptionScope?: string;
5543
+ /** Specify the transactional md5 for the body, to be validated by the service. */
5544
+ transactionalContentMD5?: Uint8Array;
5545
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
5546
+ transactionalContentCrc64?: Uint8Array;
5547
+ }
4613
5548
  /**
4614
5549
  * Options to configure {@link BlockBlobClient.stageBlock} operation.
4615
5550
  */
@@ -4655,13 +5590,9 @@ export declare interface BlockBlobStageBlockOptions extends CommonOptions {
4655
5590
  encryptionScope?: string;
4656
5591
  }
4657
5592
  /** Contains response data for the stageBlock operation. */
4658
- export declare type BlockBlobStageBlockResponse = BlockBlobStageBlockHeaders & {
4659
- /** The underlying HTTP response. */
4660
- _response: coreHttp.HttpResponse & {
4661
- /** The parsed HTTP response headers. */
4662
- parsedHeaders: BlockBlobStageBlockHeaders;
4663
- };
4664
- };
5593
+ export declare type BlockBlobStageBlockResponse = WithResponse<BlockBlobStageBlockHeaders, BlockBlobStageBlockHeaders>;
5594
+ /** Contains response data for the stageBlock operation. */
5595
+ declare type BlockBlobStageBlockResponse_2 = BlockBlobStageBlockHeaders;
4665
5596
  /**
4666
5597
  * Options to configure {@link BlockBlobClient.syncUploadFromURL} operation.
4667
5598
  */
@@ -4789,6 +5720,41 @@ export declare interface BlockBlobUploadHeaders {
4789
5720
  /** Error Code */
4790
5721
  errorCode?: string;
4791
5722
  }
5723
+ /** Optional parameters. */
5724
+ declare interface BlockBlobUploadOptionalParams extends coreClient.OperationOptions {
5725
+ /** Parameter group */
5726
+ leaseAccessConditions?: LeaseAccessConditions;
5727
+ /** Parameter group */
5728
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
5729
+ /** Parameter group */
5730
+ cpkInfo?: CpkInfo;
5731
+ /** Parameter group */
5732
+ blobHttpHeaders?: BlobHTTPHeaders;
5733
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
5734
+ timeoutInSeconds?: number;
5735
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
5736
+ requestId?: string;
5737
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
5738
+ metadata?: {
5739
+ [propertyName: string]: string;
5740
+ };
5741
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
5742
+ immutabilityPolicyExpiry?: Date;
5743
+ /** Specifies the immutability policy mode to set on the blob. */
5744
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
5745
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
5746
+ encryptionScope?: string;
5747
+ /** Optional. Indicates the tier to be set on the blob. */
5748
+ tier?: AccessTier;
5749
+ /** Optional. Used to set blob tags in various blob operations. */
5750
+ blobTagsString?: string;
5751
+ /** Specified if a legal hold should be set on the blob. */
5752
+ legalHold?: boolean;
5753
+ /** Specify the transactional md5 for the body, to be validated by the service. */
5754
+ transactionalContentMD5?: Uint8Array;
5755
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
5756
+ transactionalContentCrc64?: Uint8Array;
5757
+ }
4792
5758
  /**
4793
5759
  * Options to configure {@link BlockBlobClient.upload} operation.
4794
5760
  */
@@ -4851,13 +5817,9 @@ export declare interface BlockBlobUploadOptions extends CommonOptions {
4851
5817
  tags?: Tags;
4852
5818
  }
4853
5819
  /** Contains response data for the upload operation. */
4854
- export declare type BlockBlobUploadResponse = BlockBlobUploadHeaders & {
4855
- /** The underlying HTTP response. */
4856
- _response: coreHttp.HttpResponse & {
4857
- /** The parsed HTTP response headers. */
4858
- parsedHeaders: BlockBlobUploadHeaders;
4859
- };
4860
- };
5820
+ export declare type BlockBlobUploadResponse = WithResponse<BlockBlobUploadHeaders, BlockBlobUploadHeaders>;
5821
+ /** Contains response data for the upload operation. */
5822
+ declare type BlockBlobUploadResponse_2 = BlockBlobUploadHeaders;
4861
5823
  /**
4862
5824
  * Option interface for the {@link BlockBlobClient.uploadStream} operation.
4863
5825
  */
@@ -4912,7 +5874,12 @@ export declare interface BlockList {
4912
5874
  }
4913
5875
  /** Defines values for BlockListType. */
4914
5876
  export declare type BlockListType = "committed" | "uncommitted" | "all";
4915
- declare interface ClearRange {
5877
+ declare interface BlockLookupList {
5878
+ committed?: string[];
5879
+ uncommitted?: string[];
5880
+ latest?: string[];
5881
+ }
5882
+ export declare interface ClearRange {
4916
5883
  start: number;
4917
5884
  end: number;
4918
5885
  }
@@ -4981,6 +5948,155 @@ export declare interface CommonOptions {
4981
5948
  */
4982
5949
  tracingOptions?: OperationTracingOptions;
4983
5950
  }
5951
+ /** Interface representing a Container. */
5952
+ declare interface Container {
5953
+ /**
5954
+ * creates a new container under the specified account. If the container with the same name already
5955
+ * exists, the operation fails
5956
+ * @param options The options parameters.
5957
+ */
5958
+ create(options?: ContainerCreateOptionalParams): Promise<ContainerCreateResponse_2>;
5959
+ /**
5960
+ * returns all user-defined metadata and system properties for the specified container. The data
5961
+ * returned does not include the container's list of blobs
5962
+ * @param options The options parameters.
5963
+ */
5964
+ getProperties(options?: ContainerGetPropertiesOptionalParams): Promise<ContainerGetPropertiesResponse_2>;
5965
+ /**
5966
+ * operation marks the specified container for deletion. The container and any blobs contained within
5967
+ * it are later deleted during garbage collection
5968
+ * @param options The options parameters.
5969
+ */
5970
+ delete(options?: ContainerDeleteOptionalParams): Promise<ContainerDeleteResponse_2>;
5971
+ /**
5972
+ * operation sets one or more user-defined name-value pairs for the specified container.
5973
+ * @param options The options parameters.
5974
+ */
5975
+ setMetadata(options?: ContainerSetMetadataOptionalParams): Promise<ContainerSetMetadataResponse_2>;
5976
+ /**
5977
+ * gets the permissions for the specified container. The permissions indicate whether container data
5978
+ * may be accessed publicly.
5979
+ * @param options The options parameters.
5980
+ */
5981
+ getAccessPolicy(options?: ContainerGetAccessPolicyOptionalParams): Promise<ContainerGetAccessPolicyResponseModel>;
5982
+ /**
5983
+ * sets the permissions for the specified container. The permissions indicate whether blobs in a
5984
+ * container may be accessed publicly.
5985
+ * @param options The options parameters.
5986
+ */
5987
+ setAccessPolicy(options?: ContainerSetAccessPolicyOptionalParams): Promise<ContainerSetAccessPolicyResponse_2>;
5988
+ /**
5989
+ * Restores a previously-deleted container.
5990
+ * @param options The options parameters.
5991
+ */
5992
+ restore(options?: ContainerRestoreOptionalParams): Promise<ContainerRestoreResponse>;
5993
+ /**
5994
+ * Renames an existing container.
5995
+ * @param sourceContainerName Required. Specifies the name of the container to rename.
5996
+ * @param options The options parameters.
5997
+ */
5998
+ rename(sourceContainerName: string, options?: ContainerRenameOptionalParams): Promise<ContainerRenameResponse_2>;
5999
+ /**
6000
+ * The Batch operation allows multiple API calls to be embedded into a single HTTP request.
6001
+ * @param contentLength The length of the request.
6002
+ * @param multipartContentType Required. The value of this header must be multipart/mixed with a batch
6003
+ * boundary. Example header value: multipart/mixed; boundary=batch_<GUID>
6004
+ * @param body Initial data
6005
+ * @param options The options parameters.
6006
+ */
6007
+ submitBatch(contentLength: number, multipartContentType: string, body: coreRestPipeline.RequestBodyType, options?: ContainerSubmitBatchOptionalParams): Promise<ContainerSubmitBatchResponse>;
6008
+ /**
6009
+ * The Filter Blobs operation enables callers to list blobs in a container whose tags match a given
6010
+ * search expression. Filter blobs searches within the given container.
6011
+ * @param options The options parameters.
6012
+ */
6013
+ filterBlobs(options?: ContainerFilterBlobsOptionalParams): Promise<ContainerFilterBlobsResponse>;
6014
+ /**
6015
+ * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
6016
+ * be 15 to 60 seconds, or can be infinite
6017
+ * @param options The options parameters.
6018
+ */
6019
+ acquireLease(options?: ContainerAcquireLeaseOptionalParams): Promise<ContainerAcquireLeaseResponse>;
6020
+ /**
6021
+ * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
6022
+ * be 15 to 60 seconds, or can be infinite
6023
+ * @param leaseId Specifies the current lease ID on the resource.
6024
+ * @param options The options parameters.
6025
+ */
6026
+ releaseLease(leaseId: string, options?: ContainerReleaseLeaseOptionalParams): Promise<ContainerReleaseLeaseResponse>;
6027
+ /**
6028
+ * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
6029
+ * be 15 to 60 seconds, or can be infinite
6030
+ * @param leaseId Specifies the current lease ID on the resource.
6031
+ * @param options The options parameters.
6032
+ */
6033
+ renewLease(leaseId: string, options?: ContainerRenewLeaseOptionalParams): Promise<ContainerRenewLeaseResponse>;
6034
+ /**
6035
+ * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
6036
+ * be 15 to 60 seconds, or can be infinite
6037
+ * @param options The options parameters.
6038
+ */
6039
+ breakLease(options?: ContainerBreakLeaseOptionalParams): Promise<ContainerBreakLeaseResponse>;
6040
+ /**
6041
+ * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
6042
+ * be 15 to 60 seconds, or can be infinite
6043
+ * @param leaseId Specifies the current lease ID on the resource.
6044
+ * @param proposedLeaseId Proposed lease ID, in a GUID string format. The Blob service returns 400
6045
+ * (Invalid request) if the proposed lease ID is not in the correct format. See Guid Constructor
6046
+ * (String) for a list of valid GUID string formats.
6047
+ * @param options The options parameters.
6048
+ */
6049
+ changeLease(leaseId: string, proposedLeaseId: string, options?: ContainerChangeLeaseOptionalParams): Promise<ContainerChangeLeaseResponse>;
6050
+ /**
6051
+ * [Update] The List Blobs operation returns a list of the blobs under the specified container
6052
+ * @param options The options parameters.
6053
+ */
6054
+ listBlobFlatSegment(options?: ContainerListBlobFlatSegmentOptionalParams): Promise<ContainerListBlobFlatSegmentResponse_2>;
6055
+ /**
6056
+ * [Update] The List Blobs operation returns a list of the blobs under the specified container
6057
+ * @param delimiter When the request includes this parameter, the operation returns a BlobPrefix
6058
+ * element in the response body that acts as a placeholder for all blobs whose names begin with the
6059
+ * same substring up to the appearance of the delimiter character. The delimiter may be a single
6060
+ * character or a string.
6061
+ * @param options The options parameters.
6062
+ */
6063
+ listBlobHierarchySegment(delimiter: string, options?: ContainerListBlobHierarchySegmentOptionalParams): Promise<ContainerListBlobHierarchySegmentResponse_2>;
6064
+ /**
6065
+ * Returns the sku name and account kind
6066
+ * @param options The options parameters.
6067
+ */
6068
+ getAccountInfo(options?: ContainerGetAccountInfoOptionalParams): Promise<ContainerGetAccountInfoResponse>;
6069
+ }
6070
+ /** Defines headers for Container_acquireLease operation. */
6071
+ declare interface ContainerAcquireLeaseHeaders {
6072
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
6073
+ etag?: string;
6074
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
6075
+ lastModified?: Date;
6076
+ /** Uniquely identifies a container's lease */
6077
+ leaseId?: string;
6078
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
6079
+ clientRequestId?: string;
6080
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
6081
+ requestId?: string;
6082
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
6083
+ version?: string;
6084
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
6085
+ date?: Date;
6086
+ }
6087
+ /** Optional parameters. */
6088
+ declare interface ContainerAcquireLeaseOptionalParams extends coreClient.OperationOptions {
6089
+ /** Parameter group */
6090
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
6091
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
6092
+ timeoutInSeconds?: number;
6093
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
6094
+ requestId?: string;
6095
+ /** Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change. */
6096
+ duration?: number;
6097
+ /** Proposed lease ID, in a GUID string format. The Blob service returns 400 (Invalid request) if the proposed lease ID is not in the correct format. See Guid Constructor (String) for a list of valid GUID string formats. */
6098
+ proposedLeaseId?: string;
6099
+ }
4984
6100
  /**
4985
6101
  * Options to configure Container - Acquire Lease operation.
4986
6102
  */
@@ -4995,8 +6111,27 @@ export declare interface ContainerAcquireLeaseOptions extends CommonOptions {
4995
6111
  */
4996
6112
  conditions?: ModifiedAccessConditions;
4997
6113
  }
6114
+ /** Contains response data for the acquireLease operation. */
6115
+ declare type ContainerAcquireLeaseResponse = ContainerAcquireLeaseHeaders;
6116
+ /** Defines headers for Container_breakLease operation. */
6117
+ declare interface ContainerBreakLeaseHeaders {
6118
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
6119
+ etag?: string;
6120
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
6121
+ lastModified?: Date;
6122
+ /** Approximate time remaining in the lease period, in seconds. */
6123
+ leaseTime?: number;
6124
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
6125
+ clientRequestId?: string;
6126
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
6127
+ requestId?: string;
6128
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
6129
+ version?: string;
6130
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
6131
+ date?: Date;
6132
+ }
4998
6133
  /** Optional parameters. */
4999
- export declare interface ContainerBreakLeaseOptionalParams extends coreHttp.OperationOptions {
6134
+ export declare interface ContainerBreakLeaseOptionalParams extends coreClient.OperationOptions {
5000
6135
  /** Parameter group */
5001
6136
  modifiedAccessConditions?: ModifiedAccessConditionsModel;
5002
6137
  /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
@@ -5020,6 +6155,34 @@ export declare interface ContainerBreakLeaseOptions extends CommonOptions {
5020
6155
  */
5021
6156
  conditions?: ModifiedAccessConditions;
5022
6157
  }
6158
+ /** Contains response data for the breakLease operation. */
6159
+ declare type ContainerBreakLeaseResponse = ContainerBreakLeaseHeaders;
6160
+ /** Defines headers for Container_changeLease operation. */
6161
+ declare interface ContainerChangeLeaseHeaders {
6162
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
6163
+ etag?: string;
6164
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
6165
+ lastModified?: Date;
6166
+ /** Uniquely identifies a container's lease */
6167
+ leaseId?: string;
6168
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
6169
+ clientRequestId?: string;
6170
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
6171
+ requestId?: string;
6172
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
6173
+ version?: string;
6174
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
6175
+ date?: Date;
6176
+ }
6177
+ /** Optional parameters. */
6178
+ declare interface ContainerChangeLeaseOptionalParams extends coreClient.OperationOptions {
6179
+ /** Parameter group */
6180
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
6181
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
6182
+ timeoutInSeconds?: number;
6183
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
6184
+ requestId?: string;
6185
+ }
5023
6186
  /**
5024
6187
  * Options to configure Container - Change Lease operation.
5025
6188
  */
@@ -5034,6 +6197,8 @@ export declare interface ContainerChangeLeaseOptions extends CommonOptions {
5034
6197
  */
5035
6198
  conditions?: ModifiedAccessConditions;
5036
6199
  }
6200
+ /** Contains response data for the changeLease operation. */
6201
+ declare type ContainerChangeLeaseResponse = ContainerChangeLeaseHeaders;
5037
6202
  /**
5038
6203
  * A ContainerClient represents a URL to the Azure Storage container allowing you to manipulate its blobs.
5039
6204
  */
@@ -5666,6 +6831,21 @@ export declare interface ContainerCreateIfNotExistsResponse extends ContainerCre
5666
6831
  */
5667
6832
  succeeded: boolean;
5668
6833
  }
6834
+ /** Optional parameters. */
6835
+ declare interface ContainerCreateOptionalParams extends coreClient.OperationOptions {
6836
+ /** Parameter group */
6837
+ containerEncryptionScope?: ContainerEncryptionScope;
6838
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
6839
+ timeoutInSeconds?: number;
6840
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
6841
+ requestId?: string;
6842
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
6843
+ metadata?: {
6844
+ [propertyName: string]: string;
6845
+ };
6846
+ /** Specifies whether data in the container may be accessed publicly and the level of access */
6847
+ access?: PublicAccessType;
6848
+ }
5669
6849
  /**
5670
6850
  * Options to configure {@link ContainerClient.create} operation.
5671
6851
  */
@@ -5691,13 +6871,9 @@ export declare interface ContainerCreateOptions extends CommonOptions {
5691
6871
  containerEncryptionScope?: ContainerEncryptionScope;
5692
6872
  }
5693
6873
  /** Contains response data for the create operation. */
5694
- export declare type ContainerCreateResponse = ContainerCreateHeaders & {
5695
- /** The underlying HTTP response. */
5696
- _response: coreHttp.HttpResponse & {
5697
- /** The parsed HTTP response headers. */
5698
- parsedHeaders: ContainerCreateHeaders;
5699
- };
5700
- };
6874
+ export declare type ContainerCreateResponse = WithResponse<ContainerCreateHeaders, ContainerCreateHeaders>;
6875
+ /** Contains response data for the create operation. */
6876
+ declare type ContainerCreateResponse_2 = ContainerCreateHeaders;
5701
6877
  /**
5702
6878
  * Options to configure the {@link ContainerClient.deleteBlob} operation.
5703
6879
  */
@@ -5744,14 +6920,21 @@ export declare interface ContainerDeleteMethodOptions extends CommonOptions {
5744
6920
  */
5745
6921
  conditions?: ContainerRequestConditions;
5746
6922
  }
6923
+ /** Optional parameters. */
6924
+ declare interface ContainerDeleteOptionalParams extends coreClient.OperationOptions {
6925
+ /** Parameter group */
6926
+ leaseAccessConditions?: LeaseAccessConditions;
6927
+ /** Parameter group */
6928
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
6929
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
6930
+ timeoutInSeconds?: number;
6931
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
6932
+ requestId?: string;
6933
+ }
5747
6934
  /** Contains response data for the delete operation. */
5748
- export declare type ContainerDeleteResponse = ContainerDeleteHeaders & {
5749
- /** The underlying HTTP response. */
5750
- _response: coreHttp.HttpResponse & {
5751
- /** The parsed HTTP response headers. */
5752
- parsedHeaders: ContainerDeleteHeaders;
5753
- };
5754
- };
6935
+ export declare type ContainerDeleteResponse = WithResponse<ContainerDeleteHeaders, ContainerDeleteHeaders>;
6936
+ /** Contains response data for the delete operation. */
6937
+ declare type ContainerDeleteResponse_2 = ContainerDeleteHeaders;
5755
6938
  /** Parameter group */
5756
6939
  export declare interface ContainerEncryptionScope {
5757
6940
  /** Optional. Version 2019-07-07 and later. Specifies the default encryption scope to set on the container and use for all future writes. */
@@ -5780,6 +6963,21 @@ export declare interface ContainerFilterBlobsHeaders {
5780
6963
  /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
5781
6964
  date?: Date;
5782
6965
  }
6966
+ /** Optional parameters. */
6967
+ declare interface ContainerFilterBlobsOptionalParams extends coreClient.OperationOptions {
6968
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
6969
+ timeoutInSeconds?: number;
6970
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
6971
+ requestId?: string;
6972
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
6973
+ marker?: string;
6974
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
6975
+ maxPageSize?: number;
6976
+ /** Filters the results to return only to return only blobs whose tags match the specified expression. */
6977
+ where?: string;
6978
+ }
6979
+ /** Contains response data for the filterBlobs operation. */
6980
+ export declare type ContainerFilterBlobsResponse = ContainerFilterBlobsHeaders & FilterBlobSegmentModel;
5783
6981
  /**
5784
6982
  * Options to configure the {@link BlobServiceClient.findBlobsByTags} operation.
5785
6983
  */
@@ -5793,25 +6991,7 @@ export declare interface ContainerFindBlobByTagsOptions extends CommonOptions {
5793
6991
  /**
5794
6992
  * The response of {@link BlobServiceClient.findBlobsByTags} operation.
5795
6993
  */
5796
- export declare type ContainerFindBlobsByTagsSegmentResponse = FilterBlobSegment & ContainerFilterBlobsHeaders & {
5797
- /**
5798
- * The underlying HTTP response.
5799
- */
5800
- _response: HttpResponse & {
5801
- /**
5802
- * The parsed HTTP response headers.
5803
- */
5804
- parsedHeaders: ContainerFilterBlobsHeaders;
5805
- /**
5806
- * The response body as text (string format)
5807
- */
5808
- bodyAsText: string;
5809
- /**
5810
- * The response body as parsed JSON or XML
5811
- */
5812
- parsedBody: FilterBlobSegmentModel;
5813
- };
5814
- };
6994
+ export declare type ContainerFindBlobsByTagsSegmentResponse = WithResponse<FilterBlobSegment & ContainerFilterBlobsHeaders, ContainerFilterBlobsHeaders, FilterBlobSegmentModel>;
5815
6995
  /**
5816
6996
  * Options to configure {@link ContainerClient.generateSasUrl} operation.
5817
6997
  */
@@ -5840,6 +7020,15 @@ export declare interface ContainerGetAccessPolicyHeaders {
5840
7020
  /** Error Code */
5841
7021
  errorCode?: string;
5842
7022
  }
7023
+ /** Optional parameters. */
7024
+ declare interface ContainerGetAccessPolicyOptionalParams extends coreClient.OperationOptions {
7025
+ /** Parameter group */
7026
+ leaseAccessConditions?: LeaseAccessConditions;
7027
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7028
+ timeoutInSeconds?: number;
7029
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7030
+ requestId?: string;
7031
+ }
5843
7032
  /**
5844
7033
  * Options to configure {@link ContainerClient.getAccessPolicy} operation.
5845
7034
  */
@@ -5858,27 +7047,31 @@ export declare interface ContainerGetAccessPolicyOptions extends CommonOptions {
5858
7047
  /**
5859
7048
  * Contains response data for the {@link ContainerClient.getAccessPolicy} operation.
5860
7049
  */
5861
- export declare type ContainerGetAccessPolicyResponse = {
7050
+ export declare type ContainerGetAccessPolicyResponse = WithResponse<{
5862
7051
  signedIdentifiers: SignedIdentifier[];
5863
- } & ContainerGetAccessPolicyHeaders & {
5864
- /**
5865
- * The underlying HTTP response.
5866
- */
5867
- _response: HttpResponse & {
5868
- /**
5869
- * The parsed HTTP response headers.
5870
- */
5871
- parsedHeaders: ContainerGetAccessPolicyHeaders;
5872
- /**
5873
- * The response body as text (string format)
5874
- */
5875
- bodyAsText: string;
5876
- /**
5877
- * The response body as parsed JSON or XML
5878
- */
5879
- parsedBody: SignedIdentifierModel[];
5880
- };
5881
- };
7052
+ } & ContainerGetAccessPolicyHeaders, ContainerGetAccessPolicyHeaders, SignedIdentifierModel>;
7053
+ /** Contains response data for the getAccessPolicy operation. */
7054
+ export declare type ContainerGetAccessPolicyResponseModel = ContainerGetAccessPolicyHeaders & SignedIdentifierModel[];
7055
+ /** Defines headers for Container_getAccountInfo operation. */
7056
+ declare interface ContainerGetAccountInfoHeaders {
7057
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
7058
+ clientRequestId?: string;
7059
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
7060
+ requestId?: string;
7061
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
7062
+ version?: string;
7063
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
7064
+ date?: Date;
7065
+ /** Identifies the sku name of the account */
7066
+ skuName?: SkuName;
7067
+ /** Identifies the account kind */
7068
+ accountKind?: AccountKind;
7069
+ }
7070
+ /** Optional parameters. */
7071
+ declare interface ContainerGetAccountInfoOptionalParams extends coreClient.OperationOptions {
7072
+ }
7073
+ /** Contains response data for the getAccountInfo operation. */
7074
+ declare type ContainerGetAccountInfoResponse = ContainerGetAccountInfoHeaders;
5882
7075
  /** Defines headers for Container_getProperties operation. */
5883
7076
  export declare interface ContainerGetPropertiesHeaders {
5884
7077
  metadata?: {
@@ -5917,6 +7110,15 @@ export declare interface ContainerGetPropertiesHeaders {
5917
7110
  /** Error Code */
5918
7111
  errorCode?: string;
5919
7112
  }
7113
+ /** Optional parameters. */
7114
+ declare interface ContainerGetPropertiesOptionalParams extends coreClient.OperationOptions {
7115
+ /** Parameter group */
7116
+ leaseAccessConditions?: LeaseAccessConditions;
7117
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7118
+ timeoutInSeconds?: number;
7119
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7120
+ requestId?: string;
7121
+ }
5920
7122
  /**
5921
7123
  * Options to configure {@link ContainerClient.getProperties} operation.
5922
7124
  */
@@ -5933,13 +7135,9 @@ export declare interface ContainerGetPropertiesOptions extends CommonOptions {
5933
7135
  conditions?: LeaseAccessConditions;
5934
7136
  }
5935
7137
  /** Contains response data for the getProperties operation. */
5936
- export declare type ContainerGetPropertiesResponse = ContainerGetPropertiesHeaders & {
5937
- /** The underlying HTTP response. */
5938
- _response: coreHttp.HttpResponse & {
5939
- /** The parsed HTTP response headers. */
5940
- parsedHeaders: ContainerGetPropertiesHeaders;
5941
- };
5942
- };
7138
+ export declare type ContainerGetPropertiesResponse = WithResponse<ContainerGetPropertiesHeaders, ContainerGetPropertiesHeaders>;
7139
+ /** Contains response data for the getProperties operation. */
7140
+ declare type ContainerGetPropertiesResponse_2 = ContainerGetPropertiesHeaders;
5943
7141
  /** An Azure Storage container */
5944
7142
  export declare interface ContainerItem {
5945
7143
  name: string;
@@ -5967,28 +7165,27 @@ export declare interface ContainerListBlobFlatSegmentHeaders {
5967
7165
  /** Error Code */
5968
7166
  errorCode?: string;
5969
7167
  }
7168
+ /** Optional parameters. */
7169
+ declare interface ContainerListBlobFlatSegmentOptionalParams extends coreClient.OperationOptions {
7170
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7171
+ timeoutInSeconds?: number;
7172
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7173
+ requestId?: string;
7174
+ /** Filters the results to return only containers whose name begins with the specified prefix. */
7175
+ prefix?: string;
7176
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
7177
+ marker?: string;
7178
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
7179
+ maxPageSize?: number;
7180
+ /** Include this parameter to specify one or more datasets to include in the response. */
7181
+ include?: ListBlobsIncludeItem[];
7182
+ }
5970
7183
  /**
5971
7184
  * Contains response data for the listBlobFlatSegment operation.
5972
7185
  */
5973
- export declare type ContainerListBlobFlatSegmentResponse = ListBlobsFlatSegmentResponse & ContainerListBlobFlatSegmentHeaders & {
5974
- /**
5975
- * The underlying HTTP response.
5976
- */
5977
- _response: HttpResponse & {
5978
- /**
5979
- * The parsed HTTP response headers.
5980
- */
5981
- parsedHeaders: ContainerListBlobFlatSegmentHeaders;
5982
- /**
5983
- * The response body as text (string format)
5984
- */
5985
- bodyAsText: string;
5986
- /**
5987
- * The response body as parsed JSON or XML
5988
- */
5989
- parsedBody: ListBlobsFlatSegmentResponseModel;
5990
- };
5991
- };
7186
+ export declare type ContainerListBlobFlatSegmentResponse = WithResponse<ListBlobsFlatSegmentResponse & ContainerListBlobFlatSegmentHeaders, ContainerListBlobFlatSegmentHeaders, ListBlobsFlatSegmentResponseModel>;
7187
+ /** Contains response data for the listBlobFlatSegment operation. */
7188
+ declare type ContainerListBlobFlatSegmentResponse_2 = ContainerListBlobFlatSegmentHeaders & ListBlobsFlatSegmentResponse_2;
5992
7189
  /** Defines headers for Container_listBlobHierarchySegment operation. */
5993
7190
  export declare interface ContainerListBlobHierarchySegmentHeaders {
5994
7191
  /** The media type of the body of the response. For List Blobs this is 'application/xml' */
@@ -6004,28 +7201,27 @@ export declare interface ContainerListBlobHierarchySegmentHeaders {
6004
7201
  /** Error Code */
6005
7202
  errorCode?: string;
6006
7203
  }
7204
+ /** Optional parameters. */
7205
+ declare interface ContainerListBlobHierarchySegmentOptionalParams extends coreClient.OperationOptions {
7206
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7207
+ timeoutInSeconds?: number;
7208
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7209
+ requestId?: string;
7210
+ /** Filters the results to return only containers whose name begins with the specified prefix. */
7211
+ prefix?: string;
7212
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
7213
+ marker?: string;
7214
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
7215
+ maxPageSize?: number;
7216
+ /** Include this parameter to specify one or more datasets to include in the response. */
7217
+ include?: ListBlobsIncludeItem[];
7218
+ }
6007
7219
  /**
6008
7220
  * Contains response data for the listBlobHierarchySegment operation.
6009
7221
  */
6010
- export declare type ContainerListBlobHierarchySegmentResponse = ListBlobsHierarchySegmentResponse & ContainerListBlobHierarchySegmentHeaders & {
6011
- /**
6012
- * The underlying HTTP response.
6013
- */
6014
- _response: HttpResponse & {
6015
- /**
6016
- * The parsed HTTP response headers.
6017
- */
6018
- parsedHeaders: ContainerListBlobHierarchySegmentHeaders;
6019
- /**
6020
- * The response body as text (string format)
6021
- */
6022
- bodyAsText: string;
6023
- /**
6024
- * The response body as parsed JSON or XML
6025
- */
6026
- parsedBody: ListBlobsHierarchySegmentResponseModel;
6027
- };
6028
- };
7222
+ export declare type ContainerListBlobHierarchySegmentResponse = WithResponse<ListBlobsHierarchySegmentResponse & ContainerListBlobHierarchySegmentHeaders, ContainerListBlobHierarchySegmentHeaders, ListBlobsHierarchySegmentResponseModel>;
7223
+ /** Contains response data for the listBlobHierarchySegment operation. */
7224
+ declare type ContainerListBlobHierarchySegmentResponse_2 = ContainerListBlobHierarchySegmentHeaders & ListBlobsHierarchySegmentResponse_2;
6029
7225
  /**
6030
7226
  * Options to configure Container - List Blobs operations.
6031
7227
  *
@@ -6102,6 +7298,30 @@ export declare interface ContainerProperties {
6102
7298
  /** Indicates if version level worm is enabled on this container. */
6103
7299
  isImmutableStorageWithVersioningEnabled?: boolean;
6104
7300
  }
7301
+ /** Defines headers for Container_releaseLease operation. */
7302
+ declare interface ContainerReleaseLeaseHeaders {
7303
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
7304
+ etag?: string;
7305
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
7306
+ lastModified?: Date;
7307
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
7308
+ clientRequestId?: string;
7309
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
7310
+ requestId?: string;
7311
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
7312
+ version?: string;
7313
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
7314
+ date?: Date;
7315
+ }
7316
+ /** Optional parameters. */
7317
+ declare interface ContainerReleaseLeaseOptionalParams extends coreClient.OperationOptions {
7318
+ /** Parameter group */
7319
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
7320
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7321
+ timeoutInSeconds?: number;
7322
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7323
+ requestId?: string;
7324
+ }
6105
7325
  /**
6106
7326
  * Options to configure Container - Release Lease operation.
6107
7327
  */
@@ -6116,6 +7336,8 @@ export declare interface ContainerReleaseLeaseOptions extends CommonOptions {
6116
7336
  */
6117
7337
  conditions?: ModifiedAccessConditions;
6118
7338
  }
7339
+ /** Contains response data for the releaseLease operation. */
7340
+ declare type ContainerReleaseLeaseResponse = ContainerReleaseLeaseHeaders;
6119
7341
  /** Defines headers for Container_rename operation. */
6120
7342
  export declare interface ContainerRenameHeaders {
6121
7343
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -6129,14 +7351,45 @@ export declare interface ContainerRenameHeaders {
6129
7351
  /** Error Code */
6130
7352
  errorCode?: string;
6131
7353
  }
7354
+ /** Optional parameters. */
7355
+ declare interface ContainerRenameOptionalParams extends coreClient.OperationOptions {
7356
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7357
+ timeoutInSeconds?: number;
7358
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7359
+ requestId?: string;
7360
+ /** A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match. */
7361
+ sourceLeaseId?: string;
7362
+ }
6132
7363
  /** Contains response data for the rename operation. */
6133
- export declare type ContainerRenameResponse = ContainerRenameHeaders & {
6134
- /** The underlying HTTP response. */
6135
- _response: coreHttp.HttpResponse & {
6136
- /** The parsed HTTP response headers. */
6137
- parsedHeaders: ContainerRenameHeaders;
6138
- };
6139
- };
7364
+ export declare type ContainerRenameResponse = WithResponse<ContainerRenameHeaders, ContainerRenameHeaders>;
7365
+ /** Contains response data for the rename operation. */
7366
+ declare type ContainerRenameResponse_2 = ContainerRenameHeaders;
7367
+ /** Defines headers for Container_renewLease operation. */
7368
+ declare interface ContainerRenewLeaseHeaders {
7369
+ /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
7370
+ etag?: string;
7371
+ /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
7372
+ lastModified?: Date;
7373
+ /** Uniquely identifies a container's lease */
7374
+ leaseId?: string;
7375
+ /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
7376
+ clientRequestId?: string;
7377
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
7378
+ requestId?: string;
7379
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
7380
+ version?: string;
7381
+ /** UTC date/time value generated by the service that indicates the time at which the response was initiated */
7382
+ date?: Date;
7383
+ }
7384
+ /** Optional parameters. */
7385
+ declare interface ContainerRenewLeaseOptionalParams extends coreClient.OperationOptions {
7386
+ /** Parameter group */
7387
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
7388
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7389
+ timeoutInSeconds?: number;
7390
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7391
+ requestId?: string;
7392
+ }
6140
7393
  /**
6141
7394
  * Options to configure Container - Renew Lease operation.
6142
7395
  */
@@ -6151,11 +7404,26 @@ export declare interface ContainerRenewLeaseOptions extends CommonOptions {
6151
7404
  */
6152
7405
  conditions?: ModifiedAccessConditions;
6153
7406
  }
7407
+ /** Contains response data for the renewLease operation. */
7408
+ declare type ContainerRenewLeaseResponse = ContainerRenewLeaseHeaders;
6154
7409
  /**
6155
7410
  * Conditions to meet for the container.
6156
7411
  */
6157
7412
  export declare interface ContainerRequestConditions extends LeaseAccessConditions, ModificationConditions {
6158
7413
  }
7414
+ /** Optional parameters. */
7415
+ declare interface ContainerRestoreOptionalParams extends coreClient.OperationOptions {
7416
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7417
+ timeoutInSeconds?: number;
7418
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7419
+ requestId?: string;
7420
+ /** Optional. Version 2019-12-12 and later. Specifies the name of the deleted container to restore. */
7421
+ deletedContainerName?: string;
7422
+ /** Optional. Version 2019-12-12 and later. Specifies the version of the deleted container to restore. */
7423
+ deletedContainerVersion?: string;
7424
+ }
7425
+ /** Contains response data for the restore operation. */
7426
+ declare type ContainerRestoreResponse = ContainerUndeleteHeaders;
6159
7427
  /**
6160
7428
  * This is a helper class to construct a string representing the permissions granted by a ServiceSAS to a container.
6161
7429
  * Setting a value to true means that any SAS which uses these permissions will grant permissions for that operation.
@@ -6315,6 +7583,21 @@ export declare interface ContainerSetAccessPolicyHeaders {
6315
7583
  /** Error Code */
6316
7584
  errorCode?: string;
6317
7585
  }
7586
+ /** Optional parameters. */
7587
+ declare interface ContainerSetAccessPolicyOptionalParams extends coreClient.OperationOptions {
7588
+ /** Parameter group */
7589
+ leaseAccessConditions?: LeaseAccessConditions;
7590
+ /** Parameter group */
7591
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
7592
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7593
+ timeoutInSeconds?: number;
7594
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7595
+ requestId?: string;
7596
+ /** Specifies whether data in the container may be accessed publicly and the level of access */
7597
+ access?: PublicAccessType;
7598
+ /** the acls for the container */
7599
+ containerAcl?: SignedIdentifierModel[];
7600
+ }
6318
7601
  /**
6319
7602
  * Options to configure {@link ContainerClient.setAccessPolicy} operation.
6320
7603
  */
@@ -6330,13 +7613,9 @@ export declare interface ContainerSetAccessPolicyOptions extends CommonOptions {
6330
7613
  conditions?: ContainerRequestConditions;
6331
7614
  }
6332
7615
  /** Contains response data for the setAccessPolicy operation. */
6333
- export declare type ContainerSetAccessPolicyResponse = ContainerSetAccessPolicyHeaders & {
6334
- /** The underlying HTTP response. */
6335
- _response: coreHttp.HttpResponse & {
6336
- /** The parsed HTTP response headers. */
6337
- parsedHeaders: ContainerSetAccessPolicyHeaders;
6338
- };
6339
- };
7616
+ export declare type ContainerSetAccessPolicyResponse = WithResponse<ContainerSetAccessPolicyHeaders, ContainerSetAccessPolicyHeaders>;
7617
+ /** Contains response data for the setAccessPolicy operation. */
7618
+ declare type ContainerSetAccessPolicyResponse_2 = ContainerSetAccessPolicyHeaders;
6340
7619
  /** Defines headers for Container_setMetadata operation. */
6341
7620
  export declare interface ContainerSetMetadataHeaders {
6342
7621
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -6354,6 +7633,21 @@ export declare interface ContainerSetMetadataHeaders {
6354
7633
  /** Error Code */
6355
7634
  errorCode?: string;
6356
7635
  }
7636
+ /** Optional parameters. */
7637
+ declare interface ContainerSetMetadataOptionalParams extends coreClient.OperationOptions {
7638
+ /** Parameter group */
7639
+ leaseAccessConditions?: LeaseAccessConditions;
7640
+ /** Parameter group */
7641
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
7642
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7643
+ timeoutInSeconds?: number;
7644
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7645
+ requestId?: string;
7646
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
7647
+ metadata?: {
7648
+ [propertyName: string]: string;
7649
+ };
7650
+ }
6357
7651
  /**
6358
7652
  * Options to configure {@link ContainerClient.setMetadata} operation.
6359
7653
  */
@@ -6370,12 +7664,41 @@ export declare interface ContainerSetMetadataOptions extends CommonOptions {
6370
7664
  conditions?: ContainerRequestConditions;
6371
7665
  }
6372
7666
  /** Contains response data for the setMetadata operation. */
6373
- export declare type ContainerSetMetadataResponse = ContainerSetMetadataHeaders & {
6374
- /** The underlying HTTP response. */
6375
- _response: coreHttp.HttpResponse & {
6376
- /** The parsed HTTP response headers. */
6377
- parsedHeaders: ContainerSetMetadataHeaders;
6378
- };
7667
+ export declare type ContainerSetMetadataResponse = WithResponse<ContainerSetMetadataHeaders, ContainerSetMetadataHeaders>;
7668
+ /** Contains response data for the setMetadata operation. */
7669
+ declare type ContainerSetMetadataResponse_2 = ContainerSetMetadataHeaders;
7670
+ /** Defines headers for Container_submitBatch operation. */
7671
+ declare interface ContainerSubmitBatchHeaders {
7672
+ /** The media type of the body of the response. For batch requests, this is multipart/mixed; boundary=batchresponse_GUID */
7673
+ contentType?: string;
7674
+ /** This header uniquely identifies the request that was made and can be used for troubleshooting the request. */
7675
+ requestId?: string;
7676
+ /** Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and above. */
7677
+ version?: string;
7678
+ }
7679
+ /** Optional parameters. */
7680
+ declare interface ContainerSubmitBatchOptionalParams extends coreClient.OperationOptions {
7681
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
7682
+ timeoutInSeconds?: number;
7683
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
7684
+ requestId?: string;
7685
+ }
7686
+ /** Contains response data for the submitBatch operation. */
7687
+ declare type ContainerSubmitBatchResponse = ContainerSubmitBatchHeaders & {
7688
+ /**
7689
+ * BROWSER ONLY
7690
+ *
7691
+ * The response body as a browser Blob.
7692
+ * Always `undefined` in node.js.
7693
+ */
7694
+ blobBody?: Promise<Blob>;
7695
+ /**
7696
+ * NODEJS ONLY
7697
+ *
7698
+ * The response body as a node.js Readable stream.
7699
+ * Always `undefined` in the browser.
7700
+ */
7701
+ readableStreamBody?: NodeJS.ReadableStream;
6379
7702
  };
6380
7703
  /** Defines headers for Container_restore operation. */
6381
7704
  export declare interface ContainerUndeleteHeaders {
@@ -6391,13 +7714,7 @@ export declare interface ContainerUndeleteHeaders {
6391
7714
  errorCode?: string;
6392
7715
  }
6393
7716
  /** Contains response data for the restore operation. */
6394
- export declare type ContainerUndeleteResponse = ContainerUndeleteHeaders & {
6395
- /** The underlying HTTP response. */
6396
- _response: coreHttp.HttpResponse & {
6397
- /** The parsed HTTP response headers. */
6398
- parsedHeaders: ContainerUndeleteHeaders;
6399
- };
6400
- };
7717
+ export declare type ContainerUndeleteResponse = WithResponse<ContainerUndeleteHeaders, ContainerUndeleteHeaders>;
6401
7718
  /**
6402
7719
  * Defines the operations from a {@link BlobClient} that are needed for the poller
6403
7720
  * returned by {@link BlobClient.beginCopyFromURL} to work.
@@ -6468,12 +7785,24 @@ export declare abstract class CredentialPolicy extends BaseRequestPolicy {
6468
7785
  export declare type CredentialPolicyCreator = (nextPolicy: RequestPolicy, options: RequestPolicyOptions) => CredentialPolicy;
6469
7786
  /** Defines values for DeleteSnapshotsOptionType. */
6470
7787
  export declare type DeleteSnapshotsOptionType = "include" | "only";
6471
- export { deserializationPolicy };
7788
+ /** Groups the settings used for interpreting the blob data if the blob is delimited text formatted. */
7789
+ declare interface DelimitedTextConfiguration {
7790
+ /** The string used to separate columns. */
7791
+ columnSeparator?: string;
7792
+ /** The string used to quote a specific field. */
7793
+ fieldQuote?: string;
7794
+ /** The string used to separate records. */
7795
+ recordSeparator?: string;
7796
+ /** The string used as an escape character. */
7797
+ escapeChar?: string;
7798
+ /** Represents whether the data has headers. */
7799
+ headersPresent?: boolean;
7800
+ }
6472
7801
  /**
6473
7802
  * Defines values for EncryptionAlgorithmType. \
6474
7803
  * {@link KnownEncryptionAlgorithmType} can be used interchangeably with EncryptionAlgorithmType,
6475
7804
  * this enum contains the known values that the service supports.
6476
- * ### Know values supported by the service
7805
+ * ### Known values supported by the service
6477
7806
  * **AES256**
6478
7807
  */
6479
7808
  export declare type EncryptionAlgorithmType = string;
@@ -6675,13 +8004,43 @@ export declare interface HttpAuthorization {
6675
8004
  export { HttpHeaders };
6676
8005
  export { HttpOperationResponse };
6677
8006
  export { HttpRequestBody };
6678
- export { IHttpClient };
8007
+ /**
8008
+ * A representation of an HTTP response that
8009
+ * includes a reference to the request that
8010
+ * originated it.
8011
+ */
8012
+ export declare interface HttpResponse {
8013
+ /**
8014
+ * The headers from the response.
8015
+ */
8016
+ headers: HttpHeaders;
8017
+ /**
8018
+ * The original request that resulted in this response.
8019
+ */
8020
+ request: WebResource;
8021
+ /**
8022
+ * The HTTP status code returned from the service.
8023
+ */
8024
+ status: number;
8025
+ }
6679
8026
  /**
6680
8027
  * A helper to decide if a given argument satisfies the Pipeline contract
6681
8028
  * @param pipeline - An argument that may be a Pipeline
6682
8029
  * @returns true when the argument satisfies the Pipeline contract
6683
8030
  */
6684
8031
  export declare function isPipelineLike(pipeline: unknown): pipeline is PipelineLike;
8032
+ /** json text configuration */
8033
+ declare interface JsonTextConfiguration {
8034
+ /** The string used to separate records. */
8035
+ recordSeparator?: string;
8036
+ }
8037
+ /** Key information */
8038
+ declare interface KeyInfo {
8039
+ /** The date-time the key is active in ISO 8601 UTC time */
8040
+ startsOn: string;
8041
+ /** The date-time the key expires in ISO 8601 UTC time */
8042
+ expiresOn: string;
8043
+ }
6685
8044
  /**
6686
8045
  * The details for a specific lease.
6687
8046
  */
@@ -6756,17 +8115,7 @@ export declare interface LeaseOperationOptions extends CommonOptions {
6756
8115
  *
6757
8116
  * See {@link BlobLeaseClient}.
6758
8117
  */
6759
- export declare type LeaseOperationResponse = Lease & {
6760
- /**
6761
- * The underlying HTTP response.
6762
- */
6763
- _response: HttpResponse & {
6764
- /**
6765
- * The parsed HTTP response headers.
6766
- */
6767
- parsedHeaders: Lease;
6768
- };
6769
- };
8118
+ export declare type LeaseOperationResponse = WithResponse<Lease, Lease>;
6770
8119
  /** Defines values for LeaseStateType. */
6771
8120
  export declare type LeaseStateType = "available" | "leased" | "expired" | "breaking" | "broken";
6772
8121
  /** Defines values for LeaseStatusType. */
@@ -6784,6 +8133,16 @@ export declare interface ListBlobsFlatSegmentResponse {
6784
8133
  continuationToken?: string;
6785
8134
  }
6786
8135
  /** An enumeration of blobs */
8136
+ declare interface ListBlobsFlatSegmentResponse_2 {
8137
+ serviceEndpoint: string;
8138
+ containerName: string;
8139
+ prefix?: string;
8140
+ marker?: string;
8141
+ maxPageSize?: number;
8142
+ segment: BlobFlatListSegment_2;
8143
+ continuationToken?: string;
8144
+ }
8145
+ /** An enumeration of blobs */
6787
8146
  export declare interface ListBlobsFlatSegmentResponseModel {
6788
8147
  serviceEndpoint: string;
6789
8148
  containerName: string;
@@ -6807,6 +8166,17 @@ export declare interface ListBlobsHierarchySegmentResponse {
6807
8166
  continuationToken?: string;
6808
8167
  }
6809
8168
  /** An enumeration of blobs */
8169
+ declare interface ListBlobsHierarchySegmentResponse_2 {
8170
+ serviceEndpoint: string;
8171
+ containerName: string;
8172
+ prefix?: string;
8173
+ marker?: string;
8174
+ maxPageSize?: number;
8175
+ delimiter?: string;
8176
+ segment: BlobHierarchyListSegment_2;
8177
+ continuationToken?: string;
8178
+ }
8179
+ /** An enumeration of blobs */
6810
8180
  export declare interface ListBlobsHierarchySegmentResponseModel {
6811
8181
  serviceEndpoint: string;
6812
8182
  containerName: string;
@@ -6817,6 +8187,10 @@ export declare interface ListBlobsHierarchySegmentResponseModel {
6817
8187
  segment: BlobHierarchyListSegmentModel;
6818
8188
  continuationToken?: string;
6819
8189
  }
8190
+ /** Defines values for ListBlobsIncludeItem. */
8191
+ declare type ListBlobsIncludeItem = "copy" | "deleted" | "metadata" | "snapshots" | "uncommittedblobs" | "versions" | "tags" | "immutabilitypolicy" | "legalhold" | "deletedwithversions";
8192
+ /** Defines values for ListContainersIncludeType. */
8193
+ declare type ListContainersIncludeType = "metadata" | "deleted" | "system";
6820
8194
  /** An enumeration of containers */
6821
8195
  export declare interface ListContainersSegmentResponse {
6822
8196
  serviceEndpoint: string;
@@ -6952,6 +8326,82 @@ export declare interface ObjectReplicationRule {
6952
8326
  * Object Replication Policy(s) applied. See {@link ObjectReplicationPolicy} and {@link ObjectReplicationRule}.
6953
8327
  */
6954
8328
  export declare type ObjectReplicationStatus = "complete" | "failed";
8329
+ /** Interface representing a PageBlob. */
8330
+ declare interface PageBlob {
8331
+ /**
8332
+ * The Create operation creates a new page blob.
8333
+ * @param contentLength The length of the request.
8334
+ * @param blobContentLength This header specifies the maximum size for the page blob, up to 1 TB. The
8335
+ * page blob size must be aligned to a 512-byte boundary.
8336
+ * @param options The options parameters.
8337
+ */
8338
+ create(contentLength: number, blobContentLength: number, options?: PageBlobCreateOptionalParams): Promise<PageBlobCreateResponse_2>;
8339
+ /**
8340
+ * The Upload Pages operation writes a range of pages to a page blob
8341
+ * @param contentLength The length of the request.
8342
+ * @param body Initial data
8343
+ * @param options The options parameters.
8344
+ */
8345
+ uploadPages(contentLength: number, body: coreRestPipeline.RequestBodyType, options?: PageBlobUploadPagesOptionalParams): Promise<PageBlobUploadPagesResponse_2>;
8346
+ /**
8347
+ * The Clear Pages operation clears a set of pages from a page blob
8348
+ * @param contentLength The length of the request.
8349
+ * @param options The options parameters.
8350
+ */
8351
+ clearPages(contentLength: number, options?: PageBlobClearPagesOptionalParams): Promise<PageBlobClearPagesResponse_2>;
8352
+ /**
8353
+ * The Upload Pages operation writes a range of pages to a page blob where the contents are read from a
8354
+ * URL
8355
+ * @param sourceUrl Specify a URL to the copy source.
8356
+ * @param sourceRange Bytes of source data in the specified range. The length of this range should
8357
+ * match the ContentLength header and x-ms-range/Range destination range header.
8358
+ * @param contentLength The length of the request.
8359
+ * @param range The range of bytes to which the source range would be written. The range should be 512
8360
+ * aligned and range-end is required.
8361
+ * @param options The options parameters.
8362
+ */
8363
+ uploadPagesFromURL(sourceUrl: string, sourceRange: string, contentLength: number, range: string, options?: PageBlobUploadPagesFromURLOptionalParams): Promise<PageBlobUploadPagesFromURLResponse_2>;
8364
+ /**
8365
+ * The Get Page Ranges operation returns the list of valid page ranges for a page blob or snapshot of a
8366
+ * page blob
8367
+ * @param options The options parameters.
8368
+ */
8369
+ getPageRanges(options?: PageBlobGetPageRangesOptionalParams): Promise<PageBlobGetPageRangesResponseInternal>;
8370
+ /**
8371
+ * The Get Page Ranges Diff operation returns the list of valid page ranges for a page blob that were
8372
+ * changed between target blob and previous snapshot.
8373
+ * @param options The options parameters.
8374
+ */
8375
+ getPageRangesDiff(options?: PageBlobGetPageRangesDiffOptionalParams): Promise<PageBlobGetPageRangesDiffResponseInternal>;
8376
+ /**
8377
+ * Resize the Blob
8378
+ * @param blobContentLength This header specifies the maximum size for the page blob, up to 1 TB. The
8379
+ * page blob size must be aligned to a 512-byte boundary.
8380
+ * @param options The options parameters.
8381
+ */
8382
+ resize(blobContentLength: number, options?: PageBlobResizeOptionalParams): Promise<PageBlobResizeResponse_2>;
8383
+ /**
8384
+ * Update the sequence number of the blob
8385
+ * @param sequenceNumberAction Required if the x-ms-blob-sequence-number header is set for the request.
8386
+ * This property applies to page blobs only. This property indicates how the service should modify the
8387
+ * blob's sequence number
8388
+ * @param options The options parameters.
8389
+ */
8390
+ updateSequenceNumber(sequenceNumberAction: SequenceNumberActionType, options?: PageBlobUpdateSequenceNumberOptionalParams): Promise<PageBlobUpdateSequenceNumberResponse_2>;
8391
+ /**
8392
+ * The Copy Incremental operation copies a snapshot of the source page blob to a destination page blob.
8393
+ * The snapshot is copied such that only the differential changes between the previously copied
8394
+ * snapshot are transferred to the destination. The copied snapshots are complete copies of the
8395
+ * original snapshot and can be read or copied from as usual. This API is supported since REST version
8396
+ * 2016-05-31.
8397
+ * @param copySource Specifies the name of the source page blob snapshot. This value is a URL of up to
8398
+ * 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would
8399
+ * appear in a request URI. The source blob must either be public or must be authenticated via a shared
8400
+ * access signature.
8401
+ * @param options The options parameters.
8402
+ */
8403
+ copyIncremental(copySource: string, options?: PageBlobCopyIncrementalOptionalParams): Promise<PageBlobCopyIncrementalResponse_2>;
8404
+ }
6955
8405
  /** Defines headers for PageBlob_clearPages operation. */
6956
8406
  export declare interface PageBlobClearPagesHeaders {
6957
8407
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -6975,6 +8425,25 @@ export declare interface PageBlobClearPagesHeaders {
6975
8425
  /** Error Code */
6976
8426
  errorCode?: string;
6977
8427
  }
8428
+ /** Optional parameters. */
8429
+ declare interface PageBlobClearPagesOptionalParams extends coreClient.OperationOptions {
8430
+ /** Parameter group */
8431
+ leaseAccessConditions?: LeaseAccessConditions;
8432
+ /** Parameter group */
8433
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
8434
+ /** Parameter group */
8435
+ cpkInfo?: CpkInfo;
8436
+ /** Parameter group */
8437
+ sequenceNumberAccessConditions?: SequenceNumberAccessConditions;
8438
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
8439
+ timeoutInSeconds?: number;
8440
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
8441
+ requestId?: string;
8442
+ /** Return only the bytes of the blob in the specified range. */
8443
+ range?: string;
8444
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
8445
+ encryptionScope?: string;
8446
+ }
6978
8447
  /**
6979
8448
  * Options to configure the {@link PageBlobClient.clearPages} operation.
6980
8449
  */
@@ -7001,13 +8470,9 @@ export declare interface PageBlobClearPagesOptions extends CommonOptions {
7001
8470
  encryptionScope?: string;
7002
8471
  }
7003
8472
  /** Contains response data for the clearPages operation. */
7004
- export declare type PageBlobClearPagesResponse = PageBlobClearPagesHeaders & {
7005
- /** The underlying HTTP response. */
7006
- _response: coreHttp.HttpResponse & {
7007
- /** The parsed HTTP response headers. */
7008
- parsedHeaders: PageBlobClearPagesHeaders;
7009
- };
7010
- };
8473
+ export declare type PageBlobClearPagesResponse = WithResponse<PageBlobClearPagesHeaders, PageBlobClearPagesHeaders>;
8474
+ /** Contains response data for the clearPages operation. */
8475
+ declare type PageBlobClearPagesResponse_2 = PageBlobClearPagesHeaders;
7011
8476
  /**
7012
8477
  * PageBlobClient defines a set of operations applicable to page blobs.
7013
8478
  */
@@ -7430,14 +8895,19 @@ export declare interface PageBlobCopyIncrementalHeaders {
7430
8895
  /** Error Code */
7431
8896
  errorCode?: string;
7432
8897
  }
8898
+ /** Optional parameters. */
8899
+ declare interface PageBlobCopyIncrementalOptionalParams extends coreClient.OperationOptions {
8900
+ /** Parameter group */
8901
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
8902
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
8903
+ timeoutInSeconds?: number;
8904
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
8905
+ requestId?: string;
8906
+ }
7433
8907
  /** Contains response data for the copyIncremental operation. */
7434
- export declare type PageBlobCopyIncrementalResponse = PageBlobCopyIncrementalHeaders & {
7435
- /** The underlying HTTP response. */
7436
- _response: coreHttp.HttpResponse & {
7437
- /** The parsed HTTP response headers. */
7438
- parsedHeaders: PageBlobCopyIncrementalHeaders;
7439
- };
7440
- };
8908
+ export declare type PageBlobCopyIncrementalResponse = WithResponse<PageBlobCopyIncrementalHeaders, PageBlobCopyIncrementalHeaders>;
8909
+ /** Contains response data for the copyIncremental operation. */
8910
+ declare type PageBlobCopyIncrementalResponse_2 = PageBlobCopyIncrementalHeaders;
7441
8911
  /** Defines headers for PageBlob_create operation. */
7442
8912
  export declare interface PageBlobCreateHeaders {
7443
8913
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -7525,6 +8995,39 @@ export declare interface PageBlobCreateIfNotExistsResponse extends PageBlobCreat
7525
8995
  */
7526
8996
  succeeded: boolean;
7527
8997
  }
8998
+ /** Optional parameters. */
8999
+ declare interface PageBlobCreateOptionalParams extends coreClient.OperationOptions {
9000
+ /** Parameter group */
9001
+ leaseAccessConditions?: LeaseAccessConditions;
9002
+ /** Parameter group */
9003
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9004
+ /** Parameter group */
9005
+ cpkInfo?: CpkInfo;
9006
+ /** Parameter group */
9007
+ blobHttpHeaders?: BlobHTTPHeaders;
9008
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9009
+ timeoutInSeconds?: number;
9010
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9011
+ requestId?: string;
9012
+ /** Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value pairs are specified, the operation will copy the metadata from the source blob or file to the destination blob. If one or more name-value pairs are specified, the destination blob is created with the specified metadata, and metadata is not copied from the source blob or file. Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more information. */
9013
+ metadata?: {
9014
+ [propertyName: string]: string;
9015
+ };
9016
+ /** Specifies the date time when the blobs immutability policy is set to expire. */
9017
+ immutabilityPolicyExpiry?: Date;
9018
+ /** Specifies the immutability policy mode to set on the blob. */
9019
+ immutabilityPolicyMode?: BlobImmutabilityPolicyMode;
9020
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
9021
+ encryptionScope?: string;
9022
+ /** Optional. Indicates the tier to be set on the blob. */
9023
+ tier?: AccessTier;
9024
+ /** Optional. Used to set blob tags in various blob operations. */
9025
+ blobTagsString?: string;
9026
+ /** Specified if a legal hold should be set on the blob. */
9027
+ legalHold?: boolean;
9028
+ /** Set for page blobs only. The sequence number is a user-controlled value that you can use to track requests. The value of the sequence number must be between 0 and 2^63 - 1. */
9029
+ blobSequenceNumber?: number;
9030
+ }
7528
9031
  /**
7529
9032
  * Options to configure the {@link PageBlobClient.create} operation.
7530
9033
  */
@@ -7585,13 +9088,9 @@ export declare interface PageBlobCreateOptions extends CommonOptions {
7585
9088
  tags?: Tags;
7586
9089
  }
7587
9090
  /** Contains response data for the create operation. */
7588
- export declare type PageBlobCreateResponse = PageBlobCreateHeaders & {
7589
- /** The underlying HTTP response. */
7590
- _response: coreHttp.HttpResponse & {
7591
- /** The parsed HTTP response headers. */
7592
- parsedHeaders: PageBlobCreateHeaders;
7593
- };
7594
- };
9091
+ export declare type PageBlobCreateResponse = WithResponse<PageBlobCreateHeaders, PageBlobCreateHeaders>;
9092
+ /** Contains response data for the create operation. */
9093
+ declare type PageBlobCreateResponse_2 = PageBlobCreateHeaders;
7595
9094
  /** Defines headers for PageBlob_getPageRangesDiff operation. */
7596
9095
  export declare interface PageBlobGetPageRangesDiffHeaders {
7597
9096
  /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
@@ -7611,6 +9110,29 @@ export declare interface PageBlobGetPageRangesDiffHeaders {
7611
9110
  /** Error Code */
7612
9111
  errorCode?: string;
7613
9112
  }
9113
+ /** Optional parameters. */
9114
+ declare interface PageBlobGetPageRangesDiffOptionalParams extends coreClient.OperationOptions {
9115
+ /** Parameter group */
9116
+ leaseAccessConditions?: LeaseAccessConditions;
9117
+ /** Parameter group */
9118
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9119
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9120
+ timeoutInSeconds?: number;
9121
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9122
+ requestId?: string;
9123
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
9124
+ marker?: string;
9125
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
9126
+ maxPageSize?: number;
9127
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
9128
+ snapshot?: string;
9129
+ /** Return only the bytes of the blob in the specified range. */
9130
+ range?: string;
9131
+ /** Optional in version 2015-07-08 and newer. The prevsnapshot parameter is a DateTime value that specifies that the response will contain only pages that were changed between target blob and previous snapshot. Changed pages include both updated and cleared pages. The target blob may be a snapshot, as long as the snapshot specified by prevsnapshot is the older of the two. Note that incremental snapshots are currently supported only for blobs created on or after January 1, 2016. */
9132
+ prevsnapshot?: string;
9133
+ /** Optional. This header is only supported in service versions 2019-04-19 and after and specifies the URL of a previous snapshot of the target blob. The response will only contain pages that were changed between the target blob and its previous snapshot. */
9134
+ prevSnapshotUrl?: string;
9135
+ }
7614
9136
  /**
7615
9137
  * Options to configure the {@link PageBlobClient.getRangesDiff} operation.
7616
9138
  */
@@ -7632,37 +9154,12 @@ export declare interface PageBlobGetPageRangesDiffOptions extends CommonOptions
7632
9154
  /**
7633
9155
  * Contains response data for the {@link BlobClient.getPageRangesDiff} operation.
7634
9156
  */
7635
- export declare interface PageBlobGetPageRangesDiffResponse extends PageList, PageBlobGetPageRangesDiffHeaders {
7636
- /**
7637
- * The underlying HTTP response.
7638
- */
7639
- _response: HttpResponse & {
7640
- /**
7641
- * The parsed HTTP response headers.
7642
- */
7643
- parsedHeaders: PageBlobGetPageRangesDiffHeaders;
7644
- /**
7645
- * The response body as text (string format)
7646
- */
7647
- bodyAsText: string;
7648
- /**
7649
- * The response body as parsed JSON or XML
7650
- */
7651
- parsedBody: PageList;
7652
- };
9157
+ export declare interface PageBlobGetPageRangesDiffResponse extends PageList, PageBlobGetPageRangesDiffHeaders, ResponseWithBody<PageBlobGetPageRangesDiffHeaders, PageList> {
7653
9158
  }
7654
9159
  /** Contains response data for the getPageRangesDiff operation. */
7655
- export declare type PageBlobGetPageRangesDiffResponseModel = PageBlobGetPageRangesDiffHeaders & PageList_2 & {
7656
- /** The underlying HTTP response. */
7657
- _response: coreHttp.HttpResponse & {
7658
- /** The response body as text (string format) */
7659
- bodyAsText: string;
7660
- /** The response body as parsed JSON or XML */
7661
- parsedBody: PageList_2;
7662
- /** The parsed HTTP response headers. */
7663
- parsedHeaders: PageBlobGetPageRangesDiffHeaders;
7664
- };
7665
- };
9160
+ export declare type PageBlobGetPageRangesDiffResponseInternal = PageBlobGetPageRangesDiffHeaders & PageListInternal;
9161
+ /** Contains response data for the getPageRangesDiff operation. */
9162
+ export declare type PageBlobGetPageRangesDiffResponseModel = WithResponse<PageBlobGetPageRangesDiffResponseInternal, PageBlobGetPageRangesDiffHeaders, PageListInternal>;
7666
9163
  /** Defines headers for PageBlob_getPageRanges operation. */
7667
9164
  export declare interface PageBlobGetPageRangesHeaders {
7668
9165
  /** Returns the date and time the container was last modified. Any operation that modifies the blob, including an update of the blob's metadata or properties, changes the last-modified time of the blob. */
@@ -7682,54 +9179,48 @@ export declare interface PageBlobGetPageRangesHeaders {
7682
9179
  /** Error Code */
7683
9180
  errorCode?: string;
7684
9181
  }
9182
+ /** Optional parameters. */
9183
+ declare interface PageBlobGetPageRangesOptionalParams extends coreClient.OperationOptions {
9184
+ /** Parameter group */
9185
+ leaseAccessConditions?: LeaseAccessConditions;
9186
+ /** Parameter group */
9187
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9188
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9189
+ timeoutInSeconds?: number;
9190
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9191
+ requestId?: string;
9192
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
9193
+ marker?: string;
9194
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
9195
+ maxPageSize?: number;
9196
+ /** The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a> */
9197
+ snapshot?: string;
9198
+ /** Return only the bytes of the blob in the specified range. */
9199
+ range?: string;
9200
+ }
7685
9201
  /**
7686
9202
  * Options to configure the {@link PageBlobClient.getPageRanges} operation.
7687
9203
  */
7688
9204
  export declare interface PageBlobGetPageRangesOptions extends CommonOptions {
7689
- /**
7690
- * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.
7691
- * For example, use the &commat;azure/abort-controller to create an `AbortSignal`.
7692
- */
7693
- abortSignal?: AbortSignalLike;
7694
- /**
7695
- * Conditions to meet when getting page ranges.
7696
- */
7697
- conditions?: BlobRequestConditions;
7698
- }
7699
- /**
7700
- * Contains response data for the {@link BlobClient.getPageRanges} operation.
7701
- */
7702
- export declare interface PageBlobGetPageRangesResponse extends PageList, PageBlobGetPageRangesHeaders {
7703
- /**
7704
- * The underlying HTTP response.
7705
- */
7706
- _response: HttpResponse & {
7707
- /**
7708
- * The parsed HTTP response headers.
7709
- */
7710
- parsedHeaders: PageBlobGetPageRangesHeaders;
7711
- /**
7712
- * The response body as text (string format)
7713
- */
7714
- bodyAsText: string;
7715
- /**
7716
- * The response body as parsed JSON or XML
7717
- */
7718
- parsedBody: PageList;
7719
- };
9205
+ /**
9206
+ * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.
9207
+ * For example, use the &commat;azure/abort-controller to create an `AbortSignal`.
9208
+ */
9209
+ abortSignal?: AbortSignalLike;
9210
+ /**
9211
+ * Conditions to meet when getting page ranges.
9212
+ */
9213
+ conditions?: BlobRequestConditions;
9214
+ }
9215
+ /**
9216
+ * Contains response data for the {@link BlobClient.getPageRanges} operation.
9217
+ */
9218
+ export declare interface PageBlobGetPageRangesResponse extends PageList, PageBlobGetPageRangesHeaders, ResponseWithBody<PageBlobGetPageRangesHeaders, PageList> {
7720
9219
  }
7721
9220
  /** Contains response data for the getPageRanges operation. */
7722
- export declare type PageBlobGetPageRangesResponseModel = PageBlobGetPageRangesHeaders & PageList_2 & {
7723
- /** The underlying HTTP response. */
7724
- _response: coreHttp.HttpResponse & {
7725
- /** The response body as text (string format) */
7726
- bodyAsText: string;
7727
- /** The response body as parsed JSON or XML */
7728
- parsedBody: PageList_2;
7729
- /** The parsed HTTP response headers. */
7730
- parsedHeaders: PageBlobGetPageRangesHeaders;
7731
- };
7732
- };
9221
+ export declare type PageBlobGetPageRangesResponseInternal = PageBlobGetPageRangesHeaders & PageListInternal;
9222
+ /** Contains response data for the getPageRanges operation. */
9223
+ export declare type PageBlobGetPageRangesResponseModel = WithResponse<PageBlobGetPageRangesResponseInternal, PageBlobGetPageRangesHeaders, PageListInternal>;
7733
9224
  /**
7734
9225
  * Options to configure the {@link PageBlobClient.listPageRangesDiff} operation.
7735
9226
  */
@@ -7782,6 +9273,21 @@ export declare interface PageBlobResizeHeaders {
7782
9273
  /** Error Code */
7783
9274
  errorCode?: string;
7784
9275
  }
9276
+ /** Optional parameters. */
9277
+ declare interface PageBlobResizeOptionalParams extends coreClient.OperationOptions {
9278
+ /** Parameter group */
9279
+ leaseAccessConditions?: LeaseAccessConditions;
9280
+ /** Parameter group */
9281
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9282
+ /** Parameter group */
9283
+ cpkInfo?: CpkInfo;
9284
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9285
+ timeoutInSeconds?: number;
9286
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9287
+ requestId?: string;
9288
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
9289
+ encryptionScope?: string;
9290
+ }
7785
9291
  /**
7786
9292
  * Options to configure {@link PageBlobClient.resize} operation.
7787
9293
  */
@@ -7804,13 +9310,9 @@ export declare interface PageBlobResizeOptions extends CommonOptions {
7804
9310
  encryptionScope?: string;
7805
9311
  }
7806
9312
  /** Contains response data for the resize operation. */
7807
- export declare type PageBlobResizeResponse = PageBlobResizeHeaders & {
7808
- /** The underlying HTTP response. */
7809
- _response: coreHttp.HttpResponse & {
7810
- /** The parsed HTTP response headers. */
7811
- parsedHeaders: PageBlobResizeHeaders;
7812
- };
7813
- };
9313
+ export declare type PageBlobResizeResponse = WithResponse<PageBlobResizeHeaders, PageBlobResizeHeaders>;
9314
+ /** Contains response data for the resize operation. */
9315
+ declare type PageBlobResizeResponse_2 = PageBlobResizeHeaders;
7814
9316
  /**
7815
9317
  * Options to configure {@link PageBlobClient.startCopyIncremental} operation.
7816
9318
  */
@@ -7844,6 +9346,19 @@ export declare interface PageBlobUpdateSequenceNumberHeaders {
7844
9346
  /** Error Code */
7845
9347
  errorCode?: string;
7846
9348
  }
9349
+ /** Optional parameters. */
9350
+ declare interface PageBlobUpdateSequenceNumberOptionalParams extends coreClient.OperationOptions {
9351
+ /** Parameter group */
9352
+ leaseAccessConditions?: LeaseAccessConditions;
9353
+ /** Parameter group */
9354
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9355
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9356
+ timeoutInSeconds?: number;
9357
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9358
+ requestId?: string;
9359
+ /** Set for page blobs only. The sequence number is a user-controlled value that you can use to track requests. The value of the sequence number must be between 0 and 2^63 - 1. */
9360
+ blobSequenceNumber?: number;
9361
+ }
7847
9362
  /**
7848
9363
  * Options to configure {@link PageBlobClient.updateSequenceNumber} operation.
7849
9364
  */
@@ -7859,13 +9374,9 @@ export declare interface PageBlobUpdateSequenceNumberOptions extends CommonOptio
7859
9374
  conditions?: BlobRequestConditions;
7860
9375
  }
7861
9376
  /** Contains response data for the updateSequenceNumber operation. */
7862
- export declare type PageBlobUpdateSequenceNumberResponse = PageBlobUpdateSequenceNumberHeaders & {
7863
- /** The underlying HTTP response. */
7864
- _response: coreHttp.HttpResponse & {
7865
- /** The parsed HTTP response headers. */
7866
- parsedHeaders: PageBlobUpdateSequenceNumberHeaders;
7867
- };
7868
- };
9377
+ export declare type PageBlobUpdateSequenceNumberResponse = WithResponse<PageBlobUpdateSequenceNumberHeaders, PageBlobUpdateSequenceNumberHeaders>;
9378
+ /** Contains response data for the updateSequenceNumber operation. */
9379
+ declare type PageBlobUpdateSequenceNumberResponse_2 = PageBlobUpdateSequenceNumberHeaders;
7869
9380
  /** Defines headers for PageBlob_uploadPagesFromURL operation. */
7870
9381
  export declare interface PageBlobUploadPagesFromURLHeaders {
7871
9382
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -7893,6 +9404,31 @@ export declare interface PageBlobUploadPagesFromURLHeaders {
7893
9404
  /** Error Code */
7894
9405
  errorCode?: string;
7895
9406
  }
9407
+ /** Optional parameters. */
9408
+ declare interface PageBlobUploadPagesFromURLOptionalParams extends coreClient.OperationOptions {
9409
+ /** Parameter group */
9410
+ leaseAccessConditions?: LeaseAccessConditions;
9411
+ /** Parameter group */
9412
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9413
+ /** Parameter group */
9414
+ cpkInfo?: CpkInfo;
9415
+ /** Parameter group */
9416
+ sourceModifiedAccessConditions?: SourceModifiedAccessConditions;
9417
+ /** Parameter group */
9418
+ sequenceNumberAccessConditions?: SequenceNumberAccessConditions;
9419
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9420
+ timeoutInSeconds?: number;
9421
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9422
+ requestId?: string;
9423
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
9424
+ encryptionScope?: string;
9425
+ /** Specify the md5 calculated for the range of bytes that must be read from the copy source. */
9426
+ sourceContentMD5?: Uint8Array;
9427
+ /** Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source. */
9428
+ copySourceAuthorization?: string;
9429
+ /** Specify the crc64 calculated for the range of bytes that must be read from the copy source. */
9430
+ sourceContentCrc64?: Uint8Array;
9431
+ }
7896
9432
  /**
7897
9433
  * Options to configure {@link PageBlobClient.uploadPagesFromURL} operation.
7898
9434
  */
@@ -7943,13 +9479,9 @@ export declare interface PageBlobUploadPagesFromURLOptions extends CommonOptions
7943
9479
  sourceAuthorization?: HttpAuthorization;
7944
9480
  }
7945
9481
  /** Contains response data for the uploadPagesFromURL operation. */
7946
- export declare type PageBlobUploadPagesFromURLResponse = PageBlobUploadPagesFromURLHeaders & {
7947
- /** The underlying HTTP response. */
7948
- _response: coreHttp.HttpResponse & {
7949
- /** The parsed HTTP response headers. */
7950
- parsedHeaders: PageBlobUploadPagesFromURLHeaders;
7951
- };
7952
- };
9482
+ export declare type PageBlobUploadPagesFromURLResponse = WithResponse<PageBlobUploadPagesFromURLHeaders, PageBlobUploadPagesFromURLHeaders>;
9483
+ /** Contains response data for the uploadPagesFromURL operation. */
9484
+ declare type PageBlobUploadPagesFromURLResponse_2 = PageBlobUploadPagesFromURLHeaders;
7953
9485
  /** Defines headers for PageBlob_uploadPages operation. */
7954
9486
  export declare interface PageBlobUploadPagesHeaders {
7955
9487
  /** The ETag contains a value that you can use to perform operations conditionally. If the request version is 2011-08-18 or newer, the ETag value will be in quotes. */
@@ -7979,6 +9511,29 @@ export declare interface PageBlobUploadPagesHeaders {
7979
9511
  /** Error Code */
7980
9512
  errorCode?: string;
7981
9513
  }
9514
+ /** Optional parameters. */
9515
+ declare interface PageBlobUploadPagesOptionalParams extends coreClient.OperationOptions {
9516
+ /** Parameter group */
9517
+ leaseAccessConditions?: LeaseAccessConditions;
9518
+ /** Parameter group */
9519
+ modifiedAccessConditions?: ModifiedAccessConditionsModel;
9520
+ /** Parameter group */
9521
+ cpkInfo?: CpkInfo;
9522
+ /** Parameter group */
9523
+ sequenceNumberAccessConditions?: SequenceNumberAccessConditions;
9524
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
9525
+ timeoutInSeconds?: number;
9526
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
9527
+ requestId?: string;
9528
+ /** Return only the bytes of the blob in the specified range. */
9529
+ range?: string;
9530
+ /** Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services. */
9531
+ encryptionScope?: string;
9532
+ /** Specify the transactional md5 for the body, to be validated by the service. */
9533
+ transactionalContentMD5?: Uint8Array;
9534
+ /** Specify the transactional crc64 for the body, to be validated by the service. */
9535
+ transactionalContentCrc64?: Uint8Array;
9536
+ }
7982
9537
  /**
7983
9538
  * Options to configure the {@link PageBlobClient.uploadPages} operation.
7984
9539
  */
@@ -8023,13 +9578,9 @@ export declare interface PageBlobUploadPagesOptions extends CommonOptions {
8023
9578
  encryptionScope?: string;
8024
9579
  }
8025
9580
  /** Contains response data for the uploadPages operation. */
8026
- export declare type PageBlobUploadPagesResponse = PageBlobUploadPagesHeaders & {
8027
- /** The underlying HTTP response. */
8028
- _response: coreHttp.HttpResponse & {
8029
- /** The parsed HTTP response headers. */
8030
- parsedHeaders: PageBlobUploadPagesHeaders;
8031
- };
8032
- };
9581
+ export declare type PageBlobUploadPagesResponse = WithResponse<PageBlobUploadPagesHeaders, PageBlobUploadPagesHeaders>;
9582
+ /** Contains response data for the uploadPages operation. */
9583
+ declare type PageBlobUploadPagesResponse_2 = PageBlobUploadPagesHeaders;
8033
9584
  /**
8034
9585
  * List of page ranges for a blob.
8035
9586
  */
@@ -8045,12 +9596,12 @@ export declare interface PageList {
8045
9596
  clearRange?: Range_2[];
8046
9597
  }
8047
9598
  /** the list of pages */
8048
- declare interface PageList_2 {
9599
+ export declare interface PageListInternal {
8049
9600
  pageRange?: PageRange[];
8050
9601
  clearRange?: ClearRange[];
8051
9602
  continuationToken?: string;
8052
9603
  }
8053
- declare interface PageRange {
9604
+ export declare interface PageRange {
8054
9605
  start: number;
8055
9606
  end: number;
8056
9607
  }
@@ -8140,7 +9691,7 @@ export declare interface PipelineOptions {
8140
9691
  /**
8141
9692
  * Optional. Configures the HTTP client to send requests and receive responses.
8142
9693
  */
8143
- httpClient?: IHttpClient;
9694
+ httpClient?: RequestPolicy;
8144
9695
  }
8145
9696
  export { PollerLike };
8146
9697
  /**
@@ -8256,6 +9807,32 @@ export declare enum PremiumPageBlobTier {
8256
9807
  }
8257
9808
  /** Defines values for PublicAccessType. */
8258
9809
  export declare type PublicAccessType = "container" | "blob";
9810
+ declare interface QueryFormat {
9811
+ /** The quick query format type. */
9812
+ type: QueryFormatType;
9813
+ /** Groups the settings used for interpreting the blob data if the blob is delimited text formatted. */
9814
+ delimitedTextConfiguration?: DelimitedTextConfiguration;
9815
+ /** json text configuration */
9816
+ jsonTextConfiguration?: JsonTextConfiguration;
9817
+ /** Groups the settings used for formatting the response if the response should be Arrow formatted. */
9818
+ arrowConfiguration?: ArrowConfiguration;
9819
+ /** parquet configuration */
9820
+ parquetTextConfiguration?: Record<string, unknown>;
9821
+ }
9822
+ /** Defines values for QueryFormatType. */
9823
+ declare type QueryFormatType = "delimited" | "json" | "arrow" | "parquet";
9824
+ /** Groups the set of query request settings. */
9825
+ declare interface QueryRequest {
9826
+ /** Required. The type of the provided query expression. */
9827
+ queryType: string;
9828
+ /** The query expression in SQL. The maximum size of the query expression is 256KiB. */
9829
+ expression: string;
9830
+ inputSerialization?: QuerySerialization;
9831
+ outputSerialization?: QuerySerialization;
9832
+ }
9833
+ declare interface QuerySerialization {
9834
+ format: QueryFormat;
9835
+ }
8259
9836
  /**
8260
9837
  * Range for Blob Service Operations.
8261
9838
  * @see https://docs.microsoft.com/en-us/rest/api/storageservices/specifying-the-range-header-for-blob-service-operations
@@ -8274,9 +9851,57 @@ declare interface Range_2 {
8274
9851
  export { Range_2 as Range };
8275
9852
  /** Defines values for RehydratePriority. */
8276
9853
  export declare type RehydratePriority = "High" | "Standard";
9854
+ export { RequestPolicy as IHttpClient };
8277
9855
  export { RequestPolicy };
8278
9856
  export { RequestPolicyFactory };
8279
9857
  export { RequestPolicyOptions };
9858
+ /**
9859
+ * An object with a simple _response property.
9860
+ */
9861
+ export declare interface ResponseLike {
9862
+ /**
9863
+ * The underlying HTTP response.
9864
+ */
9865
+ _response: HttpResponse;
9866
+ }
9867
+ /**
9868
+ * An object with a _response property that has body
9869
+ * and headers already parsed into known types.
9870
+ */
9871
+ export declare interface ResponseWithBody<Headers, Body> {
9872
+ /**
9873
+ * The underlying HTTP response.
9874
+ */
9875
+ _response: HttpResponse & {
9876
+ /**
9877
+ * The parsed HTTP response headers.
9878
+ */
9879
+ parsedHeaders: Headers;
9880
+ /**
9881
+ * The response body as text (string format)
9882
+ */
9883
+ bodyAsText: string;
9884
+ /**
9885
+ * The response body as parsed JSON or XML
9886
+ */
9887
+ parsedBody: Body;
9888
+ };
9889
+ }
9890
+ /**
9891
+ * An object with a _response property that has
9892
+ * headers already parsed into a typed object.
9893
+ */
9894
+ export declare interface ResponseWithHeaders<Headers> {
9895
+ /**
9896
+ * The underlying HTTP response.
9897
+ */
9898
+ _response: HttpResponse & {
9899
+ /**
9900
+ * The parsed HTTP response headers.
9901
+ */
9902
+ parsedHeaders: Headers;
9903
+ };
9904
+ }
8280
9905
  export { RestError };
8281
9906
  /** the retention policy which determines how long the associated data should persist */
8282
9907
  export declare interface RetentionPolicy {
@@ -8593,6 +10218,75 @@ export declare interface SequenceNumberAccessConditions {
8593
10218
  }
8594
10219
  /** Defines values for SequenceNumberActionType. */
8595
10220
  export declare type SequenceNumberActionType = "max" | "update" | "increment";
10221
+ /** Interface representing a Service. */
10222
+ declare interface Service {
10223
+ /**
10224
+ * Sets properties for a storage account's Blob service endpoint, including properties for Storage
10225
+ * Analytics and CORS (Cross-Origin Resource Sharing) rules
10226
+ * @param blobServiceProperties The StorageService properties.
10227
+ * @param options The options parameters.
10228
+ */
10229
+ setProperties(blobServiceProperties: BlobServiceProperties, options?: ServiceSetPropertiesOptionalParams): Promise<ServiceSetPropertiesResponse_2>;
10230
+ /**
10231
+ * gets the properties of a storage account's Blob service, including properties for Storage Analytics
10232
+ * and CORS (Cross-Origin Resource Sharing) rules.
10233
+ * @param options The options parameters.
10234
+ */
10235
+ getProperties(options?: ServiceGetPropertiesOptionalParams): Promise<ServiceGetPropertiesResponseInternal>;
10236
+ /**
10237
+ * Retrieves statistics related to replication for the Blob service. It is only available on the
10238
+ * secondary location endpoint when read-access geo-redundant replication is enabled for the storage
10239
+ * account.
10240
+ * @param options The options parameters.
10241
+ */
10242
+ getStatistics(options?: ServiceGetStatisticsOptionalParams): Promise<ServiceGetStatisticsResponseInternal>;
10243
+ /**
10244
+ * The List Containers Segment operation returns a list of the containers under the specified account
10245
+ * @param options The options parameters.
10246
+ */
10247
+ listContainersSegment(options?: ServiceListContainersSegmentOptionalParams): Promise<ServiceListContainersSegmentResponseInternal>;
10248
+ /**
10249
+ * Retrieves a user delegation key for the Blob service. This is only a valid operation when using
10250
+ * bearer token authentication.
10251
+ * @param keyInfo Key information
10252
+ * @param options The options parameters.
10253
+ */
10254
+ getUserDelegationKey(keyInfo: KeyInfo, options?: ServiceGetUserDelegationKeyOptionalParams): Promise<ServiceGetUserDelegationKeyResponse_2>;
10255
+ /**
10256
+ * Returns the sku name and account kind
10257
+ * @param options The options parameters.
10258
+ */
10259
+ getAccountInfo(options?: ServiceGetAccountInfoOptionalParams): Promise<ServiceGetAccountInfoResponse_2>;
10260
+ /**
10261
+ * The Batch operation allows multiple API calls to be embedded into a single HTTP request.
10262
+ * @param contentLength The length of the request.
10263
+ * @param multipartContentType Required. The value of this header must be multipart/mixed with a batch
10264
+ * boundary. Example header value: multipart/mixed; boundary=batch_<GUID>
10265
+ * @param body Initial data
10266
+ * @param options The options parameters.
10267
+ */
10268
+ submitBatch(contentLength: number, multipartContentType: string, body: coreRestPipeline.RequestBodyType, options?: ServiceSubmitBatchOptionalParamsModel): Promise<ServiceSubmitBatchResponseInternal>;
10269
+ /**
10270
+ * The Filter Blobs operation enables callers to list blobs across all containers whose tags match a
10271
+ * given search expression. Filter blobs searches across all containers within a storage account but
10272
+ * can be scoped within the expression to a single container.
10273
+ * @param options The options parameters.
10274
+ */
10275
+ filterBlobs(options?: ServiceFilterBlobsOptionalParams): Promise<ServiceFilterBlobsResponse>;
10276
+ }
10277
+ /**
10278
+ * A subset of `@azure/core-http` ServiceClientOptions
10279
+ */
10280
+ export declare interface ServiceClientOptions {
10281
+ /**
10282
+ * Optional. Configures the HTTP client to send requests and receive responses.
10283
+ */
10284
+ httpClient?: RequestPolicy;
10285
+ /**
10286
+ * Optional. Overrides the default policy factories.
10287
+ */
10288
+ requestPolicyFactories?: RequestPolicyFactory[] | ((defaultRequestPolicyFactories: RequestPolicyFactory[]) => void | RequestPolicyFactory[]);
10289
+ }
8596
10290
  /** Defines headers for Service_filterBlobs operation. */
8597
10291
  export declare interface ServiceFilterBlobsHeaders {
8598
10292
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -8606,6 +10300,21 @@ export declare interface ServiceFilterBlobsHeaders {
8606
10300
  /** Error Code */
8607
10301
  errorCode?: string;
8608
10302
  }
10303
+ /** Optional parameters. */
10304
+ declare interface ServiceFilterBlobsOptionalParams extends coreClient.OperationOptions {
10305
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10306
+ timeoutInSeconds?: number;
10307
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10308
+ requestId?: string;
10309
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
10310
+ marker?: string;
10311
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
10312
+ maxPageSize?: number;
10313
+ /** Filters the results to return only to return only blobs whose tags match the specified expression. */
10314
+ where?: string;
10315
+ }
10316
+ /** Contains response data for the filterBlobs operation. */
10317
+ declare type ServiceFilterBlobsResponse = ServiceFilterBlobsHeaders & FilterBlobSegmentModel;
8609
10318
  /**
8610
10319
  * Options to configure the {@link BlobServiceClient.findBlobsByTags} operation.
8611
10320
  */
@@ -8619,25 +10328,7 @@ export declare interface ServiceFindBlobByTagsOptions extends CommonOptions {
8619
10328
  /**
8620
10329
  * The response of {@link BlobServiceClient.findBlobsByTags} operation.
8621
10330
  */
8622
- export declare type ServiceFindBlobsByTagsSegmentResponse = FilterBlobSegment & ServiceFilterBlobsHeaders & {
8623
- /**
8624
- * The underlying HTTP response.
8625
- */
8626
- _response: HttpResponse & {
8627
- /**
8628
- * The parsed HTTP response headers.
8629
- */
8630
- parsedHeaders: ServiceFilterBlobsHeaders;
8631
- /**
8632
- * The response body as text (string format)
8633
- */
8634
- bodyAsText: string;
8635
- /**
8636
- * The response body as parsed JSON or XML
8637
- */
8638
- parsedBody: FilterBlobSegmentModel;
8639
- };
8640
- };
10331
+ export declare type ServiceFindBlobsByTagsSegmentResponse = WithResponse<FilterBlobSegment & ServiceFilterBlobsHeaders, ServiceFilterBlobsHeaders, FilterBlobSegmentModel>;
8641
10332
  /**
8642
10333
  * Options to configure {@link BlobServiceClient.generateAccountSasUrl} operation.
8643
10334
  */
@@ -8683,6 +10374,9 @@ export declare interface ServiceGetAccountInfoHeaders {
8683
10374
  /** Error Code */
8684
10375
  errorCode?: string;
8685
10376
  }
10377
+ /** Optional parameters. */
10378
+ declare interface ServiceGetAccountInfoOptionalParams extends coreClient.OperationOptions {
10379
+ }
8686
10380
  /**
8687
10381
  * Options to configure the {@link BlobServiceClient.getAccountInfo} operation.
8688
10382
  */
@@ -8694,13 +10388,9 @@ export declare interface ServiceGetAccountInfoOptions extends CommonOptions {
8694
10388
  abortSignal?: AbortSignalLike;
8695
10389
  }
8696
10390
  /** Contains response data for the getAccountInfo operation. */
8697
- export declare type ServiceGetAccountInfoResponse = ServiceGetAccountInfoHeaders & {
8698
- /** The underlying HTTP response. */
8699
- _response: coreHttp.HttpResponse & {
8700
- /** The parsed HTTP response headers. */
8701
- parsedHeaders: ServiceGetAccountInfoHeaders;
8702
- };
8703
- };
10391
+ export declare type ServiceGetAccountInfoResponse = WithResponse<ServiceGetAccountInfoHeaders, ServiceGetAccountInfoHeaders>;
10392
+ /** Contains response data for the getAccountInfo operation. */
10393
+ declare type ServiceGetAccountInfoResponse_2 = ServiceGetAccountInfoHeaders;
8704
10394
  /** Defines headers for Service_getProperties operation. */
8705
10395
  export declare interface ServiceGetPropertiesHeaders {
8706
10396
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -8712,6 +10402,13 @@ export declare interface ServiceGetPropertiesHeaders {
8712
10402
  /** Error Code */
8713
10403
  errorCode?: string;
8714
10404
  }
10405
+ /** Optional parameters. */
10406
+ declare interface ServiceGetPropertiesOptionalParams extends coreClient.OperationOptions {
10407
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10408
+ timeoutInSeconds?: number;
10409
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10410
+ requestId?: string;
10411
+ }
8715
10412
  /**
8716
10413
  * Options to configure the {@link BlobServiceClient.getProperties} operation.
8717
10414
  */
@@ -8723,17 +10420,9 @@ export declare interface ServiceGetPropertiesOptions extends CommonOptions {
8723
10420
  abortSignal?: AbortSignalLike;
8724
10421
  }
8725
10422
  /** Contains response data for the getProperties operation. */
8726
- export declare type ServiceGetPropertiesResponse = ServiceGetPropertiesHeaders & BlobServiceProperties & {
8727
- /** The underlying HTTP response. */
8728
- _response: coreHttp.HttpResponse & {
8729
- /** The response body as text (string format) */
8730
- bodyAsText: string;
8731
- /** The response body as parsed JSON or XML */
8732
- parsedBody: BlobServiceProperties;
8733
- /** The parsed HTTP response headers. */
8734
- parsedHeaders: ServiceGetPropertiesHeaders;
8735
- };
8736
- };
10423
+ export declare type ServiceGetPropertiesResponse = WithResponse<ServiceGetPropertiesResponseInternal, ServiceGetPropertiesHeaders>;
10424
+ /** Contains response data for the getProperties operation. */
10425
+ export declare type ServiceGetPropertiesResponseInternal = ServiceGetPropertiesHeaders & BlobServiceProperties;
8737
10426
  /** Defines headers for Service_getStatistics operation. */
8738
10427
  export declare interface ServiceGetStatisticsHeaders {
8739
10428
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -8747,6 +10436,13 @@ export declare interface ServiceGetStatisticsHeaders {
8747
10436
  /** Error Code */
8748
10437
  errorCode?: string;
8749
10438
  }
10439
+ /** Optional parameters. */
10440
+ declare interface ServiceGetStatisticsOptionalParams extends coreClient.OperationOptions {
10441
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10442
+ timeoutInSeconds?: number;
10443
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10444
+ requestId?: string;
10445
+ }
8750
10446
  /**
8751
10447
  * Options to configure the {@link BlobServiceClient.getStatistics} operation.
8752
10448
  */
@@ -8758,17 +10454,9 @@ export declare interface ServiceGetStatisticsOptions extends CommonOptions {
8758
10454
  abortSignal?: AbortSignalLike;
8759
10455
  }
8760
10456
  /** Contains response data for the getStatistics operation. */
8761
- export declare type ServiceGetStatisticsResponse = ServiceGetStatisticsHeaders & BlobServiceStatistics & {
8762
- /** The underlying HTTP response. */
8763
- _response: coreHttp.HttpResponse & {
8764
- /** The response body as text (string format) */
8765
- bodyAsText: string;
8766
- /** The response body as parsed JSON or XML */
8767
- parsedBody: BlobServiceStatistics;
8768
- /** The parsed HTTP response headers. */
8769
- parsedHeaders: ServiceGetStatisticsHeaders;
8770
- };
8771
- };
10457
+ export declare type ServiceGetStatisticsResponse = WithResponse<ServiceGetStatisticsResponseInternal, ServiceGetStatisticsHeaders>;
10458
+ /** Contains response data for the getStatistics operation. */
10459
+ export declare type ServiceGetStatisticsResponseInternal = ServiceGetStatisticsHeaders & BlobServiceStatistics;
8772
10460
  /** Defines headers for Service_getUserDelegationKey operation. */
8773
10461
  export declare interface ServiceGetUserDelegationKeyHeaders {
8774
10462
  /** If a client request id header is sent in the request, this header will be present in the response with the same value. */
@@ -8782,6 +10470,13 @@ export declare interface ServiceGetUserDelegationKeyHeaders {
8782
10470
  /** Error Code */
8783
10471
  errorCode?: string;
8784
10472
  }
10473
+ /** Optional parameters. */
10474
+ declare interface ServiceGetUserDelegationKeyOptionalParams extends coreClient.OperationOptions {
10475
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10476
+ timeoutInSeconds?: number;
10477
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10478
+ requestId?: string;
10479
+ }
8785
10480
  /**
8786
10481
  * Options to configure the Service - Get User Delegation Key.
8787
10482
  */
@@ -8795,25 +10490,9 @@ export declare interface ServiceGetUserDelegationKeyOptions extends CommonOption
8795
10490
  /**
8796
10491
  * Contains response data for the {@link getUserDelegationKey} operation.
8797
10492
  */
8798
- export declare type ServiceGetUserDelegationKeyResponse = UserDelegationKey & ServiceGetUserDelegationKeyHeaders & {
8799
- /**
8800
- * The underlying HTTP response.
8801
- */
8802
- _response: HttpResponse & {
8803
- /**
8804
- * The parsed HTTP response headers.
8805
- */
8806
- parsedHeaders: ServiceGetUserDelegationKeyHeaders;
8807
- /**
8808
- * The response body as text (string format)
8809
- */
8810
- bodyAsText: string;
8811
- /**
8812
- * The response body as parsed JSON or XML
8813
- */
8814
- parsedBody: UserDelegationKeyModel;
8815
- };
8816
- };
10493
+ export declare type ServiceGetUserDelegationKeyResponse = WithResponse<UserDelegationKey & ServiceGetUserDelegationKeyHeaders, ServiceGetUserDelegationKeyHeaders, UserDelegationKeyModel>;
10494
+ /** Contains response data for the getUserDelegationKey operation. */
10495
+ declare type ServiceGetUserDelegationKeyResponse_2 = ServiceGetUserDelegationKeyHeaders & UserDelegationKeyModel;
8817
10496
  /**
8818
10497
  * Options to configure the {@link BlobServiceClient.listContainers} operation.
8819
10498
  */
@@ -8853,18 +10532,25 @@ export declare interface ServiceListContainersSegmentHeaders {
8853
10532
  /** Error Code */
8854
10533
  errorCode?: string;
8855
10534
  }
10535
+ /** Optional parameters. */
10536
+ declare interface ServiceListContainersSegmentOptionalParams extends coreClient.OperationOptions {
10537
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10538
+ timeoutInSeconds?: number;
10539
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10540
+ requestId?: string;
10541
+ /** Filters the results to return only containers whose name begins with the specified prefix. */
10542
+ prefix?: string;
10543
+ /** A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the ContinuationToken value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client. */
10544
+ marker?: string;
10545
+ /** Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items. Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000. */
10546
+ maxPageSize?: number;
10547
+ /** Include this parameter to specify that the container's metadata be returned as part of the response body. */
10548
+ include?: ListContainersIncludeType[];
10549
+ }
8856
10550
  /** Contains response data for the listContainersSegment operation. */
8857
- export declare type ServiceListContainersSegmentResponse = ServiceListContainersSegmentHeaders & ListContainersSegmentResponse & {
8858
- /** The underlying HTTP response. */
8859
- _response: coreHttp.HttpResponse & {
8860
- /** The response body as text (string format) */
8861
- bodyAsText: string;
8862
- /** The response body as parsed JSON or XML */
8863
- parsedBody: ListContainersSegmentResponse;
8864
- /** The parsed HTTP response headers. */
8865
- parsedHeaders: ServiceListContainersSegmentHeaders;
8866
- };
8867
- };
10551
+ export declare type ServiceListContainersSegmentResponse = WithResponse<ServiceListContainersSegmentResponseInternal, ServiceListContainersSegmentHeaders>;
10552
+ /** Contains response data for the listContainersSegment operation. */
10553
+ export declare type ServiceListContainersSegmentResponseInternal = ServiceListContainersSegmentHeaders & ListContainersSegmentResponse;
8868
10554
  /**
8869
10555
  * Options to configure {@link BlobServiceClient.renameContainer} operation.
8870
10556
  */
@@ -8890,6 +10576,13 @@ export declare interface ServiceSetPropertiesHeaders {
8890
10576
  /** Error Code */
8891
10577
  errorCode?: string;
8892
10578
  }
10579
+ /** Optional parameters. */
10580
+ declare interface ServiceSetPropertiesOptionalParams extends coreClient.OperationOptions {
10581
+ /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
10582
+ timeoutInSeconds?: number;
10583
+ /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
10584
+ requestId?: string;
10585
+ }
8893
10586
  /**
8894
10587
  * Options to configure the {@link BlobServiceClient.setProperties} operation.
8895
10588
  */
@@ -8901,13 +10594,9 @@ export declare interface ServiceSetPropertiesOptions extends CommonOptions {
8901
10594
  abortSignal?: AbortSignalLike;
8902
10595
  }
8903
10596
  /** Contains response data for the setProperties operation. */
8904
- export declare type ServiceSetPropertiesResponse = ServiceSetPropertiesHeaders & {
8905
- /** The underlying HTTP response. */
8906
- _response: coreHttp.HttpResponse & {
8907
- /** The parsed HTTP response headers. */
8908
- parsedHeaders: ServiceSetPropertiesHeaders;
8909
- };
8910
- };
10597
+ export declare type ServiceSetPropertiesResponse = WithResponse<ServiceSetPropertiesHeaders, ServiceSetPropertiesHeaders>;
10598
+ /** Contains response data for the setProperties operation. */
10599
+ declare type ServiceSetPropertiesResponse_2 = ServiceSetPropertiesHeaders;
8911
10600
  /** Defines headers for Service_submitBatch operation. */
8912
10601
  export declare interface ServiceSubmitBatchHeaders {
8913
10602
  /** The media type of the body of the response. For batch requests, this is multipart/mixed; boundary=batchresponse_GUID */
@@ -8922,14 +10611,14 @@ export declare interface ServiceSubmitBatchHeaders {
8922
10611
  errorCode?: string;
8923
10612
  }
8924
10613
  /** Optional parameters. */
8925
- export declare interface ServiceSubmitBatchOptionalParamsModel extends coreHttp.OperationOptions {
10614
+ export declare interface ServiceSubmitBatchOptionalParamsModel extends coreClient.OperationOptions {
8926
10615
  /** The timeout parameter is expressed in seconds. For more information, see <a href="https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a> */
8927
10616
  timeoutInSeconds?: number;
8928
10617
  /** Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled. */
8929
10618
  requestId?: string;
8930
10619
  }
8931
10620
  /** Contains response data for the submitBatch operation. */
8932
- export declare type ServiceSubmitBatchResponseModel = ServiceSubmitBatchHeaders & {
10621
+ export declare type ServiceSubmitBatchResponseInternal = ServiceSubmitBatchHeaders & {
8933
10622
  /**
8934
10623
  * BROWSER ONLY
8935
10624
  *
@@ -8944,12 +10633,9 @@ export declare type ServiceSubmitBatchResponseModel = ServiceSubmitBatchHeaders
8944
10633
  * Always `undefined` in the browser.
8945
10634
  */
8946
10635
  readableStreamBody?: NodeJS.ReadableStream;
8947
- /** The underlying HTTP response. */
8948
- _response: coreHttp.HttpResponse & {
8949
- /** The parsed HTTP response headers. */
8950
- parsedHeaders: ServiceSubmitBatchHeaders;
8951
- };
8952
10636
  };
10637
+ /** Contains response data for the submitBatch operation. */
10638
+ export declare type ServiceSubmitBatchResponseModel = WithResponse<ServiceSubmitBatchResponseInternal, ServiceSubmitBatchHeaders>;
8953
10639
  /**
8954
10640
  * Options to configure {@link BlobServiceClient.undeleteContainer} operation.
8955
10641
  */
@@ -9002,6 +10688,19 @@ export declare interface SignedIdentifierModel {
9002
10688
  }
9003
10689
  /** Defines values for SkuName. */
9004
10690
  export declare type SkuName = "Standard_LRS" | "Standard_GRS" | "Standard_RAGRS" | "Standard_ZRS" | "Premium_LRS";
10691
+ /** Parameter group */
10692
+ declare interface SourceModifiedAccessConditions {
10693
+ /** Specify this header value to operate only on a blob if it has been modified since the specified date/time. */
10694
+ sourceIfModifiedSince?: Date;
10695
+ /** Specify this header value to operate only on a blob if it has not been modified since the specified date/time. */
10696
+ sourceIfUnmodifiedSince?: Date;
10697
+ /** Specify an ETag value to operate only on blobs with a matching value. */
10698
+ sourceIfMatch?: string;
10699
+ /** Specify an ETag value to operate only on blobs without a matching value. */
10700
+ sourceIfNoneMatch?: string;
10701
+ /** Specify a SQL where clause on blob tags to operate only on blobs with a matching value. */
10702
+ sourceIfTags?: string;
10703
+ }
9005
10704
  /** The properties that enable an account to host a static website */
9006
10705
  export declare interface StaticWebsite {
9007
10706
  /** Indicates whether this account is hosting a static website */
@@ -9082,7 +10781,7 @@ declare abstract class StorageClient {
9082
10781
  * StorageClient is a reference to protocol layer operations entry, which is
9083
10782
  * generated by AutoRest generator.
9084
10783
  */
9085
- protected readonly storageClientContext: StorageClientContext;
10784
+ protected readonly storageClientContext: StorageClient_2;
9086
10785
  /**
9087
10786
  */
9088
10787
  protected readonly isHttps: boolean;
@@ -9093,19 +10792,25 @@ declare abstract class StorageClient {
9093
10792
  */
9094
10793
  protected constructor(url: string, pipeline: PipelineLike);
9095
10794
  }
9096
- declare class StorageClientContext extends coreHttp.ServiceClient {
10795
+ declare class StorageClient_2 extends coreHttpCompat.ExtendedServiceClient {
9097
10796
  url: string;
9098
10797
  version: string;
9099
10798
  /**
9100
- * Initializes a new instance of the StorageClientContext class.
10799
+ * Initializes a new instance of the StorageClient class.
9101
10800
  * @param url The URL of the service account, container, or blob that is the target of the desired
9102
10801
  * operation.
9103
10802
  * @param options The parameter options
9104
10803
  */
9105
10804
  constructor(url: string, options?: StorageClientOptionalParams);
10805
+ service: Service;
10806
+ container: Container;
10807
+ blob: Blob_2;
10808
+ pageBlob: PageBlob;
10809
+ appendBlob: AppendBlob;
10810
+ blockBlob: BlockBlob;
9106
10811
  }
9107
10812
  /** Optional parameters. */
9108
- declare interface StorageClientOptionalParams extends coreHttp.ServiceClientOptions {
10813
+ declare interface StorageClientOptionalParams extends coreHttpCompat.ExtendedServiceClientOptions {
9109
10814
  /** Specifies the version of the operation to use for this request. */
9110
10815
  version?: string;
9111
10816
  /** Overrides client endpoint. */
@@ -9122,11 +10827,11 @@ export declare interface StoragePipelineOptions {
9122
10827
  /**
9123
10828
  * Options to configure a proxy for outgoing requests.
9124
10829
  */
9125
- proxyOptions?: ProxyOptions;
10830
+ proxyOptions?: ProxySettings;
9126
10831
  /**
9127
10832
  * Options for adding user agent details to outgoing requests.
9128
10833
  */
9129
- userAgentOptions?: UserAgentOptions;
10834
+ userAgentOptions?: UserAgentPolicyOptions;
9130
10835
  /**
9131
10836
  * Configures the built-in retry policy behavior.
9132
10837
  */
@@ -9138,7 +10843,7 @@ export declare interface StoragePipelineOptions {
9138
10843
  /**
9139
10844
  * Configures the HTTP client to send requests and receive responses.
9140
10845
  */
9141
- httpClient?: IHttpClient;
10846
+ httpClient?: RequestPolicy;
9142
10847
  /**
9143
10848
  * The audience used to retrieve an AAD token.
9144
10849
  */
@@ -9353,8 +11058,6 @@ export declare class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
9353
11058
  */
9354
11059
  private getCanonicalizedResourceString;
9355
11060
  }
9356
- /** Defines values for SyncCopyStatusType. */
9357
- export declare type SyncCopyStatusType = "success";
9358
11061
  /**
9359
11062
  * Specifies HTTP options for conditional requests based on blob tags.
9360
11063
  */
@@ -9419,4 +11122,8 @@ export declare interface UserDelegationKeyModel {
9419
11122
  value: string;
9420
11123
  }
9421
11124
  export { WebResource };
11125
+ /**
11126
+ * A type that represents an operation result with a known _response property.
11127
+ */
11128
+ export declare type WithResponse<T, Headers = undefined, Body = undefined> = T & (Body extends object ? ResponseWithBody<Headers, Body> : Headers extends object ? ResponseWithHeaders<Headers> : ResponseLike);
9422
11129
  export {};