// 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) AutoRest Code Generator. DO NOT EDIT.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

package armcognitiveservices

// AbusePenaltyAction - The action of AbusePenalty.
type AbusePenaltyAction string

const (
	AbusePenaltyActionBlock    AbusePenaltyAction = "Block"
	AbusePenaltyActionThrottle AbusePenaltyAction = "Throttle"
)

// PossibleAbusePenaltyActionValues returns the possible values for the AbusePenaltyAction const type.
func PossibleAbusePenaltyActionValues() []AbusePenaltyAction {
	return []AbusePenaltyAction{
		AbusePenaltyActionBlock,
		AbusePenaltyActionThrottle,
	}
}

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

const (
	ActionTypeInternal ActionType = "Internal"
)

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

// ByPassSelection - Setting for trusted services.
type ByPassSelection string

const (
	ByPassSelectionAzureServices ByPassSelection = "AzureServices"
	ByPassSelectionNone          ByPassSelection = "None"
)

// PossibleByPassSelectionValues returns the possible values for the ByPassSelection const type.
func PossibleByPassSelectionValues() []ByPassSelection {
	return []ByPassSelection{
		ByPassSelectionAzureServices,
		ByPassSelectionNone,
	}
}

type CapabilityHostKind string

const (
	CapabilityHostKindAgents CapabilityHostKind = "Agents"
)

// PossibleCapabilityHostKindValues returns the possible values for the CapabilityHostKind const type.
func PossibleCapabilityHostKindValues() []CapabilityHostKind {
	return []CapabilityHostKind{
		CapabilityHostKindAgents,
	}
}

// CapabilityHostProvisioningState - Provisioning state of capability host.
type CapabilityHostProvisioningState string

const (
	CapabilityHostProvisioningStateCanceled  CapabilityHostProvisioningState = "Canceled"
	CapabilityHostProvisioningStateCreating  CapabilityHostProvisioningState = "Creating"
	CapabilityHostProvisioningStateDeleting  CapabilityHostProvisioningState = "Deleting"
	CapabilityHostProvisioningStateFailed    CapabilityHostProvisioningState = "Failed"
	CapabilityHostProvisioningStateSucceeded CapabilityHostProvisioningState = "Succeeded"
	CapabilityHostProvisioningStateUpdating  CapabilityHostProvisioningState = "Updating"
)

// PossibleCapabilityHostProvisioningStateValues returns the possible values for the CapabilityHostProvisioningState const type.
func PossibleCapabilityHostProvisioningStateValues() []CapabilityHostProvisioningState {
	return []CapabilityHostProvisioningState{
		CapabilityHostProvisioningStateCanceled,
		CapabilityHostProvisioningStateCreating,
		CapabilityHostProvisioningStateDeleting,
		CapabilityHostProvisioningStateFailed,
		CapabilityHostProvisioningStateSucceeded,
		CapabilityHostProvisioningStateUpdating,
	}
}

// CommitmentPlanProvisioningState - Gets the status of the resource at the time the operation was called.
type CommitmentPlanProvisioningState string

const (
	CommitmentPlanProvisioningStateAccepted  CommitmentPlanProvisioningState = "Accepted"
	CommitmentPlanProvisioningStateCanceled  CommitmentPlanProvisioningState = "Canceled"
	CommitmentPlanProvisioningStateCreating  CommitmentPlanProvisioningState = "Creating"
	CommitmentPlanProvisioningStateDeleting  CommitmentPlanProvisioningState = "Deleting"
	CommitmentPlanProvisioningStateFailed    CommitmentPlanProvisioningState = "Failed"
	CommitmentPlanProvisioningStateMoving    CommitmentPlanProvisioningState = "Moving"
	CommitmentPlanProvisioningStateSucceeded CommitmentPlanProvisioningState = "Succeeded"
)

// PossibleCommitmentPlanProvisioningStateValues returns the possible values for the CommitmentPlanProvisioningState const type.
func PossibleCommitmentPlanProvisioningStateValues() []CommitmentPlanProvisioningState {
	return []CommitmentPlanProvisioningState{
		CommitmentPlanProvisioningStateAccepted,
		CommitmentPlanProvisioningStateCanceled,
		CommitmentPlanProvisioningStateCreating,
		CommitmentPlanProvisioningStateDeleting,
		CommitmentPlanProvisioningStateFailed,
		CommitmentPlanProvisioningStateMoving,
		CommitmentPlanProvisioningStateSucceeded,
	}
}

// ConnectionAuthType - Authentication type of the connection target
type ConnectionAuthType string

const (
	ConnectionAuthTypeAAD              ConnectionAuthType = "AAD"
	ConnectionAuthTypeAPIKey           ConnectionAuthType = "ApiKey"
	ConnectionAuthTypeAccessKey        ConnectionAuthType = "AccessKey"
	ConnectionAuthTypeAccountKey       ConnectionAuthType = "AccountKey"
	ConnectionAuthTypeCustomKeys       ConnectionAuthType = "CustomKeys"
	ConnectionAuthTypeManagedIdentity  ConnectionAuthType = "ManagedIdentity"
	ConnectionAuthTypeNone             ConnectionAuthType = "None"
	ConnectionAuthTypeOAuth2           ConnectionAuthType = "OAuth2"
	ConnectionAuthTypePAT              ConnectionAuthType = "PAT"
	ConnectionAuthTypeSAS              ConnectionAuthType = "SAS"
	ConnectionAuthTypeServicePrincipal ConnectionAuthType = "ServicePrincipal"
	ConnectionAuthTypeUsernamePassword ConnectionAuthType = "UsernamePassword"
)

