import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get the certificate of a CCE cluster within HuaweiCloud.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const clusterId = config.requireObject("clusterId");
 * const test = huaweicloud.Cce.getClusterCertificates({
 *     clusterId: clusterId,
 *     duration: 30,
 * });
 * ```
 */
export declare function getClusterCertificates(args: GetClusterCertificatesArgs, opts?: pulumi.InvokeOptions): Promise<GetClusterCertificatesResult>;
/**
 * A collection of arguments for invoking getClusterCertificates.
 */
export interface GetClusterCertificatesArgs {
    /**
     * Specifies the cluster ID which the cluster certificate in.
     */
    clusterId: string;
    /**
     * Specifies the duration of the cluster certificate. The unit is days. The valid value in
     * [1, 1827]. If the input value is -1, it will use the maximum 1827 as `duration` value.
     */
    duration: number;
    /**
     * Specifies the region in which to obtain the CCE cluster certificate. If omitted, the
     * provider-level region will be used.
     */
    region?: string;
}
/**
 * A collection of values returned by getClusterCertificates.
 */
export interface GetClusterCertificatesResult {
    readonly clusterId: string;
    /**
     * The clusters information of the cluster certificate.
     * The clusters structure is documented below.
     */
    readonly clusters: outputs.Cce.GetClusterCertificatesCluster[];
    /**
     * The contexts information of the cluster certificate.
     * The contexts structure is documented below.
     */
    readonly contexts: outputs.Cce.GetClusterCertificatesContext[];
    /**
     * The current context of the cluster certificate.
     */
    readonly currentContext: string;
    readonly duration: number;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Raw Kubernetes config to be used by kubectl and other compatible tools.
     */
    readonly kubeConfigRaw: string;
    readonly region: string;
    /**
     * The users information of cluster the certificate.
     * The users structure is documented below.
     */
    readonly users: outputs.Cce.GetClusterCertificatesUser[];
}
export declare function getClusterCertificatesOutput(args: GetClusterCertificatesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetClusterCertificatesResult>;
/**
 * A collection of arguments for invoking getClusterCertificates.
 */
export interface GetClusterCertificatesOutputArgs {
    /**
     * Specifies the cluster ID which the cluster certificate in.
     */
    clusterId: pulumi.Input<string>;
    /**
     * Specifies the duration of the cluster certificate. The unit is days. The valid value in
     * [1, 1827]. If the input value is -1, it will use the maximum 1827 as `duration` value.
     */
    duration: pulumi.Input<number>;
    /**
     * Specifies the region in which to obtain the CCE cluster certificate. If omitted, the
     * provider-level region will be used.
     */
    region?: pulumi.Input<string>;
}
