import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Use this data source to access information about an existing File Share.
 *
 * > **Note:** Shared Key authentication will always be used for this data source, as AzureAD authentication is not supported by the Storage API for files.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.storage.getAccount({
 *     name: "exampleaccount",
 *     resourceGroupName: "examples",
 * });
 * const exampleGetShare = example.then(example => azure.storage.getShare({
 *     name: "existing",
 *     storageAccountId: example.id,
 * }));
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Storage` - 2025-08-01
 */
export declare function getShare(args: GetShareArgs, opts?: pulumi.InvokeOptions): Promise<GetShareResult>;
/**
 * A collection of arguments for invoking getShare.
 */
export interface GetShareArgs {
    /**
     * One or more acl blocks as defined below.
     */
    acls?: inputs.storage.GetShareAcl[];
    /**
     * A map of custom file share metadata.
     */
    metadata?: {
        [key: string]: string;
    };
    /**
     * The name of the share.
     */
    name: string;
    /**
     * The ID of the storage account in which the share exists.
     *
     * > **Note:** One of `storageAccountName` or `storageAccountId` must be specified. When specifying `storageAccountId` the resource will use the Resource Manager API, rather than the Data Plane API.
     */
    storageAccountId?: string;
    /**
     * The name of the storage account in which the share exists. This property is deprecated in favour of `storageAccountId`.
     */
    storageAccountName?: string;
}
/**
 * A collection of values returned by getShare.
 */
export interface GetShareResult {
    /**
     * One or more acl blocks as defined below.
     */
    readonly acls?: outputs.storage.GetShareAcl[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * A map of custom file share metadata.
     */
    readonly metadata: {
        [key: string]: string;
    };
    readonly name: string;
    /**
     * The quota of the File Share in GB.
     */
    readonly quota: number;
    /**
     * The ID that is supposed to be used as the `scope` of an `azurermRoleAssignmet` for this File Share.
     */
    readonly rbacScopeId: string;
    /**
     * @deprecated this property has been deprecated in favour of `id` and will be removed in version 5.0 of the Provider.
     */
    readonly resourceManagerId: string;
    readonly storageAccountId?: string;
    readonly storageAccountName?: string;
}
/**
 * Use this data source to access information about an existing File Share.
 *
 * > **Note:** Shared Key authentication will always be used for this data source, as AzureAD authentication is not supported by the Storage API for files.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.storage.getAccount({
 *     name: "exampleaccount",
 *     resourceGroupName: "examples",
 * });
 * const exampleGetShare = example.then(example => azure.storage.getShare({
 *     name: "existing",
 *     storageAccountId: example.id,
 * }));
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Storage` - 2025-08-01
 */
export declare function getShareOutput(args: GetShareOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetShareResult>;
/**
 * A collection of arguments for invoking getShare.
 */
export interface GetShareOutputArgs {
    /**
     * One or more acl blocks as defined below.
     */
    acls?: pulumi.Input<pulumi.Input<inputs.storage.GetShareAclArgs>[] | undefined>;
    /**
     * A map of custom file share metadata.
     */
    metadata?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The name of the share.
     */
    name: pulumi.Input<string>;
    /**
     * The ID of the storage account in which the share exists.
     *
     * > **Note:** One of `storageAccountName` or `storageAccountId` must be specified. When specifying `storageAccountId` the resource will use the Resource Manager API, rather than the Data Plane API.
     */
    storageAccountId?: pulumi.Input<string | undefined>;
    /**
     * The name of the storage account in which the share exists. This property is deprecated in favour of `storageAccountId`.
     */
    storageAccountName?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getShare.d.ts.map