// PossibleConnectionAuthTypeValues returns the possible values for the ConnectionAuthType const type.
func PossibleConnectionAuthTypeValues() []ConnectionAuthType {
	return []ConnectionAuthType{
		ConnectionAuthTypeAAD,
		ConnectionAuthTypeAPIKey,
		ConnectionAuthTypeAccessKey,
		ConnectionAuthTypeAccountKey,
		ConnectionAuthTypeCustomKeys,
		ConnectionAuthTypeManagedIdentity,
		ConnectionAuthTypeNone,
		ConnectionAuthTypeOAuth2,
		ConnectionAuthTypePAT,
		ConnectionAuthTypeSAS,
		ConnectionAuthTypeServicePrincipal,
		ConnectionAuthTypeUsernamePassword,
	}
}

// ConnectionCategory - Category of the connection
type ConnectionCategory string

const (
	ConnectionCategoryADLSGen2                 ConnectionCategory = "ADLSGen2"
	ConnectionCategoryAIServices               ConnectionCategory = "AIServices"
	ConnectionCategoryAPIKey                   ConnectionCategory = "ApiKey"
	ConnectionCategoryAmazonMws                ConnectionCategory = "AmazonMws"
	ConnectionCategoryAmazonRdsForOracle       ConnectionCategory = "AmazonRdsForOracle"
	ConnectionCategoryAmazonRdsForSQLServer    ConnectionCategory = "AmazonRdsForSqlServer"
	ConnectionCategoryAmazonRedshift           ConnectionCategory = "AmazonRedshift"
	ConnectionCategoryAmazonS3Compatible       ConnectionCategory = "AmazonS3Compatible"
	ConnectionCategoryAzureBlob                ConnectionCategory = "AzureBlob"
	ConnectionCategoryAzureDataExplorer        ConnectionCategory = "AzureDataExplorer"
	ConnectionCategoryAzureDatabricksDeltaLake ConnectionCategory = "AzureDatabricksDeltaLake"
	ConnectionCategoryAzureMariaDb             ConnectionCategory = "AzureMariaDb"
	ConnectionCategoryAzureMySQLDb             ConnectionCategory = "AzureMySqlDb"
	ConnectionCategoryAzureOneLake             ConnectionCategory = "AzureOneLake"
	ConnectionCategoryAzureOpenAI              ConnectionCategory = "AzureOpenAI"
	ConnectionCategoryAzurePostgresDb          ConnectionCategory = "AzurePostgresDb"
	ConnectionCategoryAzureSQLDb               ConnectionCategory = "AzureSqlDb"
	ConnectionCategoryAzureSQLMi               ConnectionCategory = "AzureSqlMi"
	ConnectionCategoryAzureSynapseAnalytics    ConnectionCategory = "AzureSynapseAnalytics"
	ConnectionCategoryAzureTableStorage        ConnectionCategory = "AzureTableStorage"
	ConnectionCategoryBingLLMSearch            ConnectionCategory = "BingLLMSearch"
	ConnectionCategoryCassandra                ConnectionCategory = "Cassandra"
	ConnectionCategoryCognitiveSearch          ConnectionCategory = "CognitiveSearch"
	ConnectionCategoryCognitiveService         ConnectionCategory = "CognitiveService"
	ConnectionCategoryConcur                   ConnectionCategory = "Concur"
	ConnectionCategoryContainerRegistry        ConnectionCategory = "ContainerRegistry"
	ConnectionCategoryCosmosDb                 ConnectionCategory = "CosmosDb"
	ConnectionCategoryCosmosDbMongoDbAPI       ConnectionCategory = "CosmosDbMongoDbApi"
	ConnectionCategoryCouchbase                ConnectionCategory = "Couchbase"
	ConnectionCategoryCustomKeys               ConnectionCategory = "CustomKeys"
	ConnectionCategoryDb2                      ConnectionCategory = "Db2"
	ConnectionCategoryDrill                    ConnectionCategory = "Drill"
	ConnectionCategoryDynamics                 ConnectionCategory = "Dynamics"
	ConnectionCategoryDynamicsAx               ConnectionCategory = "DynamicsAx"
	ConnectionCategoryDynamicsCrm              ConnectionCategory = "DynamicsCrm"
	ConnectionCategoryElasticsearch            ConnectionCategory = "Elasticsearch"
	ConnectionCategoryEloqua                   ConnectionCategory = "Eloqua"
	ConnectionCategoryFileServer               ConnectionCategory = "FileServer"
	ConnectionCategoryFtpServer                ConnectionCategory = "FtpServer"
	ConnectionCategoryGenericContainerRegistry ConnectionCategory = "GenericContainerRegistry"
	ConnectionCategoryGenericHTTP              ConnectionCategory = "GenericHttp"
	ConnectionCategoryGenericRest              ConnectionCategory = "GenericRest"
	ConnectionCategoryGit                      ConnectionCategory = "Git"
	ConnectionCategoryGoogleAdWords            ConnectionCategory = "GoogleAdWords"
	ConnectionCategoryGoogleBigQuery           ConnectionCategory = "GoogleBigQuery"
	ConnectionCategoryGoogleCloudStorage       ConnectionCategory = "GoogleCloudStorage"
	ConnectionCategoryGreenplum                ConnectionCategory = "Greenplum"
	ConnectionCategoryHbase                    ConnectionCategory = "Hbase"
	ConnectionCategoryHdfs                     ConnectionCategory = "Hdfs"
	ConnectionCategoryHive                     ConnectionCategory = "Hive"
	ConnectionCategoryHubspot                  ConnectionCategory = "Hubspot"
	ConnectionCategoryImpala                   ConnectionCategory = "Impala"
	ConnectionCategoryInformix                 ConnectionCategory = "Informix"
	ConnectionCategoryJira                     ConnectionCategory = "Jira"
	ConnectionCategoryMagento                  ConnectionCategory = "Magento"
	ConnectionCategoryManagedOnlineEndpoint    ConnectionCategory = "ManagedOnlineEndpoint"
	ConnectionCategoryMariaDb                  ConnectionCategory = "MariaDb"
	ConnectionCategoryMarketo                  ConnectionCategory = "Marketo"
	ConnectionCategoryMicrosoftAccess          ConnectionCategory = "MicrosoftAccess"
	ConnectionCategoryMongoDbAtlas             ConnectionCategory = "MongoDbAtlas"
	ConnectionCategoryMongoDbV2                ConnectionCategory = "MongoDbV2"
	ConnectionCategoryMySQL                    ConnectionCategory = "MySql"
	ConnectionCategoryNetezza                  ConnectionCategory = "Netezza"
	ConnectionCategoryODataRest                ConnectionCategory = "ODataRest"
	ConnectionCategoryOdbc                     ConnectionCategory = "Odbc"
	ConnectionCategoryOffice365                ConnectionCategory = "Office365"
	ConnectionCategoryOpenAI                   ConnectionCategory = "OpenAI"
	ConnectionCategoryOracle                   ConnectionCategory = "Oracle"
	ConnectionCategoryOracleCloudStorage       ConnectionCategory = "OracleCloudStorage"
	ConnectionCategoryOracleServiceCloud       ConnectionCategory = "OracleServiceCloud"
	ConnectionCategoryPayPal                   ConnectionCategory = "PayPal"
	ConnectionCategoryPhoenix                  ConnectionCategory = "Phoenix"
	ConnectionCategoryPinecone                 ConnectionCategory = "Pinecone"
	ConnectionCategoryPostgreSQL               ConnectionCategory = "PostgreSql"
	ConnectionCategoryPresto                   ConnectionCategory = "Presto"
	ConnectionCategoryPythonFeed               ConnectionCategory = "PythonFeed"
	ConnectionCategoryQuickBooks               ConnectionCategory = "QuickBooks"
	ConnectionCategoryRedis                    ConnectionCategory = "Redis"
	ConnectionCategoryResponsys                ConnectionCategory = "Responsys"
	ConnectionCategoryS3                       ConnectionCategory = "S3"
	ConnectionCategorySQLServer                ConnectionCategory = "SqlServer"
	ConnectionCategorySalesforce               ConnectionCategory = "Salesforce"
	ConnectionCategorySalesforceMarketingCloud ConnectionCategory = "SalesforceMarketingCloud"
	ConnectionCategorySalesforceServiceCloud   ConnectionCategory = "SalesforceServiceCloud"
	ConnectionCategorySapBw                    ConnectionCategory = "SapBw"
	ConnectionCategorySapCloudForCustomer      ConnectionCategory = "SapCloudForCustomer"
	ConnectionCategorySapEcc                   ConnectionCategory = "SapEcc"
	ConnectionCategorySapHana                  ConnectionCategory = "SapHana"
	ConnectionCategorySapOpenHub               ConnectionCategory = "SapOpenHub"
	ConnectionCategorySapTable                 ConnectionCategory = "SapTable"
	ConnectionCategorySerp                     ConnectionCategory = "Serp"
	ConnectionCategoryServerless               ConnectionCategory = "Serverless"
	ConnectionCategoryServiceNow               ConnectionCategory = "ServiceNow"
	ConnectionCategorySftp                     ConnectionCategory = "Sftp"
	ConnectionCategorySharePointOnlineList     ConnectionCategory = "SharePointOnlineList"
	ConnectionCategoryShopify                  ConnectionCategory = "Shopify"
	ConnectionCategorySnowflake                ConnectionCategory = "Snowflake"
	ConnectionCategorySpark                    ConnectionCategory = "Spark"
	ConnectionCategorySquare                   ConnectionCategory = "Square"
	ConnectionCategorySybase                   ConnectionCategory = "Sybase"
	ConnectionCategoryTeradata                 ConnectionCategory = "Teradata"
	ConnectionCategoryVertica                  ConnectionCategory = "Vertica"
	ConnectionCategoryWebTable                 ConnectionCategory = "WebTable"
	ConnectionCategoryXero                     ConnectionCategory = "Xero"
	ConnectionCategoryZoho                     ConnectionCategory = "Zoho"
)

