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