// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT.

package armfileshares

const (
	version20260601 string = "2026-06-01"
)

// ActionType - Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
type ActionType string

const (
	// ActionTypeInternal - Actions are for internal-only APIs.
	ActionTypeInternal ActionType = "Internal"
)

// PossibleActionTypeValues returns the possible values for the ActionType const type.
func PossibleActionTypeValues() []ActionType {
	return []ActionType{
		ActionTypeInternal,
	}
}

// CheckNameAvailabilityReason - Possible reasons for a name not being available.
type CheckNameAvailabilityReason string

const (
	// CheckNameAvailabilityReasonAlreadyExists - Name already exists.
	CheckNameAvailabilityReasonAlreadyExists CheckNameAvailabilityReason = "AlreadyExists"
	// CheckNameAvailabilityReasonInvalid - Name is invalid.
	CheckNameAvailabilityReasonInvalid CheckNameAvailabilityReason = "Invalid"
)

// PossibleCheckNameAvailabilityReasonValues returns the possible values for the CheckNameAvailabilityReason const type.
func PossibleCheckNameAvailabilityReasonValues() []CheckNameAvailabilityReason {
	return []CheckNameAvailabilityReason{
		CheckNameAvailabilityReasonAlreadyExists,
		CheckNameAvailabilityReasonInvalid,
	}
}

// CreatedByType - The kind of entity that created the resource.
type CreatedByType string

const (
	// CreatedByTypeApplication - The entity was created by an application.
	CreatedByTypeApplication CreatedByType = "Application"
	// CreatedByTypeKey - The entity was created by a key.
	CreatedByTypeKey CreatedByType = "Key"
	// CreatedByTypeManagedIdentity - The entity was created by a managed identity.
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	// CreatedByTypeUser - The entity was created by a user.
	CreatedByTypeUser CreatedByType = "User"
)

// PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.
func PossibleCreatedByTypeValues() []CreatedByType {
	return []CreatedByType{
		CreatedByTypeApplication,
		CreatedByTypeKey,
		CreatedByTypeManagedIdentity,
		CreatedByTypeUser,
	}
}

// EncryptionInTransitRequired - State of NFS encryption in transit.
type EncryptionInTransitRequired string

const (
	// EncryptionInTransitRequiredDisabled - Encryption in Transit is disabled.
	EncryptionInTransitRequiredDisabled EncryptionInTransitRequired = "Disabled"
	// EncryptionInTransitRequiredEnabled - Encryption in Transit is enabled.
	EncryptionInTransitRequiredEnabled EncryptionInTransitRequired = "Enabled"
)

// PossibleEncryptionInTransitRequiredValues returns the possible values for the EncryptionInTransitRequired const type.
func PossibleEncryptionInTransitRequiredValues() []EncryptionInTransitRequired {
	return []EncryptionInTransitRequired{
		EncryptionInTransitRequiredDisabled,
		EncryptionInTransitRequiredEnabled,
	}
}

// FileShareProvisioningState - The status of file share's ProvisioningState.
type FileShareProvisioningState string