// PossibleConnectionCategoryValues returns the possible values for the ConnectionCategory const type.
func PossibleConnectionCategoryValues() []ConnectionCategory {
	return []ConnectionCategory{
		ConnectionCategoryADLSGen2,
		ConnectionCategoryAIServices,
		ConnectionCategoryAPIKey,
		ConnectionCategoryAmazonMws,
		ConnectionCategoryAmazonRdsForOracle,
		ConnectionCategoryAmazonRdsForSQLServer,
		ConnectionCategoryAmazonRedshift,
		ConnectionCategoryAmazonS3Compatible,
		ConnectionCategoryAzureBlob,
		ConnectionCategoryAzureDataExplorer,
		ConnectionCategoryAzureDatabricksDeltaLake,
		ConnectionCategoryAzureMariaDb,
		ConnectionCategoryAzureMySQLDb,
		ConnectionCategoryAzureOneLake,
		ConnectionCategoryAzureOpenAI,
		ConnectionCategoryAzurePostgresDb,
		ConnectionCategoryAzureSQLDb,
		ConnectionCategoryAzureSQLMi,
		ConnectionCategoryAzureSynapseAnalytics,
		ConnectionCategoryAzureTableStorage,
		ConnectionCategoryBingLLMSearch,
		ConnectionCategoryCassandra,
		ConnectionCategoryCognitiveSearch,
		ConnectionCategoryCognitiveService,
		ConnectionCategoryConcur,
		ConnectionCategoryContainerRegistry,
		ConnectionCategoryCosmosDb,
		ConnectionCategoryCosmosDbMongoDbAPI,
		ConnectionCategoryCouchbase,
		ConnectionCategoryCustomKeys,
		ConnectionCategoryDb2,
		ConnectionCategoryDrill,
		ConnectionCategoryDynamics,
		ConnectionCategoryDynamicsAx,
		ConnectionCategoryDynamicsCrm,
		ConnectionCategoryElasticsearch,
		ConnectionCategoryEloqua,
		ConnectionCategoryFileServer,
		ConnectionCategoryFtpServer,
		ConnectionCategoryGenericContainerRegistry,
		ConnectionCategoryGenericHTTP,
		ConnectionCategoryGenericRest,
		ConnectionCategoryGit,
		ConnectionCategoryGoogleAdWords,
		ConnectionCategoryGoogleBigQuery,
		ConnectionCategoryGoogleCloudStorage,
		ConnectionCategoryGreenplum,
		ConnectionCategoryHbase,
		ConnectionCategoryHdfs,
		ConnectionCategoryHive,
		ConnectionCategoryHubspot,
		ConnectionCategoryImpala,
		ConnectionCategoryInformix,
		ConnectionCategoryJira,
		ConnectionCategoryMagento,
		ConnectionCategoryManagedOnlineEndpoint,
		ConnectionCategoryMariaDb,
		ConnectionCategoryMarketo,
		ConnectionCategoryMicrosoftAccess,
		ConnectionCategoryMongoDbAtlas,
		ConnectionCategoryMongoDbV2,
		ConnectionCategoryMySQL,
		ConnectionCategoryNetezza,
		ConnectionCategoryODataRest,
		ConnectionCategoryOdbc,
		ConnectionCategoryOffice365,
		ConnectionCategoryOpenAI,
		ConnectionCategoryOracle,
		ConnectionCategoryOracleCloudStorage,
		ConnectionCategoryOracleServiceCloud,
		ConnectionCategoryPayPal,
		ConnectionCategoryPhoenix,
		ConnectionCategoryPinecone,
		ConnectionCategoryPostgreSQL,
		ConnectionCategoryPresto,
		ConnectionCategoryPythonFeed,
		ConnectionCategoryQuickBooks,
		ConnectionCategoryRedis,
		ConnectionCategoryResponsys,
		ConnectionCategoryS3,
		ConnectionCategorySQLServer,
		ConnectionCategorySalesforce,
		ConnectionCategorySalesforceMarketingCloud,
		ConnectionCategorySalesforceServiceCloud,
		ConnectionCategorySapBw,
		ConnectionCategorySapCloudForCustomer,
		ConnectionCategorySapEcc,
		ConnectionCategorySapHana,
		ConnectionCategorySapOpenHub,
		ConnectionCategorySapTable,
		ConnectionCategorySerp,
		ConnectionCategoryServerless,
		ConnectionCategoryServiceNow,
		ConnectionCategorySftp,
		ConnectionCategorySharePointOnlineList,
		ConnectionCategoryShopify,
		ConnectionCategorySnowflake,
		ConnectionCategorySpark,
		ConnectionCategorySquare,
		ConnectionCategorySybase,
		ConnectionCategoryTeradata,
		ConnectionCategoryVertica,
		ConnectionCategoryWebTable,
		ConnectionCategoryXero,
		ConnectionCategoryZoho,
	}
}

