use super::{
models_serde,
xml_helpers::{
Blob_tag_setTag, BlobsBlob, Committed_blocksBlock, Container_itemsContainer, CorsCorsRule,
SchemaField, Uncommitted_blocksBlock,
},
AccessTier, ArchiveStatus, BlobType, CopyStatus, GeoReplicationStatusType,
ImmutabilityPolicyMode, LeaseDuration, LeaseState, LeaseStatus, PublicAccessType,
QueryRequestType, QueryType, RehydratePriority,
};
use azure_core::{
base64::option::{deserialize, serialize},
fmt::SafeDebug,
time::OffsetDateTime,
Value,
};
use serde::{Deserialize, Serialize};
use std::collections::HashMap;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct AccessPolicy {
#[serde(
default,
rename = "Expiry",
skip_serializing_if = "Option::is_none",
with = "models_serde::option_offset_date_time_rfc3339_fixed_width"
)]
pub expiry: Option<OffsetDateTime>,
#[serde(rename = "Permission", skip_serializing_if = "Option::is_none")]
pub permission: Option<String>,
#[serde(
default,
rename = "Start",
skip_serializing_if = "Option::is_none",
with = "models_serde::option_offset_date_time_rfc3339_fixed_width"
)]
pub start: Option<OffsetDateTime>,
}
#[derive(SafeDebug)]
pub struct AppendBlobClientAppendBlockFromUrlResult;
#[derive(SafeDebug)]
pub struct AppendBlobClientAppendBlockResult;
#[derive(SafeDebug)]
pub struct AppendBlobClientCreateResult;
#[derive(SafeDebug)]
pub struct AppendBlobClientSealResult;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct ArrowConfiguration {
#[serde(
default,
deserialize_with = "SchemaField::unwrap",
rename = "Schema",
serialize_with = "SchemaField::wrap",
skip_serializing_if = "Option::is_none"
)]
pub schema: Option<Vec<ArrowField>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "Field")]
pub struct ArrowField {
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Precision", skip_serializing_if = "Option::is_none")]
pub precision: Option<i32>,
#[serde(rename = "Scale", skip_serializing_if = "Option::is_none")]
pub scale: Option<i32>,
#[serde(rename = "Type", skip_serializing_if = "Option::is_none")]
pub type_prop: Option<String>,
}
#[derive(SafeDebug)]
pub struct BlobClientAcquireLeaseResult;
#[derive(SafeDebug)]
pub struct BlobClientBreakLeaseResult;
#[derive(SafeDebug)]
pub struct BlobClientChangeLeaseResult;
#[derive(SafeDebug)]
pub struct BlobClientCopyFromUrlResult;
#[derive(SafeDebug)]
pub struct BlobClientCreateSnapshotResult;
#[derive(SafeDebug)]
pub struct BlobClientDownloadResult;
#[derive(SafeDebug)]
pub struct BlobClientGetAccountInfoResult;
#[derive(SafeDebug)]
pub struct BlobClientGetPropertiesResult;
#[derive(SafeDebug)]
pub struct BlobClientReleaseLeaseResult;
#[derive(SafeDebug)]
pub struct BlobClientRenewLeaseResult;
#[derive(SafeDebug)]
pub struct BlobClientSetExpiryResult;
#[derive(SafeDebug)]
pub struct BlobClientStartCopyFromUrlResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientAcquireLeaseResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientBreakLeaseResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientChangeLeaseResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientGetAccountInfoResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientGetPropertiesResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientReleaseLeaseResult;
#[derive(SafeDebug)]
pub struct BlobContainerClientRenewLeaseResult;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct BlobFlatListSegment {
#[serde(default, rename = "Blob")]
pub blob_items: Vec<BlobItemInternal>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct BlobHierarchyListSegment {
#[serde(default, rename = "Blob")]
pub blob_items: Vec<BlobItemInternal>,
#[serde(rename = "BlobPrefix", skip_serializing_if = "Option::is_none")]
pub blob_prefixes: Option<Vec<BlobPrefix>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "Blob")]
pub struct BlobItemInternal {
#[serde(rename = "BlobTags", skip_serializing_if = "Option::is_none")]
pub blob_tags: Option<BlobTags>,
#[serde(rename = "Deleted", skip_serializing_if = "Option::is_none")]
pub deleted: Option<bool>,
#[serde(rename = "HasVersionsOnly", skip_serializing_if = "Option::is_none")]
pub has_versions_only: Option<bool>,
#[serde(rename = "IsCurrentVersion", skip_serializing_if = "Option::is_none")]
pub is_current_version: Option<bool>,
#[serde(rename = "Metadata", skip_serializing_if = "Option::is_none")]
pub metadata: Option<BlobMetadata>,
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<BlobName>,
#[serde(rename = "OrMetadata", skip_serializing_if = "Option::is_none")]
pub object_replication_metadata: Option<ObjectReplicationMetadata>,
#[serde(rename = "Properties", skip_serializing_if = "Option::is_none")]
pub properties: Option<BlobPropertiesInternal>,
#[serde(rename = "Snapshot", skip_serializing_if = "Option::is_none")]
pub snapshot: Option<String>,
#[serde(rename = "VersionId", skip_serializing_if = "Option::is_none")]
pub version_id: Option<String>,
}
#[derive(Clone, Default, SafeDebug)]
#[non_exhaustive]
pub struct BlobMetadata {
pub additional_properties: Option<HashMap<String, String>>,
pub encrypted: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct BlobName {
#[serde(rename = "$text", skip_serializing_if = "Option::is_none")]
pub content: Option<String>,
#[serde(rename = "@Encoded", skip_serializing_if = "Option::is_none")]
pub encoded: Option<bool>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct BlobPrefix {
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<BlobName>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "Properties")]
pub struct BlobPropertiesInternal {
#[serde(rename = "AccessTier", skip_serializing_if = "Option::is_none")]
pub access_tier: Option<AccessTier>,
#[serde(
default,
rename = "AccessTierChangeTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub access_tier_change_time: Option<OffsetDateTime>,
#[serde(rename = "AccessTierInferred", skip_serializing_if = "Option::is_none")]
pub access_tier_inferred: Option<bool>,
#[serde(rename = "ArchiveStatus", skip_serializing_if = "Option::is_none")]
pub archive_status: Option<ArchiveStatus>,
#[serde(
rename = "x-ms-blob-sequence-number",
skip_serializing_if = "Option::is_none"
)]
pub blob_sequence_number: Option<i64>,
#[serde(rename = "BlobType", skip_serializing_if = "Option::is_none")]
pub blob_type: Option<BlobType>,
#[serde(rename = "Cache-Control", skip_serializing_if = "Option::is_none")]
pub cache_control: Option<String>,
#[serde(
rename = "Content-Disposition",
skip_serializing_if = "Option::is_none"
)]
pub content_disposition: Option<String>,
#[serde(rename = "Content-Encoding", skip_serializing_if = "Option::is_none")]
pub content_encoding: Option<String>,
#[serde(rename = "Content-Language", skip_serializing_if = "Option::is_none")]
pub content_language: Option<String>,
#[serde(rename = "Content-Length", skip_serializing_if = "Option::is_none")]
pub content_length: Option<u64>,
#[serde(
default,
deserialize_with = "deserialize",
rename = "Content-MD5",
serialize_with = "serialize",
skip_serializing_if = "Option::is_none"
)]
pub content_md5: Option<Vec<u8>>,
#[serde(rename = "Content-Type", skip_serializing_if = "Option::is_none")]
pub content_type: Option<String>,
#[serde(
default,
rename = "CopyCompletionTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub copy_completion_time: Option<OffsetDateTime>,
#[serde(rename = "CopyId", skip_serializing_if = "Option::is_none")]
pub copy_id: Option<String>,
#[serde(rename = "CopyProgress", skip_serializing_if = "Option::is_none")]
pub copy_progress: Option<String>,
#[serde(rename = "CopySource", skip_serializing_if = "Option::is_none")]
pub copy_source: Option<String>,
#[serde(rename = "CopyStatus", skip_serializing_if = "Option::is_none")]
pub copy_status: Option<CopyStatus>,
#[serde(
rename = "CopyStatusDescription",
skip_serializing_if = "Option::is_none"
)]
pub copy_status_description: Option<String>,
#[serde(
default,
rename = "Creation-Time",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub creation_time: Option<OffsetDateTime>,
#[serde(
rename = "CustomerProvidedKeySha256",
skip_serializing_if = "Option::is_none"
)]
pub customer_provided_key_sha256: Option<String>,
#[serde(
default,
rename = "DeletedTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub deleted_time: Option<OffsetDateTime>,
#[serde(
rename = "DestinationSnapshot",
skip_serializing_if = "Option::is_none"
)]
pub destination_snapshot: Option<String>,
#[serde(rename = "EncryptionScope", skip_serializing_if = "Option::is_none")]
pub encryption_scope: Option<String>,
#[serde(rename = "Etag", skip_serializing_if = "Option::is_none")]
pub etag: Option<String>,
#[serde(
default,
rename = "Expiry-Time",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub expires_on: Option<OffsetDateTime>,
#[serde(
default,
rename = "ImmutabilityPolicyUntilDate",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub immutability_policy_expires_on: Option<OffsetDateTime>,
#[serde(
rename = "ImmutabilityPolicyMode",
skip_serializing_if = "Option::is_none"
)]
pub immutability_policy_mode: Option<ImmutabilityPolicyMode>,
#[serde(rename = "IncrementalCopy", skip_serializing_if = "Option::is_none")]
pub incremental_copy: Option<bool>,
#[serde(rename = "Sealed", skip_serializing_if = "Option::is_none")]
pub is_sealed: Option<bool>,
#[serde(
default,
rename = "LastAccessTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub last_accessed_on: Option<OffsetDateTime>,
#[serde(
default,
rename = "Last-Modified",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub last_modified: Option<OffsetDateTime>,
#[serde(rename = "LeaseDuration", skip_serializing_if = "Option::is_none")]
pub lease_duration: Option<LeaseDuration>,
#[serde(rename = "LeaseState", skip_serializing_if = "Option::is_none")]
pub lease_state: Option<LeaseState>,
#[serde(rename = "LeaseStatus", skip_serializing_if = "Option::is_none")]
pub lease_status: Option<LeaseStatus>,
#[serde(rename = "LegalHold", skip_serializing_if = "Option::is_none")]
pub legal_hold: Option<bool>,
#[serde(rename = "RehydratePriority", skip_serializing_if = "Option::is_none")]
pub rehydrate_priority: Option<RehydratePriority>,
#[serde(
rename = "RemainingRetentionDays",
skip_serializing_if = "Option::is_none"
)]
pub remaining_retention_days: Option<i32>,
#[serde(rename = "ServerEncrypted", skip_serializing_if = "Option::is_none")]
pub server_encrypted: Option<bool>,
#[serde(rename = "TagCount", skip_serializing_if = "Option::is_none")]
pub tag_count: Option<i32>,
}
#[derive(SafeDebug)]
pub struct BlobServiceClientGetAccountInfoResult;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "StorageServiceProperties")]
pub struct BlobServiceProperties {
#[serde(
default,
deserialize_with = "CorsCorsRule::unwrap",
rename = "Cors",
serialize_with = "CorsCorsRule::wrap",
skip_serializing_if = "Option::is_none"
)]
pub cors: Option<Vec<CorsRule>>,
#[serde(
rename = "DefaultServiceVersion",
skip_serializing_if = "Option::is_none"
)]
pub default_service_version: Option<String>,
#[serde(
rename = "DeleteRetentionPolicy",
skip_serializing_if = "Option::is_none"
)]
pub delete_retention_policy: Option<RetentionPolicy>,
#[serde(rename = "HourMetrics", skip_serializing_if = "Option::is_none")]
pub hour_metrics: Option<Metrics>,
#[serde(rename = "Logging", skip_serializing_if = "Option::is_none")]
pub logging: Option<Logging>,
#[serde(rename = "MinuteMetrics", skip_serializing_if = "Option::is_none")]
pub minute_metrics: Option<Metrics>,
#[serde(rename = "StaticWebsite", skip_serializing_if = "Option::is_none")]
pub static_website: Option<StaticWebsite>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "Tag")]
pub struct BlobTag {
#[serde(rename = "Key", skip_serializing_if = "Option::is_none")]
pub key: Option<String>,
#[serde(rename = "Value", skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "Tags")]
pub struct BlobTags {
#[serde(
default,
deserialize_with = "Blob_tag_setTag::unwrap",
rename = "TagSet",
serialize_with = "Blob_tag_setTag::wrap",
skip_serializing_if = "Option::is_none"
)]
pub blob_tag_set: Option<Vec<BlobTag>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct Block {
#[serde(
default,
deserialize_with = "deserialize",
rename = "Name",
serialize_with = "serialize",
skip_serializing_if = "Option::is_none"
)]
pub name: Option<Vec<u8>>,
#[serde(rename = "Size", skip_serializing_if = "Option::is_none")]
pub size: Option<i64>,
}
#[derive(SafeDebug)]
pub struct BlockBlobClientCommitBlockListResult;
#[derive(SafeDebug)]
pub struct BlockBlobClientQueryResult;
#[derive(SafeDebug)]
pub struct BlockBlobClientStageBlockFromUrlResult;
#[derive(SafeDebug)]
pub struct BlockBlobClientStageBlockResult;
#[derive(SafeDebug)]
pub struct BlockBlobClientUploadBlobFromUrlResult;
#[derive(SafeDebug)]
pub struct BlockBlobClientUploadResult;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct BlockList {
#[serde(
default,
deserialize_with = "Committed_blocksBlock::unwrap",
rename = "CommittedBlocks",
serialize_with = "Committed_blocksBlock::wrap",
skip_serializing_if = "Option::is_none"
)]
pub committed_blocks: Option<Vec<Block>>,
#[serde(
default,
deserialize_with = "Uncommitted_blocksBlock::unwrap",
rename = "UncommittedBlocks",
serialize_with = "Uncommitted_blocksBlock::wrap",
skip_serializing_if = "Option::is_none"
)]
pub uncommitted_blocks: Option<Vec<Block>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "BlockList")]
pub struct BlockLookupList {
#[serde(
default,
rename = "Committed",
skip_serializing_if = "Option::is_none",
with = "models_serde::option_vec_encoded_bytes_std"
)]
pub committed: Option<Vec<Vec<u8>>>,
#[serde(
default,
rename = "Latest",
skip_serializing_if = "Option::is_none",
with = "models_serde::option_vec_encoded_bytes_std"
)]
pub latest: Option<Vec<Vec<u8>>>,
#[serde(
default,
rename = "Uncommitted",
skip_serializing_if = "Option::is_none",
with = "models_serde::option_vec_encoded_bytes_std"
)]
pub uncommitted: Option<Vec<Vec<u8>>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct ClearRange {
#[serde(rename = "End", skip_serializing_if = "Option::is_none")]
pub end: Option<i64>,
#[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
pub start: Option<i64>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "Container")]
pub struct ContainerItem {
#[serde(rename = "Deleted", skip_serializing_if = "Option::is_none")]
pub delete: Option<bool>,
#[serde(rename = "Metadata", skip_serializing_if = "Option::is_none")]
pub metadata: Option<HashMap<String, String>>,
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Properties", skip_serializing_if = "Option::is_none")]
pub properties: Option<ContainerProperties>,
#[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct ContainerProperties {
#[serde(
rename = "DefaultEncryptionScope",
skip_serializing_if = "Option::is_none"
)]
pub default_encryption_scope: Option<String>,
#[serde(
default,
rename = "DeletedTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub deleted_time: Option<OffsetDateTime>,
#[serde(rename = "ETag", skip_serializing_if = "Option::is_none")]
pub etag: Option<String>,
#[serde(
rename = "HasImmutabilityPolicy",
skip_serializing_if = "Option::is_none"
)]
pub has_immutability_policy: Option<bool>,
#[serde(rename = "HasLegalHold", skip_serializing_if = "Option::is_none")]
pub has_legal_hold: Option<bool>,
#[serde(
rename = "ImmutableStorageWithVersioningEnabled",
skip_serializing_if = "Option::is_none"
)]
pub is_immutable_storage_with_versioning_enabled: Option<bool>,
#[serde(
default,
rename = "Last-Modified",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub last_modified: Option<OffsetDateTime>,
#[serde(rename = "LeaseDuration", skip_serializing_if = "Option::is_none")]
pub lease_duration: Option<LeaseDuration>,
#[serde(rename = "LeaseState", skip_serializing_if = "Option::is_none")]
pub lease_state: Option<LeaseState>,
#[serde(rename = "LeaseStatus", skip_serializing_if = "Option::is_none")]
pub lease_status: Option<LeaseStatus>,
#[serde(
rename = "DenyEncryptionScopeOverride",
skip_serializing_if = "Option::is_none"
)]
pub prevent_encryption_scope_override: Option<bool>,
#[serde(rename = "PublicAccess", skip_serializing_if = "Option::is_none")]
pub public_access: Option<PublicAccessType>,
#[serde(
rename = "RemainingRetentionDays",
skip_serializing_if = "Option::is_none"
)]
pub remaining_retention_days: Option<i32>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct CorsRule {
#[serde(rename = "AllowedHeaders", skip_serializing_if = "Option::is_none")]
pub allowed_headers: Option<String>,
#[serde(rename = "AllowedMethods", skip_serializing_if = "Option::is_none")]
pub allowed_methods: Option<String>,
#[serde(rename = "AllowedOrigins", skip_serializing_if = "Option::is_none")]
pub allowed_origins: Option<String>,
#[serde(rename = "ExposedHeaders", skip_serializing_if = "Option::is_none")]
pub exposed_headers: Option<String>,
#[serde(rename = "MaxAgeInSeconds", skip_serializing_if = "Option::is_none")]
pub max_age_in_seconds: Option<i32>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct DelimitedTextConfiguration {
#[serde(rename = "ColumnSeparator", skip_serializing_if = "Option::is_none")]
pub column_separator: Option<String>,
#[serde(rename = "EscapeChar", skip_serializing_if = "Option::is_none")]
pub escape_char: Option<String>,
#[serde(rename = "FieldQuote", skip_serializing_if = "Option::is_none")]
pub field_quote: Option<String>,
#[serde(rename = "HasHeaders", skip_serializing_if = "Option::is_none")]
pub headers_present: Option<bool>,
#[serde(rename = "RecordSeparator", skip_serializing_if = "Option::is_none")]
pub record_separator: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "Blob")]
pub struct FilterBlobItem {
#[serde(rename = "ContainerName", skip_serializing_if = "Option::is_none")]
pub container_name: Option<String>,
#[serde(rename = "IsCurrentVersion", skip_serializing_if = "Option::is_none")]
pub is_current_version: Option<bool>,
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub tags: Option<BlobTags>,
#[serde(rename = "VersionId", skip_serializing_if = "Option::is_none")]
pub version_id: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "EnumerationResults")]
pub struct FilterBlobSegment {
#[serde(
default,
deserialize_with = "BlobsBlob::unwrap",
rename = "Blobs",
serialize_with = "BlobsBlob::wrap",
skip_serializing_if = "Option::is_none"
)]
pub blobs: Option<Vec<FilterBlobItem>>,
#[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
pub service_endpoint: Option<String>,
#[serde(rename = "Where", skip_serializing_if = "Option::is_none")]
pub where_prop: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct GeoReplication {
#[serde(
default,
rename = "LastSyncTime",
skip_serializing_if = "Option::is_none",
with = "azure_core::time::rfc7231::option"
)]
pub last_sync_time: Option<OffsetDateTime>,
#[serde(rename = "Status", skip_serializing_if = "Option::is_none")]
pub status: Option<GeoReplicationStatusType>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct JsonTextConfiguration {
#[serde(rename = "RecordSeparator", skip_serializing_if = "Option::is_none")]
pub record_separator: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct KeyInfo {
#[serde(rename = "Expiry", skip_serializing_if = "Option::is_none")]
pub expiry: Option<String>,
#[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
pub start: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "EnumerationResults")]
pub struct ListBlobsFlatSegmentResponse {
#[serde(rename = "@ContainerName", skip_serializing_if = "Option::is_none")]
pub container_name: Option<String>,
#[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
#[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
pub max_results: Option<i32>,
#[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, rename = "Blobs")]
pub segment: BlobFlatListSegment,
#[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
pub service_endpoint: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "EnumerationResults")]
pub struct ListBlobsHierarchySegmentResponse {
#[serde(rename = "@ContainerName", skip_serializing_if = "Option::is_none")]
pub container_name: Option<String>,
#[serde(rename = "Delimiter", skip_serializing_if = "Option::is_none")]
pub delimiter: Option<String>,
#[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
#[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
pub max_results: Option<i32>,
#[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, rename = "Blobs")]
pub segment: BlobHierarchyListSegment,
#[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
pub service_endpoint: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
#[serde(rename = "EnumerationResults")]
pub struct ListContainersSegmentResponse {
#[serde(
default,
deserialize_with = "Container_itemsContainer::unwrap",
rename = "Containers",
serialize_with = "Container_itemsContainer::wrap"
)]
pub container_items: Vec<ContainerItem>,
#[serde(rename = "Marker", skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
#[serde(rename = "MaxResults", skip_serializing_if = "Option::is_none")]
pub max_results: Option<i32>,
#[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(rename = "Prefix", skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(rename = "@ServiceEndpoint", skip_serializing_if = "Option::is_none")]
pub service_endpoint: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct Logging {
#[serde(rename = "Delete", skip_serializing_if = "Option::is_none")]
pub delete: Option<bool>,
#[serde(rename = "Read", skip_serializing_if = "Option::is_none")]
pub read: Option<bool>,
#[serde(rename = "RetentionPolicy", skip_serializing_if = "Option::is_none")]
pub retention_policy: Option<RetentionPolicy>,
#[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
#[serde(rename = "Write", skip_serializing_if = "Option::is_none")]
pub write: Option<bool>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct Metrics {
#[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(rename = "IncludeAPIs", skip_serializing_if = "Option::is_none")]
pub include_apis: Option<bool>,
#[serde(rename = "RetentionPolicy", skip_serializing_if = "Option::is_none")]
pub retention_policy: Option<RetentionPolicy>,
#[serde(rename = "Version", skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}
#[derive(Clone, Default, SafeDebug)]
#[non_exhaustive]
pub struct ObjectReplicationMetadata {
pub additional_properties: Option<HashMap<String, String>>,
}
#[derive(SafeDebug)]
pub struct PageBlobClientClearPagesResult;
#[derive(SafeDebug)]
pub struct PageBlobClientCopyIncrementalResult;
#[derive(SafeDebug)]
pub struct PageBlobClientCreateResult;
#[derive(SafeDebug)]
pub struct PageBlobClientResizeResult;
#[derive(SafeDebug)]
pub struct PageBlobClientSetSequenceNumberResult;
#[derive(SafeDebug)]
pub struct PageBlobClientUploadPagesFromUrlResult;
#[derive(SafeDebug)]
pub struct PageBlobClientUploadPagesResult;
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct PageList {
#[serde(rename = "ClearRange", skip_serializing_if = "Option::is_none")]
pub clear_range: Option<Vec<ClearRange>>,
#[serde(rename = "NextMarker", skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(rename = "PageRange", skip_serializing_if = "Option::is_none")]
pub page_range: Option<Vec<PageRange>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct PageRange {
#[serde(rename = "End", skip_serializing_if = "Option::is_none")]
pub end: Option<i64>,
#[serde(rename = "Start", skip_serializing_if = "Option::is_none")]
pub start: Option<i64>,
}
#[derive(Clone, Default, SafeDebug)]
pub struct ParquetConfiguration {
pub additional_properties: Option<HashMap<String, Value>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct QueryFormat {
#[serde(rename = "ArrowConfiguration", skip_serializing_if = "Option::is_none")]
pub arrow_configuration: Option<ArrowConfiguration>,
#[serde(
rename = "DelimitedTextConfiguration",
skip_serializing_if = "Option::is_none"
)]
pub delimited_text_configuration: Option<DelimitedTextConfiguration>,
#[serde(
rename = "JsonTextConfiguration",
skip_serializing_if = "Option::is_none"
)]
pub json_text_configuration: Option<JsonTextConfiguration>,
#[serde(
rename = "ParquetConfiguration",
skip_serializing_if = "Option::is_none"
)]
pub parquet_text_configuration: Option<ParquetConfiguration>,
#[serde(rename = "Type", skip_serializing_if = "Option::is_none")]
pub type_prop: Option<QueryType>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct QueryRequest {
#[serde(rename = "Expression", skip_serializing_if = "Option::is_none")]
pub expression: Option<String>,
#[serde(rename = "InputSerialization", skip_serializing_if = "Option::is_none")]
pub input_serialization: Option<QuerySerialization>,
#[serde(
rename = "OutputSerialization",
skip_serializing_if = "Option::is_none"
)]
pub output_serialization: Option<QuerySerialization>,
#[serde(rename = "QueryType", skip_serializing_if = "Option::is_none")]
pub query_type: Option<QueryRequestType>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct QuerySerialization {
#[serde(rename = "Format", skip_serializing_if = "Option::is_none")]
pub format: Option<QueryFormat>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct RetentionPolicy {
#[serde(
rename = "AllowPermanentDelete",
skip_serializing_if = "Option::is_none"
)]
pub allow_permanent_delete: Option<bool>,
#[serde(rename = "Days", skip_serializing_if = "Option::is_none")]
pub days: Option<i32>,
#[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[serde(rename = "SignedIdentifier")]
pub struct SignedIdentifier {
#[serde(rename = "AccessPolicy", skip_serializing_if = "Option::is_none")]
pub access_policy: Option<AccessPolicy>,
#[serde(rename = "Id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct SignedIdentifiers {
#[serde(rename = "SignedIdentifier", skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<SignedIdentifier>>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
pub struct StaticWebsite {
#[serde(
rename = "DefaultIndexDocumentPath",
skip_serializing_if = "Option::is_none"
)]
pub default_index_document_path: Option<String>,
#[serde(rename = "Enabled", skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(
rename = "ErrorDocument404Path",
skip_serializing_if = "Option::is_none"
)]
pub error_document404_path: Option<String>,
#[serde(rename = "IndexDocument", skip_serializing_if = "Option::is_none")]
pub index_document: Option<String>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct StorageServiceStats {
#[serde(rename = "GeoReplication", skip_serializing_if = "Option::is_none")]
pub geo_replication: Option<GeoReplication>,
}
#[derive(Clone, Default, Deserialize, SafeDebug, Serialize)]
#[non_exhaustive]
pub struct UserDelegationKey {
#[serde(rename = "SignedExpiry", skip_serializing_if = "Option::is_none")]
pub signed_expiry: Option<String>,
#[serde(rename = "SignedOid", skip_serializing_if = "Option::is_none")]
pub signed_oid: Option<String>,
#[serde(rename = "SignedService", skip_serializing_if = "Option::is_none")]
pub signed_service: Option<String>,
#[serde(rename = "SignedStart", skip_serializing_if = "Option::is_none")]
pub signed_start: Option<String>,
#[serde(rename = "SignedTid", skip_serializing_if = "Option::is_none")]
pub signed_tid: Option<String>,
#[serde(rename = "SignedVersion", skip_serializing_if = "Option::is_none")]
pub signed_version: Option<String>,
#[serde(
default,
deserialize_with = "deserialize",
rename = "Value",
serialize_with = "serialize",
skip_serializing_if = "Option::is_none"
)]
pub value: Option<Vec<u8>>,
}