import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Create a tenant. Requires write permission on the Agent project. * Auto-naming is currently not supported for this resource. */ export declare class Tenant extends pulumi.CustomResource { /** * Get an existing Tenant 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, opts?: pulumi.CustomResourceOptions): Tenant; /** * Returns true if the given object is an instance of Tenant. 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 Tenant; /** * Whether to allow email/password user authentication. */ readonly allowPasswordSignup: pulumi.Output; /** * Whether anonymous users will be auto-deleted after a period of 30 days. */ readonly autodeleteAnonymousUsers: pulumi.Output; /** * Options related to how clients making requests on behalf of a project should be configured. */ readonly client: pulumi.Output; /** * Whether authentication is disabled for the tenant. If true, the users under the disabled tenant are not allowed to sign-in. Admins of the disabled tenant are not able to manage its users. */ readonly disableAuth: pulumi.Output; /** * Display name of the tenant. */ readonly displayName: pulumi.Output; /** * Configuration for settings related to email privacy and public visibility. */ readonly emailPrivacyConfig: pulumi.Output; /** * Whether to enable anonymous user authentication. */ readonly enableAnonymousUser: pulumi.Output; /** * Whether to enable email link user authentication. */ readonly enableEmailLinkSignin: pulumi.Output; /** * Hash config information of a tenant for display on Pantheon. This can only be displayed on Pantheon to avoid the sensitive information to get accidentally leaked. Only returned in GetTenant response to restrict reading of this information. Requires firebaseauth.configs.getHashConfig permission on the agent project for returning this field. */ readonly hashConfig: pulumi.Output; /** * Specify the settings that the tenant could inherit. */ readonly inheritance: pulumi.Output; /** * The tenant-level configuration of MFA options. */ readonly mfaConfig: pulumi.Output; /** * Configuration related to monitoring project activity. */ readonly monitoring: pulumi.Output; /** * Resource name of a tenant. For example: "projects/{project-id}/tenants/{tenant-id}" */ readonly name: pulumi.Output; /** * The tenant-level password policy config */ readonly passwordPolicyConfig: pulumi.Output; readonly project: pulumi.Output; /** * The tenant-level reCAPTCHA config. */ readonly recaptchaConfig: pulumi.Output; /** * Configures which regions are enabled for SMS verification code sending. */ readonly smsRegionConfig: pulumi.Output; /** * A map of pairs that can be used for MFA. The phone number should be in E.164 format (https://www.itu.int/rec/T-REC-E.164/) and a maximum of 10 pairs can be added (error will be thrown once exceeded). */ readonly testPhoneNumbers: pulumi.Output<{ [key: string]: string; }>; /** * Create a Tenant 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?: TenantArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Tenant resource. */ export interface TenantArgs { /** * Whether to allow email/password user authentication. */ allowPasswordSignup?: pulumi.Input; /** * Whether anonymous users will be auto-deleted after a period of 30 days. */ autodeleteAnonymousUsers?: pulumi.Input; /** * Options related to how clients making requests on behalf of a project should be configured. */ client?: pulumi.Input; /** * Whether authentication is disabled for the tenant. If true, the users under the disabled tenant are not allowed to sign-in. Admins of the disabled tenant are not able to manage its users. */ disableAuth?: pulumi.Input; /** * Display name of the tenant. */ displayName?: pulumi.Input; /** * Configuration for settings related to email privacy and public visibility. */ emailPrivacyConfig?: pulumi.Input; /** * Whether to enable anonymous user authentication. */ enableAnonymousUser?: pulumi.Input; /** * Whether to enable email link user authentication. */ enableEmailLinkSignin?: pulumi.Input; /** * Specify the settings that the tenant could inherit. */ inheritance?: pulumi.Input; /** * The tenant-level configuration of MFA options. */ mfaConfig?: pulumi.Input; /** * Configuration related to monitoring project activity. */ monitoring?: pulumi.Input; /** * The tenant-level password policy config */ passwordPolicyConfig?: pulumi.Input; project?: pulumi.Input; /** * The tenant-level reCAPTCHA config. */ recaptchaConfig?: pulumi.Input; /** * Configures which regions are enabled for SMS verification code sending. */ smsRegionConfig?: pulumi.Input; /** * A map of pairs that can be used for MFA. The phone number should be in E.164 format (https://www.itu.int/rec/T-REC-E.164/) and a maximum of 10 pairs can be added (error will be thrown once exceeded). */ testPhoneNumbers?: pulumi.Input<{ [key: string]: pulumi.Input; }>; }