# coding=utf-8
# --------------------------------------------------------------------------
# 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) Python Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

from enum import Enum
from azure.core import CaseInsensitiveEnumMeta


class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
    """The kind of entity that created the resource."""

    USER = "User"
    """The entity was created by a user."""
    APPLICATION = "Application"
    """The entity was created by an application."""
    MANAGED_IDENTITY = "ManagedIdentity"
    """The entity was created by a managed identity."""
    KEY = "Key"
    """The entity was created by a key."""


class ProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta):
    """The provisioning state of the resource. This is a read-only property and any attempt to set
    this value will be ignored.
    """

    CREATING = "Creating"
    """CREATING."""
    UPDATING = "Updating"
    """UPDATING."""
    DELETING = "Deleting"
    """DELETING."""
    SUCCEEDED = "Succeeded"
    """SUCCEEDED."""
    FAILED = "Failed"
    """FAILED."""
    CANCELED = "Canceled"
    """CANCELED."""


class RecordType(str, Enum, metaclass=CaseInsensitiveEnumMeta):
    """Type of RecordType."""

    A = "A"
    """A."""
    AAAA = "AAAA"
    """AAAA."""
    CNAME = "CNAME"
    """CNAME."""
    MX = "MX"
    """MX."""
    PTR = "PTR"
    """PTR."""
    SOA = "SOA"
    """SOA."""
    SRV = "SRV"
    """SRV."""
    TXT = "TXT"
    """TXT."""


class ResolutionPolicy(str, Enum, metaclass=CaseInsensitiveEnumMeta):
    """The resolution policy on the virtual network link. Only applicable for virtual network links to
    privatelink zones, and for A,AAAA,CNAME queries. When set to 'NxDomainRedirect', Azure DNS
    resolver falls back to public resolution if private dns query resolution results in
    non-existent domain response.
    """

    DEFAULT = "Default"
    """DEFAULT."""
    NX_DOMAIN_REDIRECT = "NxDomainRedirect"
    """NX_DOMAIN_REDIRECT."""


class VirtualNetworkLinkState(str, Enum, metaclass=CaseInsensitiveEnumMeta):
    """The status of the virtual network link to the Private DNS zone. Possible values are
    'InProgress' and 'Done'. This is a read-only property and any attempt to set this value will be
    ignored.
    """

    IN_PROGRESS = "InProgress"
    """IN_PROGRESS."""
    COMPLETED = "Completed"
    """COMPLETED."""