// ConnectionGroup - Group based on connection category
type ConnectionGroup string

const (
	ConnectionGroupAzure           ConnectionGroup = "Azure"
	ConnectionGroupAzureAI         ConnectionGroup = "AzureAI"
	ConnectionGroupDatabase        ConnectionGroup = "Database"
	ConnectionGroupFile            ConnectionGroup = "File"
	ConnectionGroupGenericProtocol ConnectionGroup = "GenericProtocol"
	ConnectionGroupNoSQL           ConnectionGroup = "NoSQL"
	ConnectionGroupServicesAndApps ConnectionGroup = "ServicesAndApps"
)

// PossibleConnectionGroupValues returns the possible values for the ConnectionGroup const type.
func PossibleConnectionGroupValues() []ConnectionGroup {
	return []ConnectionGroup{
		ConnectionGroupAzure,
		ConnectionGroupAzureAI,
		ConnectionGroupDatabase,
		ConnectionGroupFile,
		ConnectionGroupGenericProtocol,
		ConnectionGroupNoSQL,
		ConnectionGroupServicesAndApps,
	}
}

// ContentLevel - Level at which content is filtered.
type ContentLevel string

const (
	ContentLevelHigh   ContentLevel = "High"
	ContentLevelLow    ContentLevel = "Low"
	ContentLevelMedium ContentLevel = "Medium"
)

