import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get the list of the SFS turbos.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const sfsTurboName = config.requireObject("sfsTurboName");
 * const test = huaweicloud.Sfs.getTurbos({
 *     name: sfsTurboName,
 * });
 * ```
 */
export declare function getTurbos(args?: GetTurbosArgs, opts?: pulumi.InvokeOptions): Promise<GetTurbosResult>;
/**
 * A collection of arguments for invoking getTurbos.
 */
export interface GetTurbosArgs {
    /**
     * The enterprise project ID of the SFS turbo file system.
     */
    enterpriseProjectId?: string;
    /**
     * Specifies the name of the SFS turbo file system.
     */
    name?: string;
    /**
     * Specifies the region in which to obtain the SFS turbo file systems.
     * If omitted, the provider-level region will be used.
     */
    region?: string;
    /**
     * Specifies the protocol of the SFS turbo file system. The valid value is **NFS**.
     */
    shareProto?: string;
    /**
     * Specifies the type of the SFS turbo file system.
     * The valid values are **STANDARD** and **PERFORMANCE**.
     */
    shareType?: string;
    /**
     * Specifies the capacity of the SFS turbo file system, in GB.
     * The value ranges from `500` to `32,768`, and must be large than `10,240` for an enhanced file system.
     */
    size?: number;
}
/**
 * A collection of values returned by getTurbos.
 */
export interface GetTurbosResult {
    /**
     * The enterprise project ID of the SFS turbo file system.
     */
    readonly enterpriseProjectId?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The name of the SFS turbo file system.
     */
    readonly name?: string;
    readonly region?: string;
    /**
     * The protocol of the SFS turbo file system.
     */
    readonly shareProto?: string;
    /**
     * The type of the SFS turbo file system.
     */
    readonly shareType?: string;
    /**
     * The capacity of the SFS turbo file system.
     */
    readonly size?: number;
    /**
     * The list of the SFS turbo file systems. The object structure is documented below.
     */
    readonly turbos: outputs.Sfs.GetTurbosTurbo[];
}
export declare function getTurbosOutput(args?: GetTurbosOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetTurbosResult>;
/**
 * A collection of arguments for invoking getTurbos.
 */
export interface GetTurbosOutputArgs {
    /**
     * The enterprise project ID of the SFS turbo file system.
     */
    enterpriseProjectId?: pulumi.Input<string>;
    /**
     * Specifies the name of the SFS turbo file system.
     */
    name?: pulumi.Input<string>;
    /**
     * Specifies the region in which to obtain the SFS turbo file systems.
     * If omitted, the provider-level region will be used.
     */
    region?: pulumi.Input<string>;
    /**
     * Specifies the protocol of the SFS turbo file system. The valid value is **NFS**.
     */
    shareProto?: pulumi.Input<string>;
    /**
     * Specifies the type of the SFS turbo file system.
     * The valid values are **STANDARD** and **PERFORMANCE**.
     */
    shareType?: pulumi.Input<string>;
    /**
     * Specifies the capacity of the SFS turbo file system, in GB.
     * The value ranges from `500` to `32,768`, and must be large than `10,240` for an enhanced file system.
     */
    size?: pulumi.Input<number>;
}
