// 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 armhealthcareapis

const (
	version20250401Preview string = "2025-04-01-preview"
)

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

const (
	// ActionTypeInternal - Internal
	ActionTypeInternal ActionType = "Internal"
)

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

// 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,
	}
}

// FhirResourceVersionPolicy - Controls how resources are versioned on the FHIR service
type FhirResourceVersionPolicy string

const (
	// FhirResourceVersionPolicyNoVersion - no-version
	FhirResourceVersionPolicyNoVersion FhirResourceVersionPolicy = "no-version"
	// FhirResourceVersionPolicyVersioned - versioned
	FhirResourceVersionPolicyVersioned FhirResourceVersionPolicy = "versioned"
	// FhirResourceVersionPolicyVersionedUpdate - versioned-update
	FhirResourceVersionPolicyVersionedUpdate FhirResourceVersionPolicy = "versioned-update"
)

// PossibleFhirResourceVersionPolicyValues returns the possible values for the FhirResourceVersionPolicy const type.
func PossibleFhirResourceVersionPolicyValues() []FhirResourceVersionPolicy {
	return []FhirResourceVersionPolicy{
		FhirResourceVersionPolicyNoVersion,
		FhirResourceVersionPolicyVersioned,
		FhirResourceVersionPolicyVersionedUpdate,
	}
}

// FhirServiceKind - The kind of the service.
type FhirServiceKind string

const (
	// FhirServiceKindFhirR4 - fhir-R4
	FhirServiceKindFhirR4 FhirServiceKind = "fhir-R4"
	// FhirServiceKindFhirStu3 - fhir-Stu3
	FhirServiceKindFhirStu3 FhirServiceKind = "fhir-Stu3"
)

// PossibleFhirServiceKindValues returns the possible values for the FhirServiceKind const type.
func PossibleFhirServiceKindValues() []FhirServiceKind {
	return []FhirServiceKind{
		FhirServiceKindFhirR4,
		FhirServiceKindFhirStu3,
	}
}

// IotIdentityResolutionType - The type of IoT identity resolution to use with the destination.
type IotIdentityResolutionType string

const (
	// IotIdentityResolutionTypeCreate - Create
	IotIdentityResolutionTypeCreate IotIdentityResolutionType = "Create"
	// IotIdentityResolutionTypeLookup - Lookup
	IotIdentityResolutionTypeLookup IotIdentityResolutionType = "Lookup"
)

// PossibleIotIdentityResolutionTypeValues returns the possible values for the IotIdentityResolutionType const type.
func PossibleIotIdentityResolutionTypeValues() []IotIdentityResolutionType {
	return []IotIdentityResolutionType{
		IotIdentityResolutionTypeCreate,
		IotIdentityResolutionTypeLookup,
	}
}

// Kind - The kind of the service.
type Kind string

const (
	// KindFhir - fhir
	KindFhir Kind = "fhir"
	// KindFhirR4 - fhir-R4
	KindFhirR4 Kind = "fhir-R4"
	// KindFhirStu3 - fhir-Stu3
	KindFhirStu3 Kind = "fhir-Stu3"
)

// PossibleKindValues returns the possible values for the Kind const type.
func PossibleKindValues() []Kind {
	return []Kind{
		KindFhir,
		KindFhirR4,
		KindFhirStu3,
	}
}

// ManagedServiceIdentityType - Type of identity being specified, currently SystemAssigned and None are allowed.
type ManagedServiceIdentityType string

const (
	// ManagedServiceIdentityTypeNone - None
	ManagedServiceIdentityTypeNone ManagedServiceIdentityType = "None"
	// ManagedServiceIdentityTypeSystemAssigned - SystemAssigned
	ManagedServiceIdentityTypeSystemAssigned ManagedServiceIdentityType = "SystemAssigned"
)

// PossibleManagedServiceIdentityTypeValues returns the possible values for the ManagedServiceIdentityType const type.
func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType {
	return []ManagedServiceIdentityType{
		ManagedServiceIdentityTypeNone,
		ManagedServiceIdentityTypeSystemAssigned,
	}
}

// OperationResultStatus - The status of the operation being performed.
type OperationResultStatus string

const (
	// OperationResultStatusCanceled - Canceled
	OperationResultStatusCanceled OperationResultStatus = "Canceled"
	// OperationResultStatusFailed - Failed
	OperationResultStatusFailed OperationResultStatus = "Failed"
	// OperationResultStatusRequested - Requested
	OperationResultStatusRequested OperationResultStatus = "Requested"
	// OperationResultStatusRunning - Running
	OperationResultStatusRunning OperationResultStatus = "Running"
	// OperationResultStatusSucceeded - Succeeded
	OperationResultStatusSucceeded OperationResultStatus = "Succeeded"
)

// PossibleOperationResultStatusValues returns the possible values for the OperationResultStatus const type.
func PossibleOperationResultStatusValues() []OperationResultStatus {
	return []OperationResultStatus{
		OperationResultStatusCanceled,
		OperationResultStatusFailed,
		OperationResultStatusRequested,
		OperationResultStatusRunning,
		OperationResultStatusSucceeded,
	}
}

// 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,
	}
}

// ProvisioningState - The provisioning state.
type ProvisioningState string