// PossibleContentLevelValues returns the possible values for the ContentLevel const type.
func PossibleContentLevelValues() []ContentLevel {
	return []ContentLevel{
		ContentLevelHigh,
		ContentLevelLow,
		ContentLevelMedium,
	}
}

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

const (
	CreatedByTypeApplication     CreatedByType = "Application"
	CreatedByTypeKey             CreatedByType = "Key"
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	CreatedByTypeUser            CreatedByType = "User"
)

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

// DefenderForAISettingState - Defender for AI state on the AI resource.
type DefenderForAISettingState string

const (
	DefenderForAISettingStateDisabled DefenderForAISettingState = "Disabled"
	DefenderForAISettingStateEnabled  DefenderForAISettingState = "Enabled"
)

// PossibleDefenderForAISettingStateValues returns the possible values for the DefenderForAISettingState const type.
func PossibleDefenderForAISettingStateValues() []DefenderForAISettingState {
	return []DefenderForAISettingState{
		DefenderForAISettingStateDisabled,
		DefenderForAISettingStateEnabled,
	}
}

// DeploymentModelVersionUpgradeOption - Deployment model version upgrade option.
type DeploymentModelVersionUpgradeOption string

const (
	DeploymentModelVersionUpgradeOptionNoAutoUpgrade                  DeploymentModelVersionUpgradeOption = "NoAutoUpgrade"
	DeploymentModelVersionUpgradeOptionOnceCurrentVersionExpired      DeploymentModelVersionUpgradeOption = "OnceCurrentVersionExpired"
	DeploymentModelVersionUpgradeOptionOnceNewDefaultVersionAvailable DeploymentModelVersionUpgradeOption = "OnceNewDefaultVersionAvailable"
)

// PossibleDeploymentModelVersionUpgradeOptionValues returns the possible values for the DeploymentModelVersionUpgradeOption const type.
func PossibleDeploymentModelVersionUpgradeOptionValues() []DeploymentModelVersionUpgradeOption {
	return []DeploymentModelVersionUpgradeOption{
		DeploymentModelVersionUpgradeOptionNoAutoUpgrade,
		DeploymentModelVersionUpgradeOptionOnceCurrentVersionExpired,
		DeploymentModelVersionUpgradeOptionOnceNewDefaultVersionAvailable,
	}
}

// DeploymentProvisioningState - Gets the status of the resource at the time the operation was called.
type DeploymentProvisioningState string

const (
	DeploymentProvisioningStateAccepted  DeploymentProvisioningState = "Accepted"
	DeploymentProvisioningStateCanceled  DeploymentProvisioningState = "Canceled"
	DeploymentProvisioningStateCreating  DeploymentProvisioningState = "Creating"
	DeploymentProvisioningStateDeleting  DeploymentProvisioningState = "Deleting"
	DeploymentProvisioningStateDisabled  DeploymentProvisioningState = "Disabled"
	DeploymentProvisioningStateFailed    DeploymentProvisioningState = "Failed"
	DeploymentProvisioningStateMoving    DeploymentProvisioningState = "Moving"
	DeploymentProvisioningStateSucceeded DeploymentProvisioningState = "Succeeded"
)

// PossibleDeploymentProvisioningStateValues returns the possible values for the DeploymentProvisioningState const type.
func PossibleDeploymentProvisioningStateValues() []DeploymentProvisioningState {
	return []DeploymentProvisioningState{
		DeploymentProvisioningStateAccepted,
		DeploymentProvisioningStateCanceled,
		DeploymentProvisioningStateCreating,
		DeploymentProvisioningStateDeleting,
		DeploymentProvisioningStateDisabled,
		DeploymentProvisioningStateFailed,
		DeploymentProvisioningStateMoving,
		DeploymentProvisioningStateSucceeded,
	}
}

// DeploymentScaleType - Deployment scale type.
type DeploymentScaleType string

const (
	DeploymentScaleTypeManual   DeploymentScaleType = "Manual"
	DeploymentScaleTypeStandard DeploymentScaleType = "Standard"
)

// PossibleDeploymentScaleTypeValues returns the possible values for the DeploymentScaleType const type.
func PossibleDeploymentScaleTypeValues() []DeploymentScaleType {
	return []DeploymentScaleType{
		DeploymentScaleTypeManual,
		DeploymentScaleTypeStandard,
	}
}

// EncryptionScopeProvisioningState - Gets the status of the resource at the time the operation was called.
type EncryptionScopeProvisioningState string

const (
	EncryptionScopeProvisioningStateAccepted  EncryptionScopeProvisioningState = "Accepted"
	EncryptionScopeProvisioningStateCanceled  EncryptionScopeProvisioningState = "Canceled"
	EncryptionScopeProvisioningStateCreating  EncryptionScopeProvisioningState = "Creating"
	EncryptionScopeProvisioningStateDeleting  EncryptionScopeProvisioningState = "Deleting"
	EncryptionScopeProvisioningStateFailed    EncryptionScopeProvisioningState = "Failed"
	EncryptionScopeProvisioningStateMoving    EncryptionScopeProvisioningState = "Moving"
	EncryptionScopeProvisioningStateSucceeded EncryptionScopeProvisioningState = "Succeeded"
)

