import * as core from "@terrascript/core";
export interface CognitoIdentityProvidersArgs extends core.SchemaArgs {
    clientId?: string | core.StringOut;
    providerName?: string | core.StringOut;
    serverSideTokenCheck?: boolean | core.BooleanOut;
}
export declare class CognitoIdentityProviders extends core.Schema<CognitoIdentityProvidersArgs> {
    clientId?: string | core.StringOut;
    providerName?: string | core.StringOut;
    serverSideTokenCheck?: boolean | core.BooleanOut;
}
export interface PoolArgs extends core.ResourceArgs {
    allowClassicFlow?: boolean | core.BooleanOut;
    allowUnauthenticatedIdentities?: boolean | core.BooleanOut;
    cognitoIdentityProviders?: core.Array<CognitoIdentityProviders> | core.ArrayOut<CognitoIdentityProviders>;
    developerProviderName?: string | core.StringOut;
    identityPoolName: string | core.StringOut;
    openidConnectProviderArns?: core.Array<string> | core.ArrayOut<core.StringOut>;
    samlProviderArns?: core.Array<string> | core.ArrayOut<core.StringOut>;
    supportedLoginProviders?: core.Map<string, string> | core.MapOut<core.StringOut>;
    /**
     * (Optional) A map of tags to assign to the Identity Pool. If configured with a provider [`default_tag
     * s` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_ta
     * gs-configuration-block) present, tags with matching keys will overwrite those defined at the provide
     * r-level.
     */
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    /**
     * A map of tags assigned to the resource, including those inherited from the provider [`default_tags`
     * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-
     * configuration-block).
     */
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
}
export declare class Pool extends core.Resource<PoolArgs> {
    allowClassicFlow?: boolean | core.BooleanOut;
    allowUnauthenticatedIdentities?: boolean | core.BooleanOut;
    /**
     * The ARN of the identity pool.
     */
    arn: string | core.StringOut;
    cognitoIdentityProviders?: core.Array<CognitoIdentityProviders> | core.ArrayOut<CognitoIdentityProviders>;
    developerProviderName?: string | core.StringOut;
    /**
     * An identity pool ID, e.g. `us-west-2_abc123`.
     */
    id: string | core.StringOut;
    identityPoolName: string | core.StringOut;
    openidConnectProviderArns?: core.Array<string> | core.ArrayOut<core.StringOut>;
    samlProviderArns?: core.Array<string> | core.ArrayOut<core.StringOut>;
    supportedLoginProviders?: core.Map<string, string> | core.MapOut<core.StringOut>;
    /**
     * (Optional) A map of tags to assign to the Identity Pool. If configured with a provider [`default_tag
     * s` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_ta
     * gs-configuration-block) present, tags with matching keys will overwrite those defined at the provide
     * r-level.
     */
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    /**
     * A map of tags assigned to the resource, including those inherited from the provider [`default_tags`
     * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-
     * configuration-block).
     */
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    constructor(name: string, args?: PoolArgs);
    getNamespace(): string;
}
//# sourceMappingURL=pool.d.ts.map