import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Returns a cache.
 *
 * Uses Azure REST API version 2024-03-01.
 *
 * Other available API versions: 2023-05-01, 2023-11-01-preview, 2024-07-01, 2025-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native storagecache [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getCache(args: GetCacheArgs, opts?: pulumi.InvokeOptions): Promise<GetCacheResult>;
export interface GetCacheArgs {
    /**
     * Name of cache. Length of name must not be greater than 80 and chars must be from the [-0-9a-zA-Z_] char class.
     */
    cacheName: string;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: string;
}
/**
 * A cache instance. Follows Azure Resource Manager standards: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md
 */
export interface GetCacheResult {
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: string;
    /**
     * The size of this Cache, in GB.
     */
    readonly cacheSizeGB?: number;
    /**
     * Specifies Directory Services settings of the cache.
     */
    readonly directoryServicesSettings?: outputs.storagecache.CacheDirectorySettingsResponse;
    /**
     * Specifies encryption settings of the cache.
     */
    readonly encryptionSettings?: outputs.storagecache.CacheEncryptionSettingsResponse;
    /**
     * Health of the cache.
     */
    readonly health: outputs.storagecache.CacheHealthResponse;
    /**
     * Resource ID of the cache.
     */
    readonly id: string;
    /**
     * The identity of the cache, if configured.
     */
    readonly identity?: outputs.storagecache.CacheIdentityResponse;
    /**
     * Region name string.
     */
    readonly location?: string;
    /**
     * Array of IPv4 addresses that can be used by clients mounting this cache.
     */
    readonly mountAddresses: string[];
    /**
     * Name of cache.
     */
    readonly name: string;
    /**
     * Specifies network settings of the cache.
     */
    readonly networkSettings?: outputs.storagecache.CacheNetworkSettingsResponse;
    /**
     * Specifies the priming jobs defined in the cache.
     */
    readonly primingJobs: outputs.storagecache.PrimingJobResponse[];
    /**
     * ARM provisioning state, see https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property
     */
    readonly provisioningState: string;
    /**
     * Specifies security settings of the cache.
     */
    readonly securitySettings?: outputs.storagecache.CacheSecuritySettingsResponse;
    /**
     * SKU for the cache.
     */
    readonly sku?: outputs.storagecache.CacheResponseSku;
    /**
     * Specifies the space allocation percentage for each storage target in the cache.
     */
    readonly spaceAllocation: outputs.storagecache.StorageTargetSpaceAllocationResponse[];
    /**
     * Subnet used for the cache.
     */
    readonly subnet?: string;
    /**
     * The system meta data relating to this resource.
     */
    readonly systemData: outputs.storagecache.SystemDataResponse;
    /**
     * Resource tags.
     */
    readonly tags?: {
        [key: string]: string;
    };
    /**
     * Type of the cache; Microsoft.StorageCache/Cache
     */
    readonly type: string;
    /**
     * Upgrade settings of the cache.
     */
    readonly upgradeSettings?: outputs.storagecache.CacheUpgradeSettingsResponse;
    /**
     * Upgrade status of the cache.
     */
    readonly upgradeStatus: outputs.storagecache.CacheUpgradeStatusResponse;
    /**
     * Availability zones for resources. This field should only contain a single element in the array.
     */
    readonly zones?: string[];
}
/**
 * Returns a cache.
 *
 * Uses Azure REST API version 2024-03-01.
 *
 * Other available API versions: 2023-05-01, 2023-11-01-preview, 2024-07-01, 2025-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native storagecache [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getCacheOutput(args: GetCacheOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetCacheResult>;
export interface GetCacheOutputArgs {
    /**
     * Name of cache. Length of name must not be greater than 80 and chars must be from the [-0-9a-zA-Z_] char class.
     */
    cacheName: pulumi.Input<string>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
}