// PossibleEncryptionScopeProvisioningStateValues returns the possible values for the EncryptionScopeProvisioningState const type.
func PossibleEncryptionScopeProvisioningStateValues() []EncryptionScopeProvisioningState {
	return []EncryptionScopeProvisioningState{
		EncryptionScopeProvisioningStateAccepted,
		EncryptionScopeProvisioningStateCanceled,
		EncryptionScopeProvisioningStateCreating,
		EncryptionScopeProvisioningStateDeleting,
		EncryptionScopeProvisioningStateFailed,
		EncryptionScopeProvisioningStateMoving,
		EncryptionScopeProvisioningStateSucceeded,
	}
}

// EncryptionScopeState - The encryptionScope state.
type EncryptionScopeState string

const (
	EncryptionScopeStateDisabled EncryptionScopeState = "Disabled"
	EncryptionScopeStateEnabled  EncryptionScopeState = "Enabled"
)

// PossibleEncryptionScopeStateValues returns the possible values for the EncryptionScopeState const type.
func PossibleEncryptionScopeStateValues() []EncryptionScopeState {
	return []EncryptionScopeState{
		EncryptionScopeStateDisabled,
		EncryptionScopeStateEnabled,
	}
}

// HostingModel - Account hosting model.
type HostingModel string

const (
	HostingModelConnectedContainer    HostingModel = "ConnectedContainer"
	HostingModelDisconnectedContainer HostingModel = "DisconnectedContainer"
	HostingModelProvisionedWeb        HostingModel = "ProvisionedWeb"
	HostingModelWeb                   HostingModel = "Web"
)

// PossibleHostingModelValues returns the possible values for the HostingModel const type.
func PossibleHostingModelValues() []HostingModel {
	return []HostingModel{
		HostingModelConnectedContainer,
		HostingModelDisconnectedContainer,
		HostingModelProvisionedWeb,
		HostingModelWeb,
	}
}

// KeyName - key name to generate (Key1|Key2)
type KeyName string

const (
	KeyNameKey1 KeyName = "Key1"
	KeyNameKey2 KeyName = "Key2"
)

// PossibleKeyNameValues returns the possible values for the KeyName const type.
func PossibleKeyNameValues() []KeyName {
	return []KeyName{
		KeyNameKey1,
		KeyNameKey2,
	}
}

// KeySource - Enumerates the possible value of keySource for Encryption
type KeySource string

const (
	KeySourceMicrosoftCognitiveServices KeySource = "Microsoft.CognitiveServices"
	KeySourceMicrosoftKeyVault          KeySource = "Microsoft.KeyVault"
)

// PossibleKeySourceValues returns the possible values for the KeySource const type.
func PossibleKeySourceValues() []KeySource {
	return []KeySource{
		KeySourceMicrosoftCognitiveServices,
		KeySourceMicrosoftKeyVault,
	}
}

type ManagedPERequirement string

const (
	ManagedPERequirementNotApplicable ManagedPERequirement = "NotApplicable"
	ManagedPERequirementNotRequired   ManagedPERequirement = "NotRequired"
	ManagedPERequirementRequired      ManagedPERequirement = "Required"
)

// PossibleManagedPERequirementValues returns the possible values for the ManagedPERequirement const type.
func PossibleManagedPERequirementValues() []ManagedPERequirement {
	return []ManagedPERequirement{
		ManagedPERequirementNotApplicable,
		ManagedPERequirementNotRequired,
		ManagedPERequirementRequired,
	}
}

type ManagedPEStatus string

const (
	ManagedPEStatusActive        ManagedPEStatus = "Active"
	ManagedPEStatusInactive      ManagedPEStatus = "Inactive"
	ManagedPEStatusNotApplicable ManagedPEStatus = "NotApplicable"
)

// PossibleManagedPEStatusValues returns the possible values for the ManagedPEStatus const type.
func PossibleManagedPEStatusValues() []ManagedPEStatus {
	return []ManagedPEStatus{
		ManagedPEStatusActive,
		ManagedPEStatusInactive,
		ManagedPEStatusNotApplicable,
	}
}

// ModelLifecycleStatus - Model lifecycle status.
type ModelLifecycleStatus string

const (
	ModelLifecycleStatusDeprecated         ModelLifecycleStatus = "Deprecated"
	ModelLifecycleStatusDeprecating        ModelLifecycleStatus = "Deprecating"
	ModelLifecycleStatusGenerallyAvailable ModelLifecycleStatus = "GenerallyAvailable"
	ModelLifecycleStatusPreview            ModelLifecycleStatus = "Preview"
	ModelLifecycleStatusStable             ModelLifecycleStatus = "Stable"
)

// PossibleModelLifecycleStatusValues returns the possible values for the ModelLifecycleStatus const type.
func PossibleModelLifecycleStatusValues() []ModelLifecycleStatus {
	return []ModelLifecycleStatus{
		ModelLifecycleStatusDeprecated,
		ModelLifecycleStatusDeprecating,
		ModelLifecycleStatusGenerallyAvailable,
		ModelLifecycleStatusPreview,
		ModelLifecycleStatusStable,
	}
}

// NetworkRuleAction - The default action when no rule from ipRules and from virtualNetworkRules match. This is only used
// after the bypass property has been evaluated.
type NetworkRuleAction string

const (
	NetworkRuleActionAllow NetworkRuleAction = "Allow"
	NetworkRuleActionDeny  NetworkRuleAction = "Deny"
)

// PossibleNetworkRuleActionValues returns the possible values for the NetworkRuleAction const type.
func PossibleNetworkRuleActionValues() []NetworkRuleAction {
	return []NetworkRuleAction{
		NetworkRuleActionAllow,
		NetworkRuleActionDeny,
	}
}

