1use super::{
7 models_serde,
8 xml_helpers::{
9 Blob_tag_setTag, BlobsBlob, Committed_blocksBlock, Container_itemsContainer, CorsCorsRule,
10 SchemaField, Uncommitted_blocksBlock,
11 },
12 AccessTier, ArchiveStatus, BlobImmutabilityPolicyMode, BlobType, CopyStatus,
13 GeoReplicationStatusType, LeaseDuration, LeaseState, LeaseStatus, PublicAccessType,
14 QueryRequestType, QueryType, RehydratePriority,
15};
16use azure_core::{
17 base64::{deserialize, serialize},
18 fmt::SafeDebug,
19 time::OffsetDateTime,
20};
21use serde::{Deserialize, Serialize};
22use serde_json::Value;
23use std::collections::HashMap;
24
25#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
27pub struct AccessPolicy {
28 #[serde(
30 default,
31 rename = "Expiry",
32 skip_serializing_if = "Option::is_none",
33 with = "azure_core::time::rfc7231::option"
34 )]
35 pub expiry: Option<OffsetDateTime>,
36
37 #[serde(rename = "Permission", skip_serializing_if = "Option::is_none")]
39 pub permission: Option<String>,
40
41 #[serde(
43 default,
44 rename = "Start",
45 skip_serializing_if = "Option::is_none",
46 with = "azure_core::time::rfc7231::option"
47 )]
48 pub start: Option<OffsetDateTime>,
49}
50
51#[derive(SafeDebug)]
53pub struct AppendBlobClientAppendBlockFromUrlResult;
54
55#[derive(SafeDebug)]
57pub struct AppendBlobClientAppendBlockResult;
58
59#[derive(SafeDebug)]
61pub struct AppendBlobClientCreateResult;
62
63#[derive(SafeDebug)]
65pub struct AppendBlobClientSealResult;
66
67#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
69pub struct ArrowConfiguration {
70 #[serde(
72 default,
73 deserialize_with = "SchemaField::unwrap",
74 rename = "Schema",
75 serialize_with = "SchemaField::wrap",
76 skip_serializing_if = "Option::is_none"
77 )]
78 pub schema: Option<Vec<ArrowField>>,
79}
80
81#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
83#[serde(rename = "Field")]
84pub struct ArrowField {
85 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
87 pub name: Option<String>,
88
89 #[serde(rename = "Precision", skip_serializing_if = "Option::is_none")]
91 pub precision: Option<i32>,
92
93 #[serde(rename = "Scale", skip_serializing_if = "Option::is_none")]
95 pub scale: Option<i32>,
96
97 #[serde(rename = "Type", skip_serializing_if = "Option::is_none")]
99 pub type_prop: Option<String>,
100}
101
102#[derive(SafeDebug)]
104pub struct BlobClientAbortCopyFromUrlResult;
105
106#[derive(SafeDebug)]
108pub struct BlobClientAcquireLeaseResult;
109
110#[derive(SafeDebug)]
112pub struct BlobClientBreakLeaseResult;
113
114#[derive(SafeDebug)]
116pub struct BlobClientChangeLeaseResult;
117
118#[derive(SafeDebug)]
120pub struct BlobClientCopyFromUrlResult;
121
122#[derive(SafeDebug)]
124pub struct BlobClientCreateSnapshotResult;
125
126#[derive(SafeDebug)]
128pub struct BlobClientDeleteImmutabilityPolicyResult;
129
130#[derive(SafeDebug)]
132pub struct BlobClientDownloadResult;
133
134#[derive(SafeDebug)]
136pub struct BlobClientGetAccountInfoResult;
137
138#[derive(SafeDebug)]
140pub struct BlobClientGetPropertiesResult;
141
142#[derive(SafeDebug)]
144pub struct BlobClientReleaseLeaseResult;
145
146#[derive(SafeDebug)]
148pub struct BlobClientRenewLeaseResult;
149
150#[derive(SafeDebug)]
152pub struct BlobClientSetExpiryResult;
153
154#[derive(SafeDebug)]
156pub struct BlobClientSetImmutabilityPolicyResult;
157
158#[derive(SafeDebug)]
160pub struct BlobClientSetLegalHoldResult;
161
162#[derive(SafeDebug)]
164pub struct BlobClientStartCopyFromUrlResult;
165
166#[derive(SafeDebug)]
168pub struct BlobClientUndeleteResult;
169
170#[derive(SafeDebug)]
172pub struct BlobContainerClientAcquireLeaseResult;
173
174#[derive(SafeDebug)]
176pub struct BlobContainerClientBreakLeaseResult;
177
178#[derive(SafeDebug)]
180pub struct BlobContainerClientChangeLeaseResult;
181
182#[derive(SafeDebug)]
184pub struct BlobContainerClientGetAccountInfoResult;
185
186#[derive(SafeDebug)]
188pub struct BlobContainerClientGetPropertiesResult;
189
190#[derive(SafeDebug)]
192pub struct BlobContainerClientReleaseLeaseResult;
193
194#[derive(SafeDebug)]
196pub struct BlobContainerClientRenameResult;
197
198#[derive(SafeDebug)]
200pub struct BlobContainerClientRenewLeaseResult;
201
202#[derive(SafeDebug)]
204pub struct BlobContainerClientRestoreResult;
205
206#[derive(SafeDebug)]
208pub struct BlobContainerClientSetAccessPolicyResult;
209
210#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
212#[non_exhaustive]
213pub struct BlobFlatListSegment {
214 #[serde(default, rename = "Blob")]
216 pub blob_items: Vec<BlobItemInternal>,
217}
218
219#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
221#[non_exhaustive]
222pub struct BlobHierarchyListSegment {
223 #[serde(default, rename = "Blob")]
225 pub blob_items: Vec<BlobItemInternal>,
226
227 #[serde(rename = "BlobPrefix", skip_serializing_if = "Option::is_none")]
229 pub blob_prefixes: Option<Vec<BlobPrefix>>,
230}
231
232#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
234#[non_exhaustive]
235#[serde(rename = "Blob")]
236pub struct BlobItemInternal {
237 #[serde(rename = "BlobTags", skip_serializing_if = "Option::is_none")]
239 pub blob_tags: Option<BlobTags>,
240
241 #[serde(rename = "Deleted", skip_serializing_if = "Option::is_none")]
243 pub deleted: Option<bool>,
244
245 #[serde(rename = "HasVersionsOnly", skip_serializing_if = "Option::is_none")]
247 pub has_versions_only: Option<bool>,
248
249 #[serde(rename = "IsCurrentVersion", skip_serializing_if = "Option::is_none")]
251 pub is_current_version: Option<bool>,
252
253 #[serde(rename = "Metadata", skip_serializing_if = "Option::is_none")]
255 pub metadata: Option<BlobMetadata>,
256
257 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
259 pub name: Option<BlobName>,
260
261 #[serde(rename = "OrMetadata", skip_serializing_if = "Option::is_none")]
263 pub object_replication_metadata: Option<ObjectReplicationMetadata>,
264
265 #[serde(rename = "Properties", skip_serializing_if = "Option::is_none")]
267 pub properties: Option<BlobPropertiesInternal>,
268
269 #[serde(rename = "Snapshot", skip_serializing_if = "Option::is_none")]
271 pub snapshot: Option<String>,
272
273 #[serde(rename = "VersionId", skip_serializing_if = "Option::is_none")]
275 pub version_id: Option<String>,
276}
277
278#[derive(Clone, Default, SafeDebug)]
280#[non_exhaustive]
281pub struct BlobMetadata {
282 pub additional_properties: Option<HashMap<String, String>>,
284
285 pub encrypted: Option<String>,
287}
288
289#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
291#[non_exhaustive]
292pub struct BlobName {
293 #[serde(rename = "$text", skip_serializing_if = "Option::is_none")]
295 pub content: Option<String>,
296
297 #[serde(rename = "@Encoded", skip_serializing_if = "Option::is_none")]
299 pub encoded: Option<bool>,
300}
301
302#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
304#[non_exhaustive]
305pub struct BlobPrefix {
306 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
308 pub name: Option<BlobName>,
309}
310
311#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
313#[non_exhaustive]
314#[serde(rename = "Properties")]
315pub struct BlobPropertiesInternal {
316 #[serde(rename = "AccessTier", skip_serializing_if = "Option::is_none")]
318 pub access_tier: Option<AccessTier>,
319
320 #[serde(
322 default,
323 rename = "AccessTierChangeTime",
324 skip_serializing_if = "Option::is_none",
325 with = "azure_core::time::rfc7231::option"
326 )]
327 pub access_tier_change_time: Option<OffsetDateTime>,
328
329 #[serde(rename = "AccessTierInferred", skip_serializing_if = "Option::is_none")]
331 pub access_tier_inferred: Option<bool>,
332
333 #[serde(rename = "ArchiveStatus", skip_serializing_if = "Option::is_none")]
335 pub archive_status: Option<ArchiveStatus>,
336
337 #[serde(
339 rename = "x-ms-blob-sequence-number",
340 skip_serializing_if = "Option::is_none"
341 )]
342 pub blob_sequence_number: Option<i64>,
343
344 #[serde(rename = "BlobType", skip_serializing_if = "Option::is_none")]
346 pub blob_type: Option<BlobType>,
347
348 #[serde(rename = "Cache-Control", skip_serializing_if = "Option::is_none")]
350 pub cache_control: Option<String>,
351
352 #[serde(
354 rename = "Content-Disposition",
355 skip_serializing_if = "Option::is_none"
356 )]
357 pub content_disposition: Option<String>,
358
359 #[serde(rename = "Content-Encoding", skip_serializing_if = "Option::is_none")]
361 pub content_encoding: Option<String>,
362
363 #[serde(rename = "Content-Language", skip_serializing_if = "Option::is_none")]
365 pub content_language: Option<String>,
366
367 #[serde(rename = "Content-Length", skip_serializing_if = "Option::is_none")]
369 pub content_length: Option<u64>,
370
371 #[serde(
373 default,
374 deserialize_with = "deserialize",
375 rename = "Content-MD5",
376 serialize_with = "serialize",
377 skip_serializing_if = "Option::is_none"
378 )]
379 pub content_md5: Option<Vec<u8>>,
380
381 #[serde(rename = "Content-Type", skip_serializing_if = "Option::is_none")]
383 pub content_type: Option<String>,
384
385 #[serde(
387 default,
388 rename = "CopyCompletionTime",
389 skip_serializing_if = "Option::is_none",
390 with = "azure_core::time::rfc7231::option"
391 )]
392 pub copy_completion_time: Option<OffsetDateTime>,
393
394 #[serde(rename = "CopyId", skip_serializing_if = "Option::is_none")]
396 pub copy_id: Option<String>,
397
398 #[serde(rename = "CopyProgress", skip_serializing_if = "Option::is_none")]
400 pub copy_progress: Option<String>,
401
402 #[serde(rename = "CopySource", skip_serializing_if = "Option::is_none")]
404 pub copy_source: Option<String>,
405
406 #[serde(rename = "CopyStatus", skip_serializing_if = "Option::is_none")]
408 pub copy_status: Option<CopyStatus>,
409
410 #[serde(
412 rename = "CopyStatusDescription",
413 skip_serializing_if = "Option::is_none"
414 )]
415 pub copy_status_description: Option<String>,
416
417 #[serde(
419 default,
420 rename = "Creation-Time",
421 skip_serializing_if = "Option::is_none",
422 with = "azure_core::time::rfc7231::option"
423 )]
424 pub creation_time: Option<OffsetDateTime>,
425
426 #[serde(
428 rename = "CustomerProvidedKeySha256",
429 skip_serializing_if = "Option::is_none"
430 )]
431 pub customer_provided_key_sha256: Option<String>,
432
433 #[serde(
435 default,
436 rename = "DeletedTime",
437 skip_serializing_if = "Option::is_none",
438 with = "azure_core::time::rfc7231::option"
439 )]
440 pub deleted_time: Option<OffsetDateTime>,
441
442 #[serde(
444 rename = "DestinationSnapshot",
445 skip_serializing_if = "Option::is_none"
446 )]
447 pub destination_snapshot: Option<String>,
448
449 #[serde(rename = "EncryptionScope", skip_serializing_if = "Option::is_none")]
451 pub encryption_scope: Option<String>,
452
453 #[serde(rename = "Etag", skip_serializing_if = "Option::is_none")]
455 pub etag: Option<String>,
456
457 #[serde(
459 default,
460 rename = "Expiry-Time",
461 skip_serializing_if = "Option::is_none",
462 with = "azure_core::time::rfc7231::option"
463 )]
464 pub expires_on: Option<OffsetDateTime>,
465
466 #[serde(
468 default,
469 rename = "ImmutabilityPolicyUntilDate",
470 skip_serializing_if = "Option::is_none",
471 with = "azure_core::time::rfc7231::option"
472 )]
473 pub immutability_policy_expires_on: Option<OffsetDateTime>,
474
475 #[serde(
477 rename = "ImmutabilityPolicyMode",
478 skip_serializing_if = "Option::is_none"
479 )]
480 pub immutability_policy_mode: Option<BlobImmutabilityPolicyMode>,
481
482 #[serde(rename = "IncrementalCopy", skip_serializing_if = "Option::is_none")]
484 pub incremental_copy: Option<bool>,
485
486 #[serde(rename = "Sealed", skip_serializing_if = "Option::is_none")]
488 pub is_sealed: Option<bool>,
489
490 #[serde(
492 default,
493 rename = "LastAccessTime",
494 skip_serializing_if = "Option::is_none",
495 with = "azure_core::time::rfc7231::option"
496 )]
497 pub last_accessed_on: Option<OffsetDateTime>,
498
499 #[serde(
501 default,
502 rename = "Last-Modified",
503 skip_serializing_if = "Option::is_none",
504 with = "azure_core::time::rfc7231::option"
505 )]
506 pub last_modified: Option<OffsetDateTime>,
507
508 #[serde(rename = "LeaseDuration", skip_serializing_if = "Option::is_none")]
510 pub lease_duration: Option<LeaseDuration>,
511
512 #[serde(rename = "LeaseState", skip_serializing_if = "Option::is_none")]
514 pub lease_state: Option<LeaseState>,
515
516 #[serde(rename = "LeaseStatus", skip_serializing_if = "Option::is_none")]
518 pub lease_status: Option<LeaseStatus>,
519
520 #[serde(rename = "LegalHold", skip_serializing_if = "Option::is_none")]
522 pub legal_hold: Option<bool>,
523
524 #[serde(rename = "RehydratePriority", skip_serializing_if = "Option::is_none")]
526 pub rehydrate_priority: Option<RehydratePriority>,
527
528 #[serde(
530 rename = "RemainingRetentionDays",
531 skip_serializing_if = "Option::is_none"
532 )]
533 pub remaining_retention_days: Option<i32>,
534
535 #[serde(rename = "ServerEncrypted", skip_serializing_if = "Option::is_none")]
537 pub server_encrypted: Option<bool>,
538
539 #[serde(rename = "TagCount", skip_serializing_if = "Option::is_none")]
541 pub tag_count: Option<i32>,
542}
543
544#[derive(SafeDebug)]
546pub struct BlobServiceClientGetAccountInfoResult;
547
548#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
550#[serde(rename = "StorageServiceProperties")]
551pub struct BlobServiceProperties {
552 #[serde(
554 default,
555 deserialize_with = "CorsCorsRule::unwrap",
556 rename = "Cors",
557 serialize_with = "CorsCorsRule::wrap",
558 skip_serializing_if = "Option::is_none"
559 )]
560 pub cors: Option<Vec<CorsRule>>,
561
562 #[serde(
564 rename = "DefaultServiceVersion",
565 skip_serializing_if = "Option::is_none"
566 )]
567 pub default_service_version: Option<String>,
568
569 #[serde(
571 rename = "DeleteRetentionPolicy",
572 skip_serializing_if = "Option::is_none"
573 )]
574 pub delete_retention_policy: Option<RetentionPolicy>,
575
576 #[serde(rename = "HourMetrics", skip_serializing_if = "Option::is_none")]
578 pub hour_metrics: Option<Metrics>,
579
580 #[serde(rename = "Logging", skip_serializing_if = "Option::is_none")]
582 pub logging: Option<Logging>,
583
584 #[serde(rename = "MinuteMetrics", skip_serializing_if = "Option::is_none")]
586 pub minute_metrics: Option<Metrics>,
587
588 #[serde(rename = "StaticWebsite", skip_serializing_if = "Option::is_none")]
590 pub static_website: Option<StaticWebsite>,
591}
592
593#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
595#[serde(rename = "Tag")]
596pub struct BlobTag {
597 #[serde(rename = "Key", skip_serializing_if = "Option::is_none")]
599 pub key: Option<String>,
600
601 #[serde(rename = "Value", skip_serializing_if = "Option::is_none")]
603 pub value: Option<String>,
604}
605
606#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
608#[serde(rename = "Tags")]
609pub struct BlobTags {
610 #[serde(
612 default,
613 deserialize_with = "Blob_tag_setTag::unwrap",
614 rename = "TagSet",
615 serialize_with = "Blob_tag_setTag::wrap",
616 skip_serializing_if = "Option::is_none"
617 )]
618 pub blob_tag_set: Option<Vec<BlobTag>>,
619}
620
621#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
623#[non_exhaustive]
624pub struct Block {
625 #[serde(
627 default,
628 deserialize_with = "deserialize",
629 rename = "Name",
630 serialize_with = "serialize",
631 skip_serializing_if = "Option::is_none"
632 )]
633 pub name: Option<Vec<u8>>,
634
635 #[serde(rename = "Size", skip_serializing_if = "Option::is_none")]
637 pub size: Option<i64>,
638}
639
640#[derive(SafeDebug)]
642pub struct BlockBlobClientCommitBlockListResult;
643
644#[derive(SafeDebug)]
646pub struct BlockBlobClientQueryResult;
647
648#[derive(SafeDebug)]
650pub struct BlockBlobClientStageBlockFromUrlResult;
651
652#[derive(SafeDebug)]
654pub struct BlockBlobClientStageBlockResult;
655
656#[derive(SafeDebug)]
658pub struct BlockBlobClientUploadBlobFromUrlResult;
659
660#[derive(SafeDebug)]
662pub struct BlockBlobClientUploadResult;
663
664#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
666#[non_exhaustive]
667pub struct BlockList {
668 #[serde(
670 default,
671 deserialize_with = "Committed_blocksBlock::unwrap",
672 rename = "CommittedBlocks",
673 serialize_with = "Committed_blocksBlock::wrap",
674 skip_serializing_if = "Option::is_none"
675 )]
676 pub committed_blocks: Option<Vec<Block>>,
677
678 #[serde(
680 default,
681 deserialize_with = "Uncommitted_blocksBlock::unwrap",
682 rename = "UncommittedBlocks",
683 serialize_with = "Uncommitted_blocksBlock::wrap",
684 skip_serializing_if = "Option::is_none"
685 )]
686 pub uncommitted_blocks: Option<Vec<Block>>,
687}
688
689#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
691#[serde(rename = "BlockList")]
692pub struct BlockLookupList {
693 #[serde(
695 default,
696 rename = "Committed",
697 skip_serializing_if = "Option::is_none",
698 with = "models_serde::option_vec_encoded_bytes_std"
699 )]
700 pub committed: Option<Vec<Vec<u8>>>,
701
702 #[serde(
704 default,
705 rename = "Latest",
706 skip_serializing_if = "Option::is_none",
707 with = "models_serde::option_vec_encoded_bytes_std"
708 )]
709 pub latest: Option<Vec<Vec<u8>>>,
710
711 #[serde(
713 default,
714 rename = "Uncommitted",
715 skip_serializing_if = "Option::is_none",
716 with = "models_serde::option_vec_encoded_bytes_std"
717 )]
718 pub uncommitted: Option<Vec<Vec<u8>>>,
719}
720
721#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
723#[non_exhaustive]
724pub struct ClearRange {
725 #[serde(rename = "End", skip_serializing_if = "Option::is_none")]
727 pub end: Option<i64>,
728
729 #[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
731 pub start: Option<i64>,
732}
733
734#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
736#[non_exhaustive]
737#[serde(rename = "Container")]
738pub struct ContainerItem {
739 #[serde(rename = "Deleted", skip_serializing_if = "Option::is_none")]
741 pub delete: Option<bool>,
742
743 #[serde(rename = "Metadata", skip_serializing_if = "Option::is_none")]
745 pub metadata: Option<HashMap<String, String>>,
746
747 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
749 pub name: Option<String>,
750
751 #[serde(rename = "Properties", skip_serializing_if = "Option::is_none")]
753 pub properties: Option<ContainerProperties>,
754
755 #[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
757 pub version: Option<String>,
758}
759
760#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
762#[non_exhaustive]
763pub struct ContainerProperties {
764 #[serde(
766 rename = "DefaultEncryptionScope",
767 skip_serializing_if = "Option::is_none"
768 )]
769 pub default_encryption_scope: Option<String>,
770
771 #[serde(
773 default,
774 rename = "DeletedTime",
775 skip_serializing_if = "Option::is_none",
776 with = "azure_core::time::rfc7231::option"
777 )]
778 pub deleted_time: Option<OffsetDateTime>,
779
780 #[serde(rename = "ETag", skip_serializing_if = "Option::is_none")]
782 pub etag: Option<String>,
783
784 #[serde(
786 rename = "HasImmutabilityPolicy",
787 skip_serializing_if = "Option::is_none"
788 )]
789 pub has_immutability_policy: Option<bool>,
790
791 #[serde(rename = "HasLegalHold", skip_serializing_if = "Option::is_none")]
793 pub has_legal_hold: Option<bool>,
794
795 #[serde(
797 rename = "ImmutableStorageWithVersioningEnabled",
798 skip_serializing_if = "Option::is_none"
799 )]
800 pub is_immutable_storage_with_versioning_enabled: Option<bool>,
801
802 #[serde(
804 default,
805 rename = "Last-Modified",
806 skip_serializing_if = "Option::is_none",
807 with = "azure_core::time::rfc7231::option"
808 )]
809 pub last_modified: Option<OffsetDateTime>,
810
811 #[serde(rename = "LeaseDuration", skip_serializing_if = "Option::is_none")]
813 pub lease_duration: Option<LeaseDuration>,
814
815 #[serde(rename = "LeaseState", skip_serializing_if = "Option::is_none")]
817 pub lease_state: Option<LeaseState>,
818
819 #[serde(rename = "LeaseStatus", skip_serializing_if = "Option::is_none")]
821 pub lease_status: Option<LeaseStatus>,
822
823 #[serde(
825 rename = "DenyEncryptionScopeOverride",
826 skip_serializing_if = "Option::is_none"
827 )]
828 pub prevent_encryption_scope_override: Option<bool>,
829
830 #[serde(rename = "PublicAccess", skip_serializing_if = "Option::is_none")]
832 pub public_access: Option<PublicAccessType>,
833
834 #[serde(
836 rename = "RemainingRetentionDays",
837 skip_serializing_if = "Option::is_none"
838 )]
839 pub remaining_retention_days: Option<i32>,
840}
841
842#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
846pub struct CorsRule {
847 #[serde(rename = "AllowedHeaders", skip_serializing_if = "Option::is_none")]
849 pub allowed_headers: Option<String>,
850
851 #[serde(rename = "AllowedMethods", skip_serializing_if = "Option::is_none")]
853 pub allowed_methods: Option<String>,
854
855 #[serde(rename = "AllowedOrigins", skip_serializing_if = "Option::is_none")]
857 pub allowed_origins: Option<String>,
858
859 #[serde(rename = "ExposedHeaders", skip_serializing_if = "Option::is_none")]
861 pub exposed_headers: Option<String>,
862
863 #[serde(rename = "MaxAgeInSeconds", skip_serializing_if = "Option::is_none")]
865 pub max_age_in_seconds: Option<i32>,
866}
867
868#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
870pub struct DelimitedTextConfiguration {
871 #[serde(rename = "ColumnSeparator", skip_serializing_if = "Option::is_none")]
873 pub column_separator: Option<String>,
874
875 #[serde(rename = "EscapeChar", skip_serializing_if = "Option::is_none")]
877 pub escape_char: Option<String>,
878
879 #[serde(rename = "FieldQuote", skip_serializing_if = "Option::is_none")]
881 pub field_quote: Option<String>,
882
883 #[serde(rename = "HasHeaders", skip_serializing_if = "Option::is_none")]
885 pub headers_present: Option<bool>,
886
887 #[serde(rename = "RecordSeparator", skip_serializing_if = "Option::is_none")]
889 pub record_separator: Option<String>,
890}
891
892#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
894#[non_exhaustive]
895#[serde(rename = "Blob")]
896pub struct FilterBlobItem {
897 #[serde(rename = "ContainerName", skip_serializing_if = "Option::is_none")]
899 pub container_name: Option<String>,
900
901 #[serde(rename = "IsCurrentVersion", skip_serializing_if = "Option::is_none")]
903 pub is_current_version: Option<bool>,
904
905 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
907 pub name: Option<String>,
908
909 #[serde(skip_serializing_if = "Option::is_none")]
911 pub tags: Option<BlobTags>,
912
913 #[serde(rename = "VersionId", skip_serializing_if = "Option::is_none")]
915 pub version_id: Option<String>,
916}
917
918#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
920#[non_exhaustive]
921#[serde(rename = "EnumerationResults")]
922pub struct FilterBlobSegment {
923 #[serde(
925 default,
926 deserialize_with = "BlobsBlob::unwrap",
927 rename = "Blobs",
928 serialize_with = "BlobsBlob::wrap",
929 skip_serializing_if = "Option::is_none"
930 )]
931 pub blobs: Option<Vec<FilterBlobItem>>,
932
933 #[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
935 pub next_marker: Option<String>,
936
937 #[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
939 pub service_endpoint: Option<String>,
940
941 #[serde(rename = "Where", skip_serializing_if = "Option::is_none")]
943 pub where_prop: Option<String>,
944}
945
946#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
948#[non_exhaustive]
949pub struct GeoReplication {
950 #[serde(
953 default,
954 rename = "LastSyncTime",
955 skip_serializing_if = "Option::is_none",
956 with = "azure_core::time::rfc7231::option"
957 )]
958 pub last_sync_time: Option<OffsetDateTime>,
959
960 #[serde(rename = "Status", skip_serializing_if = "Option::is_none")]
962 pub status: Option<GeoReplicationStatusType>,
963}
964
965#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
967pub struct JsonTextConfiguration {
968 #[serde(rename = "RecordSeparator", skip_serializing_if = "Option::is_none")]
970 pub record_separator: Option<String>,
971}
972
973#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
975pub struct KeyInfo {
976 #[serde(rename = "Expiry", skip_serializing_if = "Option::is_none")]
978 pub expiry: Option<String>,
979
980 #[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
982 pub start: Option<String>,
983}
984
985#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
987#[non_exhaustive]
988#[serde(rename = "EnumerationResults")]
989pub struct ListBlobsFlatSegmentResponse {
990 #[serde(rename = "@ContainerName", skip_serializing_if = "Option::is_none")]
992 pub container_name: Option<String>,
993
994 #[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
996 pub marker: Option<String>,
997
998 #[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
1000 pub max_results: Option<i32>,
1001
1002 #[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
1004 pub next_marker: Option<String>,
1005
1006 #[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
1008 pub prefix: Option<String>,
1009
1010 #[serde(default, rename = "Blobs")]
1012 pub segment: BlobFlatListSegment,
1013
1014 #[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
1016 pub service_endpoint: Option<String>,
1017}
1018
1019#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1021#[non_exhaustive]
1022#[serde(rename = "EnumerationResults")]
1023pub struct ListBlobsHierarchySegmentResponse {
1024 #[serde(rename = "@ContainerName", skip_serializing_if = "Option::is_none")]
1026 pub container_name: Option<String>,
1027
1028 #[serde(rename = "Delimiter", skip_serializing_if = "Option::is_none")]
1030 pub delimiter: Option<String>,
1031
1032 #[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
1034 pub marker: Option<String>,
1035
1036 #[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
1038 pub max_results: Option<i32>,
1039
1040 #[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
1042 pub next_marker: Option<String>,
1043
1044 #[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
1046 pub prefix: Option<String>,
1047
1048 #[serde(default, rename = "Blobs")]
1050 pub segment: BlobHierarchyListSegment,
1051
1052 #[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
1054 pub service_endpoint: Option<String>,
1055}
1056
1057#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1059#[non_exhaustive]
1060#[serde(rename = "EnumerationResults")]
1061pub struct ListContainersSegmentResponse {
1062 #[serde(
1064 default,
1065 deserialize_with = "Container_itemsContainer::unwrap",
1066 rename = "Containers",
1067 serialize_with = "Container_itemsContainer::wrap"
1068 )]
1069 pub container_items: Vec<ContainerItem>,
1070
1071 #[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
1073 pub marker: Option<String>,
1074
1075 #[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
1077 pub max_results: Option<i32>,
1078
1079 #[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
1081 pub next_marker: Option<String>,
1082
1083 #[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
1085 pub prefix: Option<String>,
1086
1087 #[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
1089 pub service_endpoint: Option<String>,
1090}
1091
1092#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1094pub struct Logging {
1095 #[serde(rename = "Delete", skip_serializing_if = "Option::is_none")]
1097 pub delete: Option<bool>,
1098
1099 #[serde(rename = "Read", skip_serializing_if = "Option::is_none")]
1101 pub read: Option<bool>,
1102
1103 #[serde(rename = "RetentionPolicy", skip_serializing_if = "Option::is_none")]
1105 pub retention_policy: Option<RetentionPolicy>,
1106
1107 #[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
1109 pub version: Option<String>,
1110
1111 #[serde(rename = "Write", skip_serializing_if = "Option::is_none")]
1113 pub write: Option<bool>,
1114}
1115
1116#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1118pub struct Metrics {
1119 #[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
1121 pub enabled: Option<bool>,
1122
1123 #[serde(rename = "IncludeAPIs", skip_serializing_if = "Option::is_none")]
1125 pub include_apis: Option<bool>,
1126
1127 #[serde(rename = "RetentionPolicy", skip_serializing_if = "Option::is_none")]
1129 pub retention_policy: Option<RetentionPolicy>,
1130
1131 #[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
1133 pub version: Option<String>,
1134}
1135
1136#[derive(Clone, Default, SafeDebug)]
1138#[non_exhaustive]
1139pub struct ObjectReplicationMetadata {
1140 pub additional_properties: Option<HashMap<String, String>>,
1142}
1143
1144#[derive(SafeDebug)]
1146pub struct PageBlobClientClearPagesResult;
1147
1148#[derive(SafeDebug)]
1150pub struct PageBlobClientCopyIncrementalResult;
1151
1152#[derive(SafeDebug)]
1154pub struct PageBlobClientCreateResult;
1155
1156#[derive(SafeDebug)]
1158pub struct PageBlobClientResizeResult;
1159
1160#[derive(SafeDebug)]
1162pub struct PageBlobClientSetSequenceNumberResult;
1163
1164#[derive(SafeDebug)]
1166pub struct PageBlobClientUploadPagesFromUrlResult;
1167
1168#[derive(SafeDebug)]
1170pub struct PageBlobClientUploadPagesResult;
1171
1172#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1174#[non_exhaustive]
1175pub struct PageList {
1176 #[serde(rename = "ClearRange", skip_serializing_if = "Option::is_none")]
1178 pub clear_range: Option<Vec<ClearRange>>,
1179
1180 #[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
1182 pub next_marker: Option<String>,
1183
1184 #[serde(rename = "PageRange", skip_serializing_if = "Option::is_none")]
1186 pub page_range: Option<Vec<PageRange>>,
1187}
1188
1189#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1191#[non_exhaustive]
1192pub struct PageRange {
1193 #[serde(rename = "End", skip_serializing_if = "Option::is_none")]
1195 pub end: Option<i64>,
1196
1197 #[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
1199 pub start: Option<i64>,
1200}
1201
1202#[derive(Clone, Default, SafeDebug)]
1204pub struct ParquetConfiguration {
1205 pub additional_properties: Option<HashMap<String, Value>>,
1207}
1208
1209#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1211pub struct QueryFormat {
1212 #[serde(rename = "ArrowConfiguration", skip_serializing_if = "Option::is_none")]
1214 pub arrow_configuration: Option<ArrowConfiguration>,
1215
1216 #[serde(
1218 rename = "DelimitedTextConfiguration",
1219 skip_serializing_if = "Option::is_none"
1220 )]
1221 pub delimited_text_configuration: Option<DelimitedTextConfiguration>,
1222
1223 #[serde(
1225 rename = "JsonTextConfiguration",
1226 skip_serializing_if = "Option::is_none"
1227 )]
1228 pub json_text_configuration: Option<JsonTextConfiguration>,
1229
1230 #[serde(
1232 rename = "ParquetConfiguration",
1233 skip_serializing_if = "Option::is_none"
1234 )]
1235 pub parquet_text_configuration: Option<ParquetConfiguration>,
1236
1237 #[serde(rename = "Type", skip_serializing_if = "Option::is_none")]
1239 pub type_prop: Option<QueryType>,
1240}
1241
1242#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1244pub struct QueryRequest {
1245 #[serde(rename = "Expression", skip_serializing_if = "Option::is_none")]
1247 pub expression: Option<String>,
1248
1249 #[serde(rename = "InputSerialization", skip_serializing_if = "Option::is_none")]
1251 pub input_serialization: Option<QuerySerialization>,
1252
1253 #[serde(
1255 rename = "OutputSerialization",
1256 skip_serializing_if = "Option::is_none"
1257 )]
1258 pub output_serialization: Option<QuerySerialization>,
1259
1260 #[serde(rename = "QueryType", skip_serializing_if = "Option::is_none")]
1262 pub query_type: Option<QueryRequestType>,
1263}
1264
1265#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1267pub struct QuerySerialization {
1268 #[serde(rename = "Format", skip_serializing_if = "Option::is_none")]
1270 pub format: Option<QueryFormat>,
1271}
1272
1273#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1275pub struct RetentionPolicy {
1276 #[serde(
1278 rename = "AllowPermanentDelete",
1279 skip_serializing_if = "Option::is_none"
1280 )]
1281 pub allow_permanent_delete: Option<bool>,
1282
1283 #[serde(rename = "Days", skip_serializing_if = "Option::is_none")]
1285 pub days: Option<i32>,
1286
1287 #[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
1289 pub enabled: Option<bool>,
1290}
1291
1292#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1294#[serde(rename = "SignedIdentifier")]
1295pub struct SignedIdentifier {
1296 #[serde(rename = "AccessPolicy", skip_serializing_if = "Option::is_none")]
1298 pub access_policy: Option<AccessPolicy>,
1299
1300 #[serde(rename = "Id", skip_serializing_if = "Option::is_none")]
1302 pub id: Option<String>,
1303}
1304
1305#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1307pub struct StaticWebsite {
1308 #[serde(
1310 rename = "DefaultIndexDocumentPath",
1311 skip_serializing_if = "Option::is_none"
1312 )]
1313 pub default_index_document_path: Option<String>,
1314
1315 #[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
1317 pub enabled: Option<bool>,
1318
1319 #[serde(
1321 rename = "ErrorDocument404Path",
1322 skip_serializing_if = "Option::is_none"
1323 )]
1324 pub error_document404_path: Option<String>,
1325
1326 #[serde(rename = "IndexDocument", skip_serializing_if = "Option::is_none")]
1328 pub index_document: Option<String>,
1329}
1330
1331#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1333#[non_exhaustive]
1334pub struct StorageServiceStats {
1335 #[serde(rename = "GeoReplication", skip_serializing_if = "Option::is_none")]
1337 pub geo_replication: Option<GeoReplication>,
1338}
1339
1340#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
1342#[non_exhaustive]
1343pub struct UserDelegationKey {
1344 #[serde(rename = "SignedExpiry", skip_serializing_if = "Option::is_none")]
1346 pub signed_expiry: Option<String>,
1347
1348 #[serde(rename = "SignedOid", skip_serializing_if = "Option::is_none")]
1350 pub signed_oid: Option<String>,
1351
1352 #[serde(rename = "SignedService", skip_serializing_if = "Option::is_none")]
1354 pub signed_service: Option<String>,
1355
1356 #[serde(rename = "SignedStart", skip_serializing_if = "Option::is_none")]
1358 pub signed_start: Option<String>,
1359
1360 #[serde(rename = "SignedTid", skip_serializing_if = "Option::is_none")]
1362 pub signed_tid: Option<String>,
1363
1364 #[serde(rename = "SignedVersion", skip_serializing_if = "Option::is_none")]
1366 pub signed_version: Option<String>,
1367
1368 #[serde(
1370 default,
1371 deserialize_with = "deserialize",
1372 rename = "Value",
1373 serialize_with = "serialize",
1374 skip_serializing_if = "Option::is_none"
1375 )]
1376 pub value: Option<Vec<u8>>,
1377}