# Source code for azure.mgmt.mixedreality.models.check_name_availability_response_py3

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

    from msrest.serialization import Model

    class CheckNameAvailabilityResponse(Model):
        """Check Name Availability Response.

        All required parameters must be populated in order to send to Azure.

        :param name_available: Required. if name Available. Possible values
         include: 'true', 'false'
        :type name_available: str or
         ~azure.mgmt.mixedreality.models.NameAvailability
        :param reason: Resource Name To Verify. Possible values include:
         'Invalid', 'AlreadyExists'
        :type reason: str or ~azure.mgmt.mixedreality.models.NameUnavailableReason
        :param message: detail message
        :type message: str
        """

        _validation = {
            'name_available': {'required': True},
        }

        _attribute_map = {
            'name_available': {'key': 'nameAvailable', 'type': 'str'},
            'reason': {'key': 'reason', 'type': 'str'},
            'message': {'key': 'message', 'type': 'str'},
        }

        def __init__(self, *, name_available, reason=None, message: str=None, **kwargs) -> None:
            super(CheckNameAvailabilityResponse, self).__init__(**kwargs)
            self.name_available = name_available
            self.reason = reason
            self.message = message