// NspAccessRuleDirection - Direction of Access Rule
type NspAccessRuleDirection string

const (
	NspAccessRuleDirectionInbound  NspAccessRuleDirection = "Inbound"
	NspAccessRuleDirectionOutbound NspAccessRuleDirection = "Outbound"
)

// PossibleNspAccessRuleDirectionValues returns the possible values for the NspAccessRuleDirection const type.
func PossibleNspAccessRuleDirectionValues() []NspAccessRuleDirection {
	return []NspAccessRuleDirection{
		NspAccessRuleDirectionInbound,
		NspAccessRuleDirectionOutbound,
	}
}

// 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     Origin = "system"
	OriginUser       Origin = "user"
	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  PrivateEndpointConnectionProvisioningState = "Creating"
	PrivateEndpointConnectionProvisioningStateDeleting  PrivateEndpointConnectionProvisioningState = "Deleting"
	PrivateEndpointConnectionProvisioningStateFailed    PrivateEndpointConnectionProvisioningState = "Failed"
	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 PrivateEndpointServiceConnectionStatus = "Approved"
	PrivateEndpointServiceConnectionStatusPending  PrivateEndpointServiceConnectionStatus = "Pending"
	PrivateEndpointServiceConnectionStatusRejected PrivateEndpointServiceConnectionStatus = "Rejected"
)

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

// ProvisioningState - Gets the status of the cognitive services account at the time the operation was called.
type ProvisioningState string

const (
	ProvisioningStateAccepted     ProvisioningState = "Accepted"
	ProvisioningStateCanceled     ProvisioningState = "Canceled"
	ProvisioningStateCreating     ProvisioningState = "Creating"
	ProvisioningStateDeleting     ProvisioningState = "Deleting"
	ProvisioningStateFailed       ProvisioningState = "Failed"
	ProvisioningStateMoving       ProvisioningState = "Moving"
	ProvisioningStateResolvingDNS ProvisioningState = "ResolvingDNS"
	ProvisioningStateSucceeded    ProvisioningState = "Succeeded"
)

// PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.
func PossibleProvisioningStateValues() []ProvisioningState {
	return []ProvisioningState{
		ProvisioningStateAccepted,
		ProvisioningStateCanceled,
		ProvisioningStateCreating,
		ProvisioningStateDeleting,
		ProvisioningStateFailed,
		ProvisioningStateMoving,
		ProvisioningStateResolvingDNS,
		ProvisioningStateSucceeded,
	}
}

// PublicNetworkAccess - Whether or not public endpoint access is allowed for this account.
type PublicNetworkAccess string

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

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

// QuotaUsageStatus - Cognitive Services account quota usage status.
type QuotaUsageStatus string

const (
	QuotaUsageStatusBlocked   QuotaUsageStatus = "Blocked"
	QuotaUsageStatusInOverage QuotaUsageStatus = "InOverage"
	QuotaUsageStatusIncluded  QuotaUsageStatus = "Included"
	QuotaUsageStatusUnknown   QuotaUsageStatus = "Unknown"
)

// PossibleQuotaUsageStatusValues returns the possible values for the QuotaUsageStatus const type.
func PossibleQuotaUsageStatusValues() []QuotaUsageStatus {
	return []QuotaUsageStatus{
		QuotaUsageStatusBlocked,
		QuotaUsageStatusInOverage,
		QuotaUsageStatusIncluded,
		QuotaUsageStatusUnknown,
	}
}

// RaiPolicyContentSource - Content source to apply the Content Filters.
type RaiPolicyContentSource string

const (
	RaiPolicyContentSourceCompletion RaiPolicyContentSource = "Completion"
	RaiPolicyContentSourcePrompt     RaiPolicyContentSource = "Prompt"
)

// PossibleRaiPolicyContentSourceValues returns the possible values for the RaiPolicyContentSource const type.
func PossibleRaiPolicyContentSourceValues() []RaiPolicyContentSource {
	return []RaiPolicyContentSource{
		RaiPolicyContentSourceCompletion,
		RaiPolicyContentSourcePrompt,
	}
}

// RaiPolicyMode - Rai policy mode. The enum value mapping is as below: Default = 0, Deferred=1, Blocking=2, Asynchronousfilter
// =3. Please use 'Asynchronousfilter' after 2025-06-01. It is the same as 'Deferred' in
// previous version.
type RaiPolicyMode string

const (
	RaiPolicyModeAsynchronousFilter RaiPolicyMode = "Asynchronous_filter"
	RaiPolicyModeBlocking           RaiPolicyMode = "Blocking"
	RaiPolicyModeDefault            RaiPolicyMode = "Default"
	RaiPolicyModeDeferred           RaiPolicyMode = "Deferred"
)

// PossibleRaiPolicyModeValues returns the possible values for the RaiPolicyMode const type.
func PossibleRaiPolicyModeValues() []RaiPolicyMode {
	return []RaiPolicyMode{
		RaiPolicyModeAsynchronousFilter,
		RaiPolicyModeBlocking,
		RaiPolicyModeDefault,
		RaiPolicyModeDeferred,
	}
}

// RaiPolicyType - Content Filters policy type.
type RaiPolicyType string

const (
	RaiPolicyTypeSystemManaged RaiPolicyType = "SystemManaged"
	RaiPolicyTypeUserManaged   RaiPolicyType = "UserManaged"
)