const (
	// FileShareProvisioningStateAccepted - The operation is accepted.
	FileShareProvisioningStateAccepted FileShareProvisioningState = "Accepted"
	// FileShareProvisioningStateCanceled - Resource creation was canceled.
	FileShareProvisioningStateCanceled FileShareProvisioningState = "Canceled"
	// FileShareProvisioningStateCreated - The resource has been created.
	FileShareProvisioningStateCreated FileShareProvisioningState = "Created"
	// FileShareProvisioningStateCreating - The resource is being created.
	FileShareProvisioningStateCreating FileShareProvisioningState = "Creating"
	// FileShareProvisioningStateDeleting - The operation is deleting.
	FileShareProvisioningStateDeleting FileShareProvisioningState = "Deleting"
	// FileShareProvisioningStateFailed - Resource creation failed.
	FileShareProvisioningStateFailed FileShareProvisioningState = "Failed"
	// FileShareProvisioningStatePatching - The resource is being patched.
	FileShareProvisioningStatePatching FileShareProvisioningState = "Patching"
	// FileShareProvisioningStatePosting - The resource is being posted.
	FileShareProvisioningStatePosting FileShareProvisioningState = "Posting"
	// FileShareProvisioningStateProvisioning - The operation is provisioning.
	FileShareProvisioningStateProvisioning FileShareProvisioningState = "Provisioning"
	// FileShareProvisioningStateSucceeded - Resource has been created.
	FileShareProvisioningStateSucceeded FileShareProvisioningState = "Succeeded"
	// FileShareProvisioningStateTransientFailure - The operation is in a transient failure state.
	FileShareProvisioningStateTransientFailure FileShareProvisioningState = "TransientFailure"
	// FileShareProvisioningStateUpdating - The operation is updating.
	FileShareProvisioningStateUpdating FileShareProvisioningState = "Updating"
)

// PossibleFileShareProvisioningStateValues returns the possible values for the FileShareProvisioningState const type.
func PossibleFileShareProvisioningStateValues() []FileShareProvisioningState {
	return []FileShareProvisioningState{
		FileShareProvisioningStateAccepted,
		FileShareProvisioningStateCanceled,
		FileShareProvisioningStateCreated,
		FileShareProvisioningStateCreating,
		FileShareProvisioningStateDeleting,
		FileShareProvisioningStateFailed,
		FileShareProvisioningStatePatching,
		FileShareProvisioningStatePosting,
		FileShareProvisioningStateProvisioning,
		FileShareProvisioningStateSucceeded,
		FileShareProvisioningStateTransientFailure,
		FileShareProvisioningStateUpdating,
	}
}

// MediaTier - Media Tier enum.
type MediaTier string

const (
	// MediaTierSSD - SSD media tier.
	MediaTierSSD MediaTier = "SSD"
)

// PossibleMediaTierValues returns the possible values for the MediaTier const type.
func PossibleMediaTierValues() []MediaTier {
	return []MediaTier{
		MediaTierSSD,
	}
}

// Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default
// value is "user,system"
type Origin string

const (
	// OriginSystem - Indicates the operation is initiated by a system.
	OriginSystem Origin = "system"
	// OriginUser - Indicates the operation is initiated by a user.
	OriginUser Origin = "user"
	// OriginUserSystem - Indicates the operation is initiated by a user or system.
	OriginUserSystem Origin = "user,system"
)

// PossibleOriginValues returns the possible values for the Origin const type.
func PossibleOriginValues() []Origin {
	return []Origin{
		OriginSystem,
		OriginUser,
		OriginUserSystem,
	}
}

// PrivateEndpointConnectionProvisioningState - The current provisioning state.
type PrivateEndpointConnectionProvisioningState string

const (
	// PrivateEndpointConnectionProvisioningStateCreating - Connection is being created
	PrivateEndpointConnectionProvisioningStateCreating PrivateEndpointConnectionProvisioningState = "Creating"
	// PrivateEndpointConnectionProvisioningStateDeleting - Connection is being deleted
	PrivateEndpointConnectionProvisioningStateDeleting PrivateEndpointConnectionProvisioningState = "Deleting"
	// PrivateEndpointConnectionProvisioningStateFailed - Connection provisioning has failed
	PrivateEndpointConnectionProvisioningStateFailed PrivateEndpointConnectionProvisioningState = "Failed"
	// PrivateEndpointConnectionProvisioningStateSucceeded - Connection has been provisioned
	PrivateEndpointConnectionProvisioningStateSucceeded PrivateEndpointConnectionProvisioningState = "Succeeded"
)