const (
	// ProvisioningStateAccepted - Accepted
	ProvisioningStateAccepted ProvisioningState = "Accepted"
	// ProvisioningStateCanceled - Canceled
	ProvisioningStateCanceled ProvisioningState = "Canceled"
	// ProvisioningStateCreating - Creating
	ProvisioningStateCreating ProvisioningState = "Creating"
	// ProvisioningStateDeleting - Deleting
	ProvisioningStateDeleting ProvisioningState = "Deleting"
	// ProvisioningStateDeprovisioned - Deprovisioned
	ProvisioningStateDeprovisioned ProvisioningState = "Deprovisioned"
	// ProvisioningStateFailed - Failed
	ProvisioningStateFailed ProvisioningState = "Failed"
	// ProvisioningStateMoving - Moving
	ProvisioningStateMoving ProvisioningState = "Moving"
	// ProvisioningStateSucceeded - Succeeded
	ProvisioningStateSucceeded ProvisioningState = "Succeeded"
	// ProvisioningStateSuspended - Suspended
	ProvisioningStateSuspended ProvisioningState = "Suspended"
	// ProvisioningStateSystemMaintenance - SystemMaintenance
	ProvisioningStateSystemMaintenance ProvisioningState = "SystemMaintenance"
	// ProvisioningStateUpdating - Updating
	ProvisioningStateUpdating ProvisioningState = "Updating"
	// ProvisioningStateVerifying - Verifying
	ProvisioningStateVerifying ProvisioningState = "Verifying"
	// ProvisioningStateWarned - Warned
	ProvisioningStateWarned ProvisioningState = "Warned"
)

// PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.
func PossibleProvisioningStateValues() []ProvisioningState {
	return []ProvisioningState{
		ProvisioningStateAccepted,
		ProvisioningStateCanceled,
		ProvisioningStateCreating,
		ProvisioningStateDeleting,
		ProvisioningStateDeprovisioned,
		ProvisioningStateFailed,
		ProvisioningStateMoving,
		ProvisioningStateSucceeded,
		ProvisioningStateSuspended,
		ProvisioningStateSystemMaintenance,
		ProvisioningStateUpdating,
		ProvisioningStateVerifying,
		ProvisioningStateWarned,
	}
}

// PublicNetworkAccess - Control permission for data plane traffic coming from public networks while private endpoint is enabled.
type PublicNetworkAccess string

const (
	// PublicNetworkAccessDisabled - Disabled
	PublicNetworkAccessDisabled PublicNetworkAccess = "Disabled"
	// PublicNetworkAccessEnabled - Enabled
	PublicNetworkAccessEnabled PublicNetworkAccess = "Enabled"
)

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

// ServiceEventState - Indicates the current status of event support for the resource.
type ServiceEventState string

const (
	// ServiceEventStateDisabled - Disabled
	ServiceEventStateDisabled ServiceEventState = "Disabled"
	// ServiceEventStateEnabled - Enabled
	ServiceEventStateEnabled ServiceEventState = "Enabled"
	// ServiceEventStateUpdating - Updating
	ServiceEventStateUpdating ServiceEventState = "Updating"
)

// PossibleServiceEventStateValues returns the possible values for the ServiceEventState const type.
func PossibleServiceEventStateValues() []ServiceEventState {
	return []ServiceEventState{
		ServiceEventStateDisabled,
		ServiceEventStateEnabled,
		ServiceEventStateUpdating,
	}
}

// ServiceManagedIdentityType - Type of identity being specified, currently SystemAssigned and None are allowed.
type ServiceManagedIdentityType string

const (
	// ServiceManagedIdentityTypeNone - None
	ServiceManagedIdentityTypeNone ServiceManagedIdentityType = "None"
	// ServiceManagedIdentityTypeSystemAssigned - SystemAssigned
	ServiceManagedIdentityTypeSystemAssigned ServiceManagedIdentityType = "SystemAssigned"
	// ServiceManagedIdentityTypeSystemAssignedUserAssigned - SystemAssigned,UserAssigned
	ServiceManagedIdentityTypeSystemAssignedUserAssigned ServiceManagedIdentityType = "SystemAssigned,UserAssigned"
	// ServiceManagedIdentityTypeUserAssigned - UserAssigned
	ServiceManagedIdentityTypeUserAssigned ServiceManagedIdentityType = "UserAssigned"
)

// PossibleServiceManagedIdentityTypeValues returns the possible values for the ServiceManagedIdentityType const type.
func PossibleServiceManagedIdentityTypeValues() []ServiceManagedIdentityType {
	return []ServiceManagedIdentityType{
		ServiceManagedIdentityTypeNone,
		ServiceManagedIdentityTypeSystemAssigned,
		ServiceManagedIdentityTypeSystemAssignedUserAssigned,
		ServiceManagedIdentityTypeUserAssigned,
	}
}

// ServiceNameUnavailabilityReason - The reason for unavailability.
type ServiceNameUnavailabilityReason string

const (
	// ServiceNameUnavailabilityReasonAlreadyExists - AlreadyExists
	ServiceNameUnavailabilityReasonAlreadyExists ServiceNameUnavailabilityReason = "AlreadyExists"
	// ServiceNameUnavailabilityReasonInvalid - Invalid
	ServiceNameUnavailabilityReasonInvalid ServiceNameUnavailabilityReason = "Invalid"
)

// PossibleServiceNameUnavailabilityReasonValues returns the possible values for the ServiceNameUnavailabilityReason const type.
func PossibleServiceNameUnavailabilityReasonValues() []ServiceNameUnavailabilityReason {
	return []ServiceNameUnavailabilityReason{
		ServiceNameUnavailabilityReasonAlreadyExists,
		ServiceNameUnavailabilityReasonInvalid,
	}
}

// SmartDataActions - The Data Actions that can be enabled for a Smart Identity Provider Application.
type SmartDataActions string

const (
	// SmartDataActionsRead - Read
	SmartDataActionsRead SmartDataActions = "Read"
)

// PossibleSmartDataActionsValues returns the possible values for the SmartDataActions const type.
func PossibleSmartDataActionsValues() []SmartDataActions {
	return []SmartDataActions{
		SmartDataActionsRead,
	}
}
