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

package com.azure.resourcemanager.elasticsan.models;

import com.azure.resourcemanager.elasticsan.fluent.models.SkuInformationInner;
import java.util.List;

/** An immutable client-side representation of SkuInformation. */
public interface SkuInformation {
    /**
     * Gets the name property: Sku Name.
     *
     * @return the name value.
     */
    SkuName name();

    /**
     * Gets the tier property: Sku Tier.
     *
     * @return the tier value.
     */
    SkuTier tier();

    /**
     * Gets the resourceType property: The type of the resource.
     *
     * @return the resourceType value.
     */
    String resourceType();

    /**
     * Gets the locations property: The set of locations that the SKU is available. This will be supported and
     * registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.).
     *
     * @return the locations value.
     */
    List<String> locations();

    /**
     * Gets the locationInfo property: Availability of the SKU for the location/zone.
     *
     * @return the locationInfo value.
     */
    List<SkuLocationInfo> locationInfo();

    /**
     * Gets the capabilities property: The capability information in the specified SKU.
     *
     * @return the capabilities value.
     */
    List<SkuCapability> capabilities();

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