// Code generated by azure-service-operator-codegen. DO NOT EDIT.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
package v1beta20210401

// Deprecated version of StorageAccounts_BlobServices_Container_STATUS. Use v1api20210401.StorageAccounts_BlobServices_Container_STATUS instead
type StorageAccounts_BlobServices_Container_STATUS_ARM struct {
	Etag       *string                         `json:"etag,omitempty"`
	Id         *string                         `json:"id,omitempty"`
	Name       *string                         `json:"name,omitempty"`
	Properties *ContainerProperties_STATUS_ARM `json:"properties,omitempty"`
	Type       *string                         `json:"type,omitempty"`
}

// Deprecated version of ContainerProperties_STATUS. Use v1api20210401.ContainerProperties_STATUS instead
type ContainerProperties_STATUS_ARM struct {
	DefaultEncryptionScope         *string                                    `json:"defaultEncryptionScope,omitempty"`
	Deleted                        *bool                                      `json:"deleted,omitempty"`
	DeletedTime                    *string                                    `json:"deletedTime,omitempty"`
	DenyEncryptionScopeOverride    *bool                                      `json:"denyEncryptionScopeOverride,omitempty"`
	HasImmutabilityPolicy          *bool                                      `json:"hasImmutabilityPolicy,omitempty"`
	HasLegalHold                   *bool                                      `json:"hasLegalHold,omitempty"`
	ImmutabilityPolicy             *ImmutabilityPolicyProperties_STATUS_ARM   `json:"immutabilityPolicy,omitempty"`
	ImmutableStorageWithVersioning *ImmutableStorageWithVersioning_STATUS_ARM `json:"immutableStorageWithVersioning,omitempty"`
	LastModifiedTime               *string                                    `json:"lastModifiedTime,omitempty"`
	LeaseDuration                  *ContainerProperties_LeaseDuration_STATUS  `json:"leaseDuration,omitempty"`
	LeaseState                     *ContainerProperties_LeaseState_STATUS     `json:"leaseState,omitempty"`
	LeaseStatus                    *ContainerProperties_LeaseStatus_STATUS    `json:"leaseStatus,omitempty"`
	LegalHold                      *LegalHoldProperties_STATUS_ARM            `json:"legalHold,omitempty"`
	Metadata                       map[string]string                          `json:"metadata"`
	PublicAccess                   *ContainerProperties_PublicAccess_STATUS   `json:"publicAccess,omitempty"`
	RemainingRetentionDays         *int                                       `json:"remainingRetentionDays,omitempty"`
	Version                        *string                                    `json:"version,omitempty"`
}

// Deprecated version of ImmutabilityPolicyProperties_STATUS. Use v1api20210401.ImmutabilityPolicyProperties_STATUS instead
type ImmutabilityPolicyProperties_STATUS_ARM struct {
	Etag          *string                                `json:"etag,omitempty"`
	Properties    *ImmutabilityPolicyProperty_STATUS_ARM `json:"properties,omitempty"`
	UpdateHistory []UpdateHistoryProperty_STATUS_ARM     `json:"updateHistory"`
}

// Deprecated version of ImmutableStorageWithVersioning_STATUS. Use v1api20210401.ImmutableStorageWithVersioning_STATUS instead
type ImmutableStorageWithVersioning_STATUS_ARM struct {
	Enabled        *bool                                                 `json:"enabled,omitempty"`
	MigrationState *ImmutableStorageWithVersioning_MigrationState_STATUS `json:"migrationState,omitempty"`
	TimeStamp      *string                                               `json:"timeStamp,omitempty"`
}

// Deprecated version of LegalHoldProperties_STATUS. Use v1api20210401.LegalHoldProperties_STATUS instead
type LegalHoldProperties_STATUS_ARM struct {
	HasLegalHold *bool                    `json:"hasLegalHold,omitempty"`
	Tags         []TagProperty_STATUS_ARM `json:"tags"`
}

// Deprecated version of ImmutabilityPolicyProperty_STATUS. Use v1api20210401.ImmutabilityPolicyProperty_STATUS instead
type ImmutabilityPolicyProperty_STATUS_ARM struct {
	AllowProtectedAppendWrites            *bool                                    `json:"allowProtectedAppendWrites,omitempty"`
	ImmutabilityPeriodSinceCreationInDays *int                                     `json:"immutabilityPeriodSinceCreationInDays,omitempty"`
	State                                 *ImmutabilityPolicyProperty_State_STATUS `json:"state,omitempty"`
}

// Deprecated version of TagProperty_STATUS. Use v1api20210401.TagProperty_STATUS instead
type TagProperty_STATUS_ARM struct {
	ObjectIdentifier *string `json:"objectIdentifier,omitempty"`
	Tag              *string `json:"tag,omitempty"`
	TenantId         *string `json:"tenantId,omitempty"`
	Timestamp        *string `json:"timestamp,omitempty"`
	Upn              *string `json:"upn,omitempty"`
}

// Deprecated version of UpdateHistoryProperty_STATUS. Use v1api20210401.UpdateHistoryProperty_STATUS instead
type UpdateHistoryProperty_STATUS_ARM struct {
	ImmutabilityPeriodSinceCreationInDays *int                                 `json:"immutabilityPeriodSinceCreationInDays,omitempty"`
	ObjectIdentifier                      *string                              `json:"objectIdentifier,omitempty"`
	TenantId                              *string                              `json:"tenantId,omitempty"`
	Timestamp                             *string                              `json:"timestamp,omitempty"`
	Update                                *UpdateHistoryProperty_Update_STATUS `json:"update,omitempty"`
	Upn                                   *string                              `json:"upn,omitempty"`
}
