import * as pulumi from "@pulumi/pulumi";
import * as types from "./types";
/**
 * Identity Provider details.
 */
export declare class IdentityProvider extends pulumi.CustomResource {
    /**
     * Get an existing IdentityProvider resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): IdentityProvider;
    /** @internal */
    static readonly __pulumiType = "azure-native:apimanagement/v20190101:IdentityProvider";
    /**
     * Returns true if the given object is an instance of IdentityProvider.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is IdentityProvider;
    /**
     * List of Allowed Tenants when configuring Azure Active Directory login.
     */
    readonly allowedTenants: pulumi.Output<string[] | undefined>;
    /**
     * OpenID Connect discovery endpoint hostname for AAD or AAD B2C.
     */
    readonly authority: pulumi.Output<string | undefined>;
    /**
     * Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.
     */
    readonly clientId: pulumi.Output<string>;
    /**
     * Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft.
     */
    readonly clientSecret: pulumi.Output<string>;
    /**
     * Resource name.
     */
    readonly name: pulumi.Output<string>;
    /**
     * Password Reset Policy Name. Only applies to AAD B2C Identity Provider.
     */
    readonly passwordResetPolicyName: pulumi.Output<string | undefined>;
    /**
     * Profile Editing Policy Name. Only applies to AAD B2C Identity Provider.
     */
    readonly profileEditingPolicyName: pulumi.Output<string | undefined>;
    /**
     * Signin Policy Name. Only applies to AAD B2C Identity Provider.
     */
    readonly signinPolicyName: pulumi.Output<string | undefined>;
    /**
     * The TenantId to use instead of Common when logging into Active Directory
     */
    readonly signinTenant: pulumi.Output<string | undefined>;
    /**
     * Signup Policy Name. Only applies to AAD B2C Identity Provider.
     */
    readonly signupPolicyName: pulumi.Output<string | undefined>;
    /**
     * Resource type for API Management resource.
     */
    readonly type: pulumi.Output<string>;
    /**
     * Create a IdentityProvider resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: IdentityProviderArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a IdentityProvider resource.
 */
export interface IdentityProviderArgs {
    /**
     * List of Allowed Tenants when configuring Azure Active Directory login.
     */
    allowedTenants?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * OpenID Connect discovery endpoint hostname for AAD or AAD B2C.
     */
    authority?: pulumi.Input<string>;
    /**
     * Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.
     */
    clientId: pulumi.Input<string>;
    /**
     * Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft.
     */
    clientSecret: pulumi.Input<string>;
    /**
     * Identity Provider Type identifier.
     */
    identityProviderName?: pulumi.Input<string>;
    /**
     * Password Reset Policy Name. Only applies to AAD B2C Identity Provider.
     */
    passwordResetPolicyName?: pulumi.Input<string>;
    /**
     * Profile Editing Policy Name. Only applies to AAD B2C Identity Provider.
     */
    profileEditingPolicyName?: pulumi.Input<string>;
    /**
     * The name of the resource group.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * The name of the API Management service.
     */
    serviceName: pulumi.Input<string>;
    /**
     * Signin Policy Name. Only applies to AAD B2C Identity Provider.
     */
    signinPolicyName?: pulumi.Input<string>;
    /**
     * The TenantId to use instead of Common when logging into Active Directory
     */
    signinTenant?: pulumi.Input<string>;
    /**
     * Signup Policy Name. Only applies to AAD B2C Identity Provider.
     */
    signupPolicyName?: pulumi.Input<string>;
    /**
     * Identity Provider Type identifier.
     */
    type?: pulumi.Input<string | types.enums.IdentityProviderType>;
}