// PossibleRaiPolicyTypeValues returns the possible values for the RaiPolicyType const type.
func PossibleRaiPolicyTypeValues() []RaiPolicyType {
	return []RaiPolicyType{
		RaiPolicyTypeSystemManaged,
		RaiPolicyTypeUserManaged,
	}
}

// ResourceIdentityType - The identity type.
type ResourceIdentityType string

const (
	ResourceIdentityTypeNone                       ResourceIdentityType = "None"
	ResourceIdentityTypeSystemAssigned             ResourceIdentityType = "SystemAssigned"
	ResourceIdentityTypeSystemAssignedUserAssigned ResourceIdentityType = "SystemAssigned, UserAssigned"
	ResourceIdentityTypeUserAssigned               ResourceIdentityType = "UserAssigned"
)

// PossibleResourceIdentityTypeValues returns the possible values for the ResourceIdentityType const type.
func PossibleResourceIdentityTypeValues() []ResourceIdentityType {
	return []ResourceIdentityType{
		ResourceIdentityTypeNone,
		ResourceIdentityTypeSystemAssigned,
		ResourceIdentityTypeSystemAssignedUserAssigned,
		ResourceIdentityTypeUserAssigned,
	}
}

// ResourceSKURestrictionsReasonCode - The reason for restriction.
type ResourceSKURestrictionsReasonCode string

const (
	ResourceSKURestrictionsReasonCodeNotAvailableForSubscription ResourceSKURestrictionsReasonCode = "NotAvailableForSubscription"
	ResourceSKURestrictionsReasonCodeQuotaID                     ResourceSKURestrictionsReasonCode = "QuotaId"
)

// PossibleResourceSKURestrictionsReasonCodeValues returns the possible values for the ResourceSKURestrictionsReasonCode const type.
func PossibleResourceSKURestrictionsReasonCodeValues() []ResourceSKURestrictionsReasonCode {
	return []ResourceSKURestrictionsReasonCode{
		ResourceSKURestrictionsReasonCodeNotAvailableForSubscription,
		ResourceSKURestrictionsReasonCodeQuotaID,
	}
}

// ResourceSKURestrictionsType - The type of restrictions.
type ResourceSKURestrictionsType string

const (
	ResourceSKURestrictionsTypeLocation ResourceSKURestrictionsType = "Location"
	ResourceSKURestrictionsTypeZone     ResourceSKURestrictionsType = "Zone"
)

// PossibleResourceSKURestrictionsTypeValues returns the possible values for the ResourceSKURestrictionsType const type.
func PossibleResourceSKURestrictionsTypeValues() []ResourceSKURestrictionsType {
	return []ResourceSKURestrictionsType{
		ResourceSKURestrictionsTypeLocation,
		ResourceSKURestrictionsTypeZone,
	}
}

// RoutingMethods - Multiregion routing methods.
type RoutingMethods string

const (
	RoutingMethodsPerformance RoutingMethods = "Performance"
	RoutingMethodsPriority    RoutingMethods = "Priority"
	RoutingMethodsWeighted    RoutingMethods = "Weighted"
)

// PossibleRoutingMethodsValues returns the possible values for the RoutingMethods const type.
func PossibleRoutingMethodsValues() []RoutingMethods {
	return []RoutingMethods{
		RoutingMethodsPerformance,
		RoutingMethodsPriority,
		RoutingMethodsWeighted,
	}
}

// SKUTier - This field is required to be implemented by the Resource Provider if the service has more than one tier, but
// is not required on a PUT.
type SKUTier string

const (
	SKUTierBasic      SKUTier = "Basic"
	SKUTierEnterprise SKUTier = "Enterprise"
	SKUTierFree       SKUTier = "Free"
	SKUTierPremium    SKUTier = "Premium"
	SKUTierStandard   SKUTier = "Standard"
)

// PossibleSKUTierValues returns the possible values for the SKUTier const type.
func PossibleSKUTierValues() []SKUTier {
	return []SKUTier{
		SKUTierBasic,
		SKUTierEnterprise,
		SKUTierFree,
		SKUTierPremium,
		SKUTierStandard,
	}
}

// ScenarioType - Specifies what features in AI Foundry network injection applies to. Currently only supports 'agent' for
// agent scenarios. 'none' means no network injection.
type ScenarioType string

const (
	ScenarioTypeAgent ScenarioType = "agent"
	ScenarioTypeNone  ScenarioType = "none"
)

// PossibleScenarioTypeValues returns the possible values for the ScenarioType const type.
func PossibleScenarioTypeValues() []ScenarioType {
	return []ScenarioType{
		ScenarioTypeAgent,
		ScenarioTypeNone,
	}
}

// UnitType - The unit of the metric.
type UnitType string

const (
	UnitTypeBytes          UnitType = "Bytes"
	UnitTypeBytesPerSecond UnitType = "BytesPerSecond"
	UnitTypeCount          UnitType = "Count"
	UnitTypeCountPerSecond UnitType = "CountPerSecond"
	UnitTypeMilliseconds   UnitType = "Milliseconds"
	UnitTypePercent        UnitType = "Percent"
	UnitTypeSeconds        UnitType = "Seconds"
)

// PossibleUnitTypeValues returns the possible values for the UnitType const type.
func PossibleUnitTypeValues() []UnitType {
	return []UnitType{
		UnitTypeBytes,
		UnitTypeBytesPerSecond,
		UnitTypeCount,
		UnitTypeCountPerSecond,
		UnitTypeMilliseconds,
		UnitTypePercent,
		UnitTypeSeconds,
	}
}
