// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.datamigration.models;

import com.azure.resourcemanager.datamigration.fluent.models.NameAvailabilityResponseInner;

/** An immutable client-side representation of NameAvailabilityResponse. */
public interface NameAvailabilityResponse {
    /**
     * Gets the nameAvailable property: If true, the name is valid and available. If false, 'reason' describes why not.
     *
     * @return the nameAvailable value.
     */
    Boolean nameAvailable();

    /**
     * Gets the reason property: The reason why the name is not available, if nameAvailable is false.
     *
     * @return the reason value.
     */
    NameCheckFailureReason reason();

    /**
     * Gets the message property: The localized reason why the name is not available, if nameAvailable is false.
     *
     * @return the message value.
     */
    String message();

    /**
     * Gets the inner com.azure.resourcemanager.datamigration.fluent.models.NameAvailabilityResponseInner object.
     *
     * @return the inner object.
     */
    NameAvailabilityResponseInner innerModel();
}
