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

package com.azure.resourcemanager.datalakestore.models;

import com.azure.resourcemanager.datalakestore.fluent.models.CapabilityInformationInner;
import java.util.UUID;

/** An immutable client-side representation of CapabilityInformation. */
public interface CapabilityInformation {
    /**
     * Gets the subscriptionId property: The subscription credentials that uniquely identifies the subscription.
     *
     * @return the subscriptionId value.
     */
    UUID subscriptionId();

    /**
     * Gets the state property: The subscription state.
     *
     * @return the state value.
     */
    SubscriptionState state();

    /**
     * Gets the maxAccountCount property: The maximum supported number of accounts under this subscription.
     *
     * @return the maxAccountCount value.
     */
    Integer maxAccountCount();

    /**
     * Gets the accountCount property: The current number of accounts under this subscription.
     *
     * @return the accountCount value.
     */
    Integer accountCount();

    /**
     * Gets the migrationState property: The Boolean value of true or false to indicate the maintenance state.
     *
     * @return the migrationState value.
     */
    Boolean migrationState();

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