import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get the list of IAM identity providers.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const providerName = config.requireObject("providerName");
 * const test = huaweicloud.Iam.getProviders({
 *     name: providerName,
 * });
 * ```
 */
export declare function getProviders(args?: GetProvidersArgs, opts?: pulumi.InvokeOptions): Promise<GetProvidersResult>;
/**
 * A collection of arguments for invoking getProviders.
 */
export interface GetProvidersArgs {
    /**
     * Specifies the name of the identity provider.
     */
    name?: string;
    /**
     * Specifies the single sign-on type of the identity provider.
     */
    ssoType?: string;
    /**
     * Specifies the status of the identity provider. The value can be **true** or **false**
     */
    status?: string;
}
/**
 * A collection of values returned by getProviders.
 */
export interface GetProvidersResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The list of identity providers.
     */
    readonly identityProviders: outputs.Iam.GetProvidersIdentityProvider[];
    readonly name?: string;
    /**
     * The single sign-on type of the identity provider.
     */
    readonly ssoType?: string;
    /**
     * The enabled status for the identity provider.
     */
    readonly status?: string;
}
export declare function getProvidersOutput(args?: GetProvidersOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetProvidersResult>;
/**
 * A collection of arguments for invoking getProviders.
 */
export interface GetProvidersOutputArgs {
    /**
     * Specifies the name of the identity provider.
     */
    name?: pulumi.Input<string>;
    /**
     * Specifies the single sign-on type of the identity provider.
     */
    ssoType?: pulumi.Input<string>;
    /**
     * Specifies the status of the identity provider. The value can be **true** or **false**
     */
    status?: pulumi.Input<string>;
}
