UNPKG

3.48 kBTypeScriptView Raw
1/*! firebase-admin v12.0.0 */
2import { SmsRegionConfig, MultiFactorConfig, MultiFactorAuthServerConfig, RecaptchaConfig, PasswordPolicyAuthServerConfig, PasswordPolicyConfig, EmailPrivacyConfig } from './auth-config';
3/**
4 * Interface representing the properties to update on the provided project config.
5 */
6export interface UpdateProjectConfigRequest {
7 /**
8 * The SMS configuration to update on the project.
9 */
10 smsRegionConfig?: SmsRegionConfig;
11 /**
12 * The multi-factor auth configuration to update on the project.
13 */
14 multiFactorConfig?: MultiFactorConfig;
15 /**
16 * The reCAPTCHA configuration to update on the project.
17 * By enabling reCAPTCHA Enterprise integration, you are
18 * agreeing to the reCAPTCHA Enterprise
19 * {@link https://cloud.google.com/terms/service-terms | Term of Service}.
20 */
21 recaptchaConfig?: RecaptchaConfig;
22 /**
23 * The password policy configuration to update on the project
24 */
25 passwordPolicyConfig?: PasswordPolicyConfig;
26 /**
27 * The email privacy configuration to update on the project
28 */
29 emailPrivacyConfig?: EmailPrivacyConfig;
30}
31/**
32 * Response received when getting or updating the project config.
33 */
34export interface ProjectConfigServerResponse {
35 smsRegionConfig?: SmsRegionConfig;
36 mfa?: MultiFactorAuthServerConfig;
37 recaptchaConfig?: RecaptchaConfig;
38 passwordPolicyConfig?: PasswordPolicyAuthServerConfig;
39 emailPrivacyConfig?: EmailPrivacyConfig;
40}
41/**
42 * Request to update the project config.
43 */
44export interface ProjectConfigClientRequest {
45 smsRegionConfig?: SmsRegionConfig;
46 mfa?: MultiFactorAuthServerConfig;
47 recaptchaConfig?: RecaptchaConfig;
48 passwordPolicyConfig?: PasswordPolicyAuthServerConfig;
49 emailPrivacyConfig?: EmailPrivacyConfig;
50}
51/**
52* Represents a project configuration.
53*/
54export declare class ProjectConfig {
55 /**
56 * The SMS Regions Config for the project.
57 * Configures the regions where users are allowed to send verification SMS.
58 * This is based on the calling code of the destination phone number.
59 */
60 readonly smsRegionConfig?: SmsRegionConfig;
61 /**
62 * The project's multi-factor auth configuration.
63 * Supports only phone and TOTP.
64 */
65 private readonly multiFactorConfig_?;
66 /**
67 * The multi-factor auth configuration.
68 */
69 get multiFactorConfig(): MultiFactorConfig | undefined;
70 /**
71 * The reCAPTCHA configuration to update on the project.
72 * By enabling reCAPTCHA Enterprise integration, you are
73 * agreeing to the reCAPTCHA Enterprise
74 * {@link https://cloud.google.com/terms/service-terms | Term of Service}.
75 */
76 private readonly recaptchaConfig_?;
77 /**
78 * The password policy configuration for the project
79 */
80 readonly passwordPolicyConfig?: PasswordPolicyConfig;
81 /**
82 * The email privacy configuration for the project
83 */
84 readonly emailPrivacyConfig?: EmailPrivacyConfig;
85 /**
86 * Validates a project config options object. Throws an error on failure.
87 *
88 * @param request - The project config options object to validate.
89 */
90 private static validate;
91 /**
92 * The reCAPTCHA configuration.
93 */
94 get recaptchaConfig(): RecaptchaConfig | undefined;
95 /**
96 * Returns a JSON-serializable representation of this object.
97 *
98 * @returns A JSON-serializable representation of this object.
99 */
100 toJSON(): object;
101}