// PossiblePrivateEndpointConnectionProvisioningStateValues returns the possible values for the PrivateEndpointConnectionProvisioningState const type.
func PossiblePrivateEndpointConnectionProvisioningStateValues() []PrivateEndpointConnectionProvisioningState {
	return []PrivateEndpointConnectionProvisioningState{
		PrivateEndpointConnectionProvisioningStateCreating,
		PrivateEndpointConnectionProvisioningStateDeleting,
		PrivateEndpointConnectionProvisioningStateFailed,
		PrivateEndpointConnectionProvisioningStateSucceeded,
	}
}

// PrivateEndpointServiceConnectionStatus - The private endpoint connection status.
type PrivateEndpointServiceConnectionStatus string

const (
	// PrivateEndpointServiceConnectionStatusApproved - Connection approved
	PrivateEndpointServiceConnectionStatusApproved PrivateEndpointServiceConnectionStatus = "Approved"
	// PrivateEndpointServiceConnectionStatusPending - Connection waiting for approval or rejection
	PrivateEndpointServiceConnectionStatusPending PrivateEndpointServiceConnectionStatus = "Pending"
	// PrivateEndpointServiceConnectionStatusRejected - Connection Rejected
	PrivateEndpointServiceConnectionStatusRejected PrivateEndpointServiceConnectionStatus = "Rejected"
)

// PossiblePrivateEndpointServiceConnectionStatusValues returns the possible values for the PrivateEndpointServiceConnectionStatus const type.
func PossiblePrivateEndpointServiceConnectionStatusValues() []PrivateEndpointServiceConnectionStatus {
	return []PrivateEndpointServiceConnectionStatus{
		PrivateEndpointServiceConnectionStatusApproved,
		PrivateEndpointServiceConnectionStatusPending,
		PrivateEndpointServiceConnectionStatusRejected,
	}
}

// Protocol - Protocol enum.
type Protocol string

const (
	// ProtocolNFS - NFS protocol.
	ProtocolNFS Protocol = "NFS"
)

// PossibleProtocolValues returns the possible values for the Protocol const type.
func PossibleProtocolValues() []Protocol {
	return []Protocol{
		ProtocolNFS,
	}
}

// PublicNetworkAccess - State of the public network access.
type PublicNetworkAccess string

const (
	// PublicNetworkAccessDisabled - The public network access is disabled
	PublicNetworkAccessDisabled PublicNetworkAccess = "Disabled"
	// PublicNetworkAccessEnabled - The public network access is enabled
	PublicNetworkAccessEnabled PublicNetworkAccess = "Enabled"
)

// PossiblePublicNetworkAccessValues returns the possible values for the PublicNetworkAccess const type.
func PossiblePublicNetworkAccessValues() []PublicNetworkAccess {
	return []PublicNetworkAccess{
		PublicNetworkAccessDisabled,
		PublicNetworkAccessEnabled,
	}
}

// Redundancy - Redundancy enum.
type Redundancy string

const (
	// RedundancyLocal - Local redundancy.
	RedundancyLocal Redundancy = "Local"
	// RedundancyZone - Zone redundancy.
	RedundancyZone Redundancy = "Zone"
)

// PossibleRedundancyValues returns the possible values for the Redundancy const type.
func PossibleRedundancyValues() []Redundancy {
	return []Redundancy{
		RedundancyLocal,
		RedundancyZone,
	}
}

// ShareRootSquash - Share root squash enum.
type ShareRootSquash string

const (
	// ShareRootSquashAllSquash - All squash.
	ShareRootSquashAllSquash ShareRootSquash = "AllSquash"
	// ShareRootSquashNoRootSquash - No root squash.
	ShareRootSquashNoRootSquash ShareRootSquash = "NoRootSquash"
	// ShareRootSquashRootSquash - Root squash.
	ShareRootSquashRootSquash ShareRootSquash = "RootSquash"
)

// PossibleShareRootSquashValues returns the possible values for the ShareRootSquash const type.
func PossibleShareRootSquashValues() []ShareRootSquash {
	return []ShareRootSquash{
		ShareRootSquashAllSquash,
		ShareRootSquashNoRootSquash,
		ShareRootSquashRootSquash,
	}
}
