import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to obtain CCI namespaces within HuaweiCloud.
 *
 * ## Example Usage
 * ### Get the specified namespace details
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const namespaceName = config.requireObject("namespaceName");
 * const test = huaweicloud.Cci.getNamespaces({
 *     name: namespaceName,
 * });
 * ```
 */
export declare function getNamespaces(args?: GetNamespacesArgs, opts?: pulumi.InvokeOptions): Promise<GetNamespacesResult>;
/**
 * A collection of arguments for invoking getNamespaces.
 */
export interface GetNamespacesArgs {
    /**
     * Specifies the enterprise project ID in UUID format.
     */
    enterpriseProjectId?: string;
    /**
     * Specifies th name of the specified CCI namespace.
     * This parameter can contain a maximum of 63 characters, which may consist of lowercase letters, digits and hyphens,
     * and must start and end with lowercase letters and digits.
     */
    name?: string;
    /**
     * Specifies the region in which to obtain the CCI namespace list.
     * If omitted, the provider-level region will be used.
     */
    region?: string;
    /**
     * Specifies the CCI namespace type.
     * The valid values are **general-computing** and **gpu-accelerated**.
     */
    type?: string;
}
/**
 * A collection of values returned by getNamespaces.
 */
export interface GetNamespacesResult {
    /**
     * The enterprise project ID in UUID format.
     */
    readonly enterpriseProjectId?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The CCI network name.
     */
    readonly name?: string;
    /**
     * All CCI namespaces that meet the query parameters.
     */
    readonly namespaces: outputs.Cci.GetNamespacesNamespace[];
    readonly region: string;
    /**
     * The CCI namespace type.
     */
    readonly type?: string;
}
export declare function getNamespacesOutput(args?: GetNamespacesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetNamespacesResult>;
/**
 * A collection of arguments for invoking getNamespaces.
 */
export interface GetNamespacesOutputArgs {
    /**
     * Specifies the enterprise project ID in UUID format.
     */
    enterpriseProjectId?: pulumi.Input<string>;
    /**
     * Specifies th name of the specified CCI namespace.
     * This parameter can contain a maximum of 63 characters, which may consist of lowercase letters, digits and hyphens,
     * and must start and end with lowercase letters and digits.
     */
    name?: pulumi.Input<string>;
    /**
     * Specifies the region in which to obtain the CCI namespace list.
     * If omitted, the provider-level region will be used.
     */
    region?: pulumi.Input<string>;
    /**
     * Specifies the CCI namespace type.
     * The valid values are **general-computing** and **gpu-accelerated**.
     */
    type?: pulumi.Input<string>;
}
