azure-storage-blob 12.26.0__py3-none-any.whl → 12.27.0__py3-none-any.whl

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 (50) hide show
  1. azure/storage/blob/__init__.py +3 -3
  2. azure/storage/blob/_blob_client.py +16 -0
  3. azure/storage/blob/_blob_client.pyi +780 -0
  4. azure/storage/blob/_blob_service_client.py +41 -4
  5. azure/storage/blob/_blob_service_client.pyi +182 -0
  6. azure/storage/blob/_container_client.py +22 -0
  7. azure/storage/blob/_container_client.pyi +380 -0
  8. azure/storage/blob/_generated/_azure_blob_storage.py +3 -2
  9. azure/storage/blob/_generated/_configuration.py +2 -2
  10. azure/storage/blob/_generated/_utils/__init__.py +6 -0
  11. azure/storage/blob/_generated/{_serialization.py → _utils/serialization.py} +4 -22
  12. azure/storage/blob/_generated/aio/_azure_blob_storage.py +3 -2
  13. azure/storage/blob/_generated/aio/_configuration.py +2 -2
  14. azure/storage/blob/_generated/aio/operations/_append_blob_operations.py +6 -10
  15. azure/storage/blob/_generated/aio/operations/_blob_operations.py +35 -39
  16. azure/storage/blob/_generated/aio/operations/_block_blob_operations.py +9 -13
  17. azure/storage/blob/_generated/aio/operations/_container_operations.py +20 -24
  18. azure/storage/blob/_generated/aio/operations/_page_blob_operations.py +13 -17
  19. azure/storage/blob/_generated/aio/operations/_service_operations.py +10 -14
  20. azure/storage/blob/_generated/models/_models_py3.py +30 -9
  21. azure/storage/blob/_generated/operations/_append_blob_operations.py +11 -15
  22. azure/storage/blob/_generated/operations/_blob_operations.py +60 -64
  23. azure/storage/blob/_generated/operations/_block_blob_operations.py +16 -20
  24. azure/storage/blob/_generated/operations/_container_operations.py +39 -43
  25. azure/storage/blob/_generated/operations/_page_blob_operations.py +23 -27
  26. azure/storage/blob/_generated/operations/_service_operations.py +19 -23
  27. azure/storage/blob/_lease.py +2 -2
  28. azure/storage/blob/_lease.pyi +81 -0
  29. azure/storage/blob/_list_blobs_helper.py +1 -1
  30. azure/storage/blob/_serialize.py +1 -0
  31. azure/storage/blob/_shared/base_client.py +0 -13
  32. azure/storage/blob/_shared/base_client_async.py +0 -22
  33. azure/storage/blob/_shared/models.py +1 -0
  34. azure/storage/blob/_shared/policies.py +10 -2
  35. azure/storage/blob/_shared/response_handlers.py +5 -0
  36. azure/storage/blob/_version.py +1 -1
  37. azure/storage/blob/aio/__init__.py +5 -8
  38. azure/storage/blob/aio/_blob_client_async.py +28 -8
  39. azure/storage/blob/aio/_blob_client_async.pyi +763 -0
  40. azure/storage/blob/aio/_blob_service_client_async.py +41 -4
  41. azure/storage/blob/aio/_blob_service_client_async.pyi +187 -0
  42. azure/storage/blob/aio/_container_client_async.py +27 -1
  43. azure/storage/blob/aio/_container_client_async.pyi +384 -0
  44. azure/storage/blob/aio/_lease_async.py +2 -2
  45. azure/storage/blob/aio/_lease_async.pyi +81 -0
  46. {azure_storage_blob-12.26.0.dist-info → azure_storage_blob-12.27.0.dist-info}/METADATA +17 -5
  47. {azure_storage_blob-12.26.0.dist-info → azure_storage_blob-12.27.0.dist-info}/RECORD +50 -41
  48. {azure_storage_blob-12.26.0.dist-info → azure_storage_blob-12.27.0.dist-info}/WHEEL +1 -1
  49. {azure_storage_blob-12.26.0.dist-info → azure_storage_blob-12.27.0.dist-info/licenses}/LICENSE +0 -0
  50. {azure_storage_blob-12.26.0.dist-info → azure_storage_blob-12.27.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,780 @@
1
+ # -------------------------------------------------------------------------
2
+ # Copyright (c) Microsoft Corporation. All rights reserved.
3
+ # Licensed under the MIT License. See License.txt in the project root for
4
+ # license information.
5
+ # --------------------------------------------------------------------------
6
+ # pylint: skip-file
7
+
8
+ from datetime import datetime
9
+ from types import TracebackType
10
+ from typing import (
11
+ Any,
12
+ AnyStr,
13
+ Callable,
14
+ Dict,
15
+ IO,
16
+ Iterable,
17
+ List,
18
+ Literal,
19
+ Optional,
20
+ overload,
21
+ Tuple,
22
+ Union,
23
+ )
24
+ from typing_extensions import Self
25
+
26
+ from azure.core import MatchConditions
27
+ from azure.core.credentials import AzureNamedKeyCredential, AzureSasCredential, TokenCredential
28
+ from azure.core.paging import ItemPaged
29
+ from azure.core.tracing.decorator import distributed_trace
30
+ from ._container_client import ContainerClient
31
+ from ._download import StorageStreamDownloader
32
+ from ._encryption import StorageEncryptionMixin
33
+ from ._generated.models import RehydratePriority
34
+ from ._lease import BlobLeaseClient
35
+ from ._models import (
36
+ ArrowDialect,
37
+ BlobBlock,
38
+ BlobProperties,
39
+ BlobQueryError,
40
+ BlobType,
41
+ ContentSettings,
42
+ CustomerProvidedEncryptionKey,
43
+ DelimitedTextDialect,
44
+ DelimitedJsonDialect,
45
+ ImmutabilityPolicy,
46
+ PageRange,
47
+ PremiumPageBlobTier,
48
+ QuickQueryDialect,
49
+ SequenceNumberAction,
50
+ StandardBlobTier,
51
+ )
52
+ from ._quick_query_helper import BlobQueryReader
53
+ from ._shared.base_client import StorageAccountHostsMixin
54
+
55
+ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin):
56
+ def __init__(
57
+ self,
58
+ account_url: str,
59
+ container_name: str,
60
+ blob_name: str,
61
+ snapshot: Optional[Union[str, Dict[str, Any]]] = None,
62
+ credential: Optional[
63
+ Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, TokenCredential]
64
+ ] = None,
65
+ *,
66
+ api_version: Optional[str] = None,
67
+ secondary_hostname: Optional[str] = None,
68
+ version_id: Optional[str] = None,
69
+ audience: Optional[str] = None,
70
+ max_block_size: int = 4 * 1024 * 1024,
71
+ max_page_size: int = 4 * 1024 * 1024,
72
+ max_chunk_get_size: int = 4 * 1024 * 1024,
73
+ max_single_put_size: int = 64 * 1024 * 1024,
74
+ max_single_get_size: int = 32 * 1024 * 1024,
75
+ min_large_block_upload_threshold: int = 4 * 1024 * 1024 + 1,
76
+ use_byte_buffer: Optional[bool] = None,
77
+ **kwargs: Any
78
+ ) -> None: ...
79
+ def __enter__(self) -> Self: ...
80
+ def __exit__(
81
+ self, typ: Optional[type[BaseException]], exc: Optional[BaseException], tb: Optional[TracebackType]
82
+ ) -> None: ...
83
+ def close(self) -> None: ...
84
+ @classmethod
85
+ def from_blob_url(
86
+ cls,
87
+ blob_url: str,
88
+ credential: Optional[
89
+ Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, TokenCredential]
90
+ ] = None,
91
+ snapshot: Optional[Union[str, Dict[str, Any]]] = None,
92
+ *,
93
+ api_version: Optional[str] = None,
94
+ secondary_hostname: Optional[str] = None,
95
+ version_id: Optional[str] = None,
96
+ audience: Optional[str] = None,
97
+ max_block_size: int = 4 * 1024 * 1024,
98
+ max_page_size: int = 4 * 1024 * 1024,
99
+ max_chunk_get_size: int = 4 * 1024 * 1024,
100
+ max_single_put_size: int = 64 * 1024 * 1024,
101
+ max_single_get_size: int = 32 * 1024 * 1024,
102
+ min_large_block_upload_threshold: int = 4 * 1024 * 1024 + 1,
103
+ use_byte_buffer: Optional[bool] = None,
104
+ **kwargs: Any
105
+ ) -> Self: ...
106
+ @classmethod
107
+ def from_connection_string(
108
+ cls,
109
+ conn_str: str,
110
+ container_name: str,
111
+ blob_name: str,
112
+ snapshot: Optional[Union[str, Dict[str, Any]]] = None,
113
+ credential: Optional[
114
+ Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, TokenCredential]
115
+ ] = None,
116
+ *,
117
+ api_version: Optional[str] = None,
118
+ secondary_hostname: Optional[str] = None,
119
+ version_id: Optional[str] = None,
120
+ audience: Optional[str] = None,
121
+ max_block_size: int = 4 * 1024 * 1024,
122
+ max_page_size: int = 4 * 1024 * 1024,
123
+ max_chunk_get_size: int = 4 * 1024 * 1024,
124
+ max_single_put_size: int = 64 * 1024 * 1024,
125
+ max_single_get_size: int = 32 * 1024 * 1024,
126
+ min_large_block_upload_threshold: int = 4 * 1024 * 1024 + 1,
127
+ use_byte_buffer: Optional[bool] = None,
128
+ **kwargs: Any
129
+ ) -> Self: ...
130
+ @distributed_trace
131
+ def get_account_information(self, **kwargs: Any) -> Dict[str, str]: ...
132
+ @distributed_trace
133
+ def upload_blob_from_url(
134
+ self,
135
+ source_url: str,
136
+ *,
137
+ metadata: Optional[Dict[str, str]] = None,
138
+ overwrite: Optional[bool] = None,
139
+ include_source_blob_properties: bool = True,
140
+ tags: Optional[Dict[str, str]] = None,
141
+ source_content_md5: Optional[bytearray] = None,
142
+ source_if_modified_since: Optional[datetime] = None,
143
+ source_if_unmodified_since: Optional[datetime] = None,
144
+ source_etag: Optional[str] = None,
145
+ source_match_condition: Optional[MatchConditions] = None,
146
+ if_modified_since: Optional[datetime] = None,
147
+ if_unmodified_since: Optional[datetime] = None,
148
+ etag: Optional[str] = None,
149
+ match_condition: Optional[MatchConditions] = None,
150
+ destination_lease: Optional[Union[BlobLeaseClient, str]] = None,
151
+ timeout: Optional[int] = None,
152
+ content_settings: Optional[ContentSettings] = None,
153
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
154
+ encryption_scope: Optional[str] = None,
155
+ standard_blob_tier: Optional[StandardBlobTier] = None,
156
+ source_authorization: Optional[str] = None,
157
+ source_token_intent: Optional[Literal["backup"]] = None,
158
+ **kwargs: Any
159
+ ) -> Dict[str, Any]: ...
160
+ @distributed_trace
161
+ def upload_blob(
162
+ self,
163
+ data: Union[bytes, str, Iterable[AnyStr], IO[bytes]],
164
+ blob_type: Union[str, BlobType] = BlobType.BLOCKBLOB,
165
+ length: Optional[int] = None,
166
+ metadata: Optional[Dict[str, str]] = None,
167
+ *,
168
+ tags: Optional[Dict[str, str]] = None,
169
+ overwrite: bool = False,
170
+ content_settings: Optional[ContentSettings] = None,
171
+ validate_content: bool = False,
172
+ lease: Optional[BlobLeaseClient] = None,
173
+ if_modified_since: Optional[datetime] = None,
174
+ if_unmodified_since: Optional[datetime] = None,
175
+ etag: Optional[str] = None,
176
+ match_condition: Optional[MatchConditions] = None,
177
+ if_tags_match_condition: Optional[str] = None,
178
+ premium_page_blob_tier: Optional[PremiumPageBlobTier] = None,
179
+ immutability_policy: Optional[ImmutabilityPolicy] = None,
180
+ legal_hold: Optional[bool] = None,
181
+ standard_blob_tier: Optional[StandardBlobTier] = None,
182
+ maxsize_condition: Optional[int] = None,
183
+ max_concurrency: int = 1,
184
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
185
+ encryption_scope: Optional[str] = None,
186
+ encoding: str = "UTF-8",
187
+ progress_hook: Optional[Callable[[int, Optional[int]], None]] = None,
188
+ timeout: Optional[int] = None,
189
+ **kwargs: Any
190
+ ) -> Dict[str, Any]: ...
191
+ @overload
192
+ def download_blob(
193
+ self,
194
+ offset: Optional[int] = None,
195
+ length: Optional[int] = None,
196
+ *,
197
+ version_id: Optional[str] = None,
198
+ validate_content: bool = False,
199
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
200
+ if_modified_since: Optional[datetime] = None,
201
+ if_unmodified_since: Optional[datetime] = None,
202
+ etag: Optional[str] = None,
203
+ match_condition: Optional[MatchConditions] = None,
204
+ if_tags_match_condition: Optional[str] = None,
205
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
206
+ max_concurrency: int = 1,
207
+ encoding: str,
208
+ progress_hook: Optional[Callable[[int, int], None]] = None,
209
+ timeout: Optional[int] = None,
210
+ **kwargs: Any
211
+ ) -> StorageStreamDownloader[str]: ...
212
+ @overload
213
+ def download_blob(
214
+ self,
215
+ offset: Optional[int] = None,
216
+ length: Optional[int] = None,
217
+ *,
218
+ version_id: Optional[str] = None,
219
+ validate_content: bool = False,
220
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
221
+ if_modified_since: Optional[datetime] = None,
222
+ if_unmodified_since: Optional[datetime] = None,
223
+ etag: Optional[str] = None,
224
+ match_condition: Optional[MatchConditions] = None,
225
+ if_tags_match_condition: Optional[str] = None,
226
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
227
+ max_concurrency: int = 1,
228
+ encoding: None = None,
229
+ progress_hook: Optional[Callable[[int, int], None]] = None,
230
+ timeout: Optional[int] = None,
231
+ **kwargs: Any
232
+ ) -> StorageStreamDownloader[bytes]: ...
233
+ @distributed_trace # type: ignore[misc]
234
+ def download_blob(
235
+ self,
236
+ offset: Optional[int] = None,
237
+ length: Optional[int] = None,
238
+ *,
239
+ version_id: Optional[str] = None,
240
+ validate_content: bool = False,
241
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
242
+ if_modified_since: Optional[datetime] = None,
243
+ if_unmodified_since: Optional[datetime] = None,
244
+ etag: Optional[str] = None,
245
+ match_condition: Optional[MatchConditions] = None,
246
+ if_tags_match_condition: Optional[str] = None,
247
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
248
+ max_concurrency: int = 1,
249
+ encoding: Optional[str] = None,
250
+ progress_hook: Optional[Callable[[int, int], None]] = None,
251
+ timeout: Optional[int] = None,
252
+ **kwargs: Any
253
+ ) -> Union[StorageStreamDownloader[str], StorageStreamDownloader[bytes]]: ...
254
+ @distributed_trace
255
+ def query_blob(
256
+ self,
257
+ query_expression: str,
258
+ *,
259
+ on_error: Optional[Callable[[BlobQueryError], None]] = None,
260
+ blob_format: Optional[Union[DelimitedTextDialect, DelimitedJsonDialect, QuickQueryDialect, str]] = None,
261
+ output_format: Optional[
262
+ Union[DelimitedTextDialect, DelimitedJsonDialect, QuickQueryDialect, List[ArrowDialect], str]
263
+ ] = None,
264
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
265
+ if_modified_since: Optional[datetime] = None,
266
+ if_unmodified_since: Optional[datetime] = None,
267
+ etag: Optional[str] = None,
268
+ match_condition: Optional[MatchConditions] = None,
269
+ if_tags_match_condition: Optional[str] = None,
270
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
271
+ timeout: Optional[int] = None,
272
+ **kwargs: Any
273
+ ) -> BlobQueryReader: ...
274
+ @distributed_trace
275
+ def delete_blob(
276
+ self,
277
+ delete_snapshots: Optional[str] = None,
278
+ *,
279
+ version_id: Optional[str] = None,
280
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
281
+ if_modified_since: Optional[datetime] = None,
282
+ if_unmodified_since: Optional[datetime] = None,
283
+ etag: Optional[str] = None,
284
+ match_condition: Optional[MatchConditions] = None,
285
+ if_tags_match_condition: Optional[str] = None,
286
+ timeout: Optional[int] = None,
287
+ **kwargs: Any
288
+ ) -> None: ...
289
+ @distributed_trace
290
+ def undelete_blob(self, *, timeout: Optional[int] = None, **kwargs: Any) -> None: ...
291
+ @distributed_trace
292
+ def exists(self, *, version_id: Optional[str] = None, timeout: Optional[int] = None, **kwargs: Any) -> bool: ...
293
+ @distributed_trace
294
+ def get_blob_properties(
295
+ self,
296
+ *,
297
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
298
+ version_id: Optional[str] = None,
299
+ if_modified_since: Optional[datetime] = None,
300
+ if_unmodified_since: Optional[datetime] = None,
301
+ etag: Optional[str] = None,
302
+ match_condition: Optional[MatchConditions] = None,
303
+ if_tags_match_condition: Optional[str] = None,
304
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
305
+ timeout: Optional[int] = None,
306
+ **kwargs: Any
307
+ ) -> BlobProperties: ...
308
+ @distributed_trace
309
+ def set_http_headers(
310
+ self,
311
+ content_settings: Optional[ContentSettings] = None,
312
+ *,
313
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
314
+ if_modified_since: Optional[datetime] = None,
315
+ if_unmodified_since: Optional[datetime] = None,
316
+ etag: Optional[str] = None,
317
+ match_condition: Optional[MatchConditions] = None,
318
+ if_tags_match_condition: Optional[str] = None,
319
+ timeout: Optional[int] = None,
320
+ **kwargs: Any
321
+ ) -> Dict[str, Any]: ...
322
+ @distributed_trace
323
+ def set_blob_metadata(
324
+ self,
325
+ metadata: Optional[Dict[str, str]] = None,
326
+ *,
327
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
328
+ if_modified_since: Optional[datetime] = None,
329
+ if_unmodified_since: Optional[datetime] = None,
330
+ etag: Optional[str] = None,
331
+ match_condition: Optional[MatchConditions] = None,
332
+ if_tags_match_condition: Optional[str] = None,
333
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
334
+ encryption_scope: Optional[str] = None,
335
+ timeout: Optional[int] = None,
336
+ **kwargs: Any
337
+ ) -> Dict[str, Union[str, datetime]]: ...
338
+ @distributed_trace
339
+ def set_immutability_policy(
340
+ self,
341
+ immutability_policy: ImmutabilityPolicy,
342
+ *,
343
+ version_id: Optional[str] = None,
344
+ timeout: Optional[int] = None,
345
+ **kwargs: Any
346
+ ) -> Dict[str, str]: ...
347
+ @distributed_trace
348
+ def delete_immutability_policy(
349
+ self, *, version_id: Optional[str] = None, timeout: Optional[int] = None, **kwargs: Any
350
+ ) -> None: ...
351
+ @distributed_trace
352
+ def set_legal_hold(
353
+ self, legal_hold: bool, *, version_id: Optional[str] = None, timeout: Optional[int] = None, **kwargs: Any
354
+ ) -> Dict[str, Union[str, datetime, bool]]: ...
355
+ @distributed_trace
356
+ def create_page_blob(
357
+ self,
358
+ size: int,
359
+ content_settings: Optional[ContentSettings] = None,
360
+ metadata: Optional[Dict[str, str]] = None,
361
+ premium_page_blob_tier: Optional[Union[str, PremiumPageBlobTier]] = None,
362
+ *,
363
+ tags: Optional[Dict[str, str]] = None,
364
+ sequence_number: Optional[int] = None,
365
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
366
+ immutability_policy: Optional[ImmutabilityPolicy] = None,
367
+ legal_hold: Optional[bool] = None,
368
+ if_modified_since: Optional[datetime] = None,
369
+ if_unmodified_since: Optional[datetime] = None,
370
+ etag: Optional[str] = None,
371
+ match_condition: Optional[MatchConditions] = None,
372
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
373
+ encryption_scope: Optional[str] = None,
374
+ timeout: Optional[int] = None,
375
+ **kwargs: Any
376
+ ) -> Dict[str, Union[str, datetime]]: ...
377
+ @distributed_trace
378
+ def create_append_blob(
379
+ self,
380
+ content_settings: Optional[ContentSettings] = None,
381
+ metadata: Optional[Dict[str, str]] = None,
382
+ *,
383
+ tags: Optional[Dict[str, str]] = None,
384
+ immutability_policy: Optional[ImmutabilityPolicy] = None,
385
+ legal_hold: Optional[bool] = None,
386
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
387
+ if_modified_since: Optional[datetime] = None,
388
+ if_unmodified_since: Optional[datetime] = None,
389
+ etag: Optional[str] = None,
390
+ match_condition: Optional[MatchConditions] = None,
391
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
392
+ encryption_scope: Optional[str] = None,
393
+ timeout: Optional[int] = None,
394
+ **kwargs: Any
395
+ ) -> Dict[str, Union[str, datetime]]: ...
396
+ @distributed_trace
397
+ def create_snapshot(
398
+ self,
399
+ metadata: Optional[Dict[str, str]] = None,
400
+ *,
401
+ if_modified_since: Optional[datetime] = None,
402
+ if_unmodified_since: Optional[datetime] = None,
403
+ etag: Optional[str] = None,
404
+ match_condition: Optional[MatchConditions] = None,
405
+ if_tags_match_condition: Optional[str] = None,
406
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
407
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
408
+ encryption_scope: Optional[str] = None,
409
+ timeout: Optional[int] = None,
410
+ **kwargs: Any
411
+ ) -> Dict[str, Union[str, datetime]]: ...
412
+ @distributed_trace
413
+ def start_copy_from_url(
414
+ self,
415
+ source_url: str,
416
+ metadata: Optional[Dict[str, str]] = None,
417
+ incremental_copy: bool = False,
418
+ *,
419
+ tags: Optional[Union[Dict[str, str], Literal["COPY"]]] = None,
420
+ immutability_policy: Optional[ImmutabilityPolicy] = None,
421
+ legal_hold: Optional[bool] = None,
422
+ source_if_modified_since: Optional[datetime] = None,
423
+ source_if_unmodified_since: Optional[datetime] = None,
424
+ source_etag: Optional[str] = None,
425
+ source_match_condition: Optional[MatchConditions] = None,
426
+ if_modified_since: Optional[datetime] = None,
427
+ if_unmodified_since: Optional[datetime] = None,
428
+ etag: Optional[str] = None,
429
+ match_condition: Optional[MatchConditions] = None,
430
+ if_tags_match_condition: Optional[str] = None,
431
+ destination_lease: Optional[Union[BlobLeaseClient, str]] = None,
432
+ source_lease: Optional[Union[BlobLeaseClient, str]] = None,
433
+ premium_page_blob_tier: Optional[PremiumPageBlobTier] = None,
434
+ standard_blob_tier: Optional[StandardBlobTier] = None,
435
+ rehydrate_priority: Optional[RehydratePriority] = None,
436
+ seal_destination_blob: Optional[bool] = None,
437
+ requires_sync: Optional[bool] = None,
438
+ source_authorization: Optional[str] = None,
439
+ source_token_intent: Optional[Literal["backup"]] = None,
440
+ encryption_scope: Optional[str] = None,
441
+ timeout: Optional[int] = None,
442
+ **kwargs: Any
443
+ ) -> Dict[str, Union[str, datetime]]: ...
444
+ @distributed_trace
445
+ def abort_copy(self, copy_id: Union[str, Dict[str, Any], BlobProperties], **kwargs: Any) -> None: ...
446
+ @distributed_trace
447
+ def acquire_lease(
448
+ self,
449
+ lease_duration: int = -1,
450
+ lease_id: Optional[str] = None,
451
+ *,
452
+ if_modified_since: Optional[datetime] = None,
453
+ if_unmodified_since: Optional[datetime] = None,
454
+ etag: Optional[str] = None,
455
+ match_condition: Optional[MatchConditions] = None,
456
+ if_tags_match_condition: Optional[str] = None,
457
+ timeout: Optional[int] = None,
458
+ **kwargs: Any
459
+ ) -> BlobLeaseClient: ...
460
+ @distributed_trace
461
+ def set_standard_blob_tier(
462
+ self,
463
+ standard_blob_tier: Union[str, StandardBlobTier],
464
+ *,
465
+ rehydrate_priority: Optional[RehydratePriority] = None,
466
+ version_id: Optional[str] = None,
467
+ if_tags_match_condition: Optional[str] = None,
468
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
469
+ timeout: Optional[int] = None,
470
+ **kwargs: Any
471
+ ) -> None: ...
472
+ @distributed_trace
473
+ def stage_block(
474
+ self,
475
+ block_id: str,
476
+ data: Union[bytes, str, Iterable[AnyStr], IO[AnyStr]],
477
+ length: Optional[int] = None,
478
+ *,
479
+ validate_content: Optional[bool] = None,
480
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
481
+ encoding: Optional[str] = None,
482
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
483
+ encryption_scope: Optional[str] = None,
484
+ timeout: Optional[int] = None,
485
+ **kwargs: Any
486
+ ) -> Dict[str, Any]: ...
487
+ @distributed_trace
488
+ def stage_block_from_url(
489
+ self,
490
+ block_id: str,
491
+ source_url: str,
492
+ source_offset: Optional[int] = None,
493
+ source_length: Optional[int] = None,
494
+ source_content_md5: Optional[Union[bytes, bytearray]] = None,
495
+ *,
496
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
497
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
498
+ encryption_scope: Optional[str] = None,
499
+ source_authorization: Optional[str] = None,
500
+ source_token_intent: Optional[Literal["backup"]] = None,
501
+ timeout: Optional[int] = None,
502
+ **kwargs: Any
503
+ ) -> Dict[str, Any]: ...
504
+ @distributed_trace
505
+ def get_block_list(
506
+ self,
507
+ block_list_type: str = "committed",
508
+ *,
509
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
510
+ if_tags_match_condition: Optional[str] = None,
511
+ timeout: Optional[int] = None,
512
+ **kwargs: Any
513
+ ) -> Tuple[List[BlobBlock], List[BlobBlock]]: ...
514
+ @distributed_trace
515
+ def commit_block_list(
516
+ self,
517
+ block_list: List[BlobBlock],
518
+ content_settings: Optional[ContentSettings] = None,
519
+ metadata: Optional[Dict[str, str]] = None,
520
+ *,
521
+ tags: Optional[Dict[str, str]] = None,
522
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
523
+ immutability_policy: Optional[ImmutabilityPolicy] = None,
524
+ legal_hold: Optional[bool] = None,
525
+ validate_content: Optional[bool] = None,
526
+ if_modified_since: Optional[datetime] = None,
527
+ if_unmodified_since: Optional[datetime] = None,
528
+ etag: Optional[str] = None,
529
+ match_condition: Optional[MatchConditions] = None,
530
+ if_tags_match_condition: Optional[str] = None,
531
+ standard_blob_tier: Optional[StandardBlobTier] = None,
532
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
533
+ encryption_scope: Optional[str] = None,
534
+ timeout: Optional[int] = None,
535
+ **kwargs: Any
536
+ ) -> Dict[str, Union[str, datetime]]: ...
537
+ @distributed_trace
538
+ def set_premium_page_blob_tier(
539
+ self,
540
+ premium_page_blob_tier: PremiumPageBlobTier,
541
+ *,
542
+ if_tags_match_condition: Optional[str] = None,
543
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
544
+ timeout: Optional[int] = None,
545
+ **kwargs: Any
546
+ ) -> None: ...
547
+ @distributed_trace
548
+ def set_blob_tags(
549
+ self,
550
+ tags: Optional[Dict[str, str]] = None,
551
+ *,
552
+ version_id: Optional[str] = None,
553
+ validate_content: Optional[bool] = None,
554
+ if_tags_match_condition: Optional[str] = None,
555
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
556
+ timeout: Optional[int] = None,
557
+ **kwargs: Any
558
+ ) -> Dict[str, Any]: ...
559
+ @distributed_trace
560
+ def get_blob_tags(
561
+ self,
562
+ *,
563
+ version_id: Optional[str] = None,
564
+ if_tags_match_condition: Optional[str] = None,
565
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
566
+ timeout: Optional[int] = None,
567
+ **kwargs: Any
568
+ ) -> Dict[str, str]: ...
569
+ @distributed_trace
570
+ def get_page_ranges(
571
+ self,
572
+ offset: Optional[int] = None,
573
+ length: Optional[int] = None,
574
+ previous_snapshot_diff: Optional[Union[str, Dict[str, Any]]] = None,
575
+ *,
576
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
577
+ if_modified_since: Optional[datetime] = None,
578
+ if_unmodified_since: Optional[datetime] = None,
579
+ etag: Optional[str] = None,
580
+ match_condition: Optional[MatchConditions] = None,
581
+ if_tags_match_condition: Optional[str] = None,
582
+ timeout: Optional[int] = None,
583
+ **kwargs: Any
584
+ ) -> Tuple[List[Dict[str, int]], List[Dict[str, int]]]: ...
585
+ @distributed_trace
586
+ def list_page_ranges(
587
+ self,
588
+ *,
589
+ offset: Optional[int] = None,
590
+ length: Optional[int] = None,
591
+ previous_snapshot: Optional[Union[str, Dict[str, Any]]] = None,
592
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
593
+ if_modified_since: Optional[datetime] = None,
594
+ if_unmodified_since: Optional[datetime] = None,
595
+ etag: Optional[str] = None,
596
+ match_condition: Optional[MatchConditions] = None,
597
+ if_tags_match_condition: Optional[str] = None,
598
+ results_per_page: Optional[int] = None,
599
+ timeout: Optional[int] = None,
600
+ **kwargs: Any
601
+ ) -> ItemPaged[PageRange]: ...
602
+ @distributed_trace
603
+ def get_page_range_diff_for_managed_disk(
604
+ self,
605
+ previous_snapshot_url: str,
606
+ offset: Optional[int] = None,
607
+ length: Optional[int] = None,
608
+ *,
609
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
610
+ if_modified_since: Optional[datetime] = None,
611
+ if_unmodified_since: Optional[datetime] = None,
612
+ etag: Optional[str] = None,
613
+ match_condition: Optional[MatchConditions] = None,
614
+ timeout: Optional[int] = None,
615
+ **kwargs: Any
616
+ ) -> Tuple[List[Dict[str, int]], List[Dict[str, int]]]: ...
617
+ @distributed_trace
618
+ def set_sequence_number(
619
+ self,
620
+ sequence_number_action: Union[str, SequenceNumberAction],
621
+ sequence_number: Optional[str] = None,
622
+ *,
623
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
624
+ if_modified_since: Optional[datetime] = None,
625
+ if_unmodified_since: Optional[datetime] = None,
626
+ etag: Optional[str] = None,
627
+ match_condition: Optional[MatchConditions] = None,
628
+ if_tags_match_condition: Optional[str] = None,
629
+ timeout: Optional[int] = None,
630
+ **kwargs: Any
631
+ ) -> Dict[str, Union[str, datetime]]: ...
632
+ @distributed_trace
633
+ def resize_blob(
634
+ self,
635
+ size: int,
636
+ *,
637
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
638
+ if_modified_since: Optional[datetime] = None,
639
+ if_unmodified_since: Optional[datetime] = None,
640
+ etag: Optional[str] = None,
641
+ match_condition: Optional[MatchConditions] = None,
642
+ if_tags_match_condition: Optional[str] = None,
643
+ premium_page_blob_tier: Optional[PremiumPageBlobTier] = None,
644
+ timeout: Optional[int] = None,
645
+ **kwargs: Any
646
+ ) -> Dict[str, Union[str, datetime]]: ...
647
+ @distributed_trace
648
+ def upload_page(
649
+ self,
650
+ page: bytes,
651
+ offset: int,
652
+ length: int,
653
+ *,
654
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
655
+ validate_content: Optional[bool] = None,
656
+ if_sequence_number_lte: Optional[int] = None,
657
+ if_sequence_number_lt: Optional[int] = None,
658
+ if_sequence_number_eq: Optional[int] = None,
659
+ if_modified_since: Optional[datetime] = None,
660
+ if_unmodified_since: Optional[datetime] = None,
661
+ etag: Optional[str] = None,
662
+ match_condition: Optional[MatchConditions] = None,
663
+ if_tags_match_condition: Optional[str] = None,
664
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
665
+ encryption_scope: Optional[str] = None,
666
+ encoding: Optional[str] = None,
667
+ timeout: Optional[int] = None,
668
+ **kwargs: Any
669
+ ) -> Dict[str, Union[str, datetime]]: ...
670
+ @distributed_trace
671
+ def upload_pages_from_url(
672
+ self,
673
+ source_url: str,
674
+ offset: int,
675
+ length: int,
676
+ source_offset: int,
677
+ *,
678
+ source_content_md5: Optional[bytes] = None,
679
+ source_if_modified_since: Optional[datetime] = None,
680
+ source_if_unmodified_since: Optional[datetime] = None,
681
+ source_etag: Optional[str] = None,
682
+ source_match_condition: Optional[MatchConditions] = None,
683
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
684
+ if_sequence_number_lte: Optional[int] = None,
685
+ if_sequence_number_lt: Optional[int] = None,
686
+ if_sequence_number_eq: Optional[int] = None,
687
+ if_modified_since: Optional[datetime] = None,
688
+ if_unmodified_since: Optional[datetime] = None,
689
+ etag: Optional[str] = None,
690
+ match_condition: Optional[MatchConditions] = None,
691
+ if_tags_match_condition: Optional[str] = None,
692
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
693
+ encryption_scope: Optional[str] = None,
694
+ source_authorization: Optional[str] = None,
695
+ source_token_intent: Optional[Literal["backup"]] = None,
696
+ timeout: Optional[int] = None,
697
+ **kwargs: Any
698
+ ) -> Dict[str, Any]: ...
699
+ @distributed_trace
700
+ def clear_page(
701
+ self,
702
+ offset: int,
703
+ length: int,
704
+ *,
705
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
706
+ if_sequence_number_lte: Optional[int] = None,
707
+ if_sequence_number_lt: Optional[int] = None,
708
+ if_sequence_number_eq: Optional[int] = None,
709
+ if_modified_since: Optional[datetime] = None,
710
+ if_unmodified_since: Optional[datetime] = None,
711
+ etag: Optional[str] = None,
712
+ match_condition: Optional[MatchConditions] = None,
713
+ if_tags_match_condition: Optional[str] = None,
714
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
715
+ timeout: Optional[int] = None,
716
+ **kwargs: Any
717
+ ) -> Dict[str, Union[str, datetime]]: ...
718
+ @distributed_trace
719
+ def append_block(
720
+ self,
721
+ data: Union[bytes, str, Iterable[AnyStr], IO[AnyStr]],
722
+ length: Optional[int] = None,
723
+ *,
724
+ validate_content: Optional[bool] = None,
725
+ maxsize_condition: Optional[int] = None,
726
+ appendpos_condition: Optional[int] = None,
727
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
728
+ if_modified_since: Optional[datetime] = None,
729
+ if_unmodified_since: Optional[datetime] = None,
730
+ etag: Optional[str] = None,
731
+ match_condition: Optional[MatchConditions] = None,
732
+ if_tags_match_condition: Optional[str] = None,
733
+ encoding: Optional[str] = None,
734
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
735
+ encryption_scope: Optional[str] = None,
736
+ timeout: Optional[int] = None,
737
+ **kwargs: Any
738
+ ) -> Dict[str, Union[str, datetime, int]]: ...
739
+ @distributed_trace
740
+ def append_block_from_url(
741
+ self,
742
+ copy_source_url: str,
743
+ source_offset: Optional[int] = None,
744
+ source_length: Optional[int] = None,
745
+ *,
746
+ source_content_md5: Optional[bytearray] = None,
747
+ maxsize_condition: Optional[int] = None,
748
+ appendpos_condition: Optional[int] = None,
749
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
750
+ if_modified_since: Optional[datetime] = None,
751
+ if_unmodified_since: Optional[datetime] = None,
752
+ etag: Optional[str] = None,
753
+ match_condition: Optional[MatchConditions] = None,
754
+ if_tags_match_condition: Optional[str] = None,
755
+ source_if_modified_since: Optional[datetime] = None,
756
+ source_if_unmodified_since: Optional[datetime] = None,
757
+ source_etag: Optional[str] = None,
758
+ source_match_condition: Optional[MatchConditions] = None,
759
+ cpk: Optional[CustomerProvidedEncryptionKey] = None,
760
+ encryption_scope: Optional[str] = None,
761
+ source_authorization: Optional[str] = None,
762
+ source_token_intent: Optional[Literal["backup"]] = None,
763
+ timeout: Optional[int] = None,
764
+ **kwargs: Any
765
+ ) -> Dict[str, Union[str, datetime, int]]: ...
766
+ @distributed_trace
767
+ def seal_append_blob(
768
+ self,
769
+ *,
770
+ appendpos_condition: Optional[int] = None,
771
+ lease: Optional[Union[BlobLeaseClient, str]] = None,
772
+ if_modified_since: Optional[datetime] = None,
773
+ if_unmodified_since: Optional[datetime] = None,
774
+ etag: Optional[str] = None,
775
+ match_condition: Optional[MatchConditions] = None,
776
+ timeout: Optional[int] = None,
777
+ **kwargs: Any
778
+ ) -> Dict[str, Union[str, datetime, int]]: ...
779
+ @distributed_trace
780
+ def _get_container_client(self) -> ContainerClient: ...