firebase-admin 13.9.0 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/README.md +1 -2
  2. package/lib/app/core.d.ts +2 -38
  3. package/lib/app/core.js +1 -1
  4. package/lib/app/credential-factory.d.ts +1 -1
  5. package/lib/app/credential-factory.js +1 -1
  6. package/lib/app/credential-internal.d.ts +1 -1
  7. package/lib/app/credential-internal.js +48 -17
  8. package/lib/app/credential.d.ts +1 -1
  9. package/lib/app/credential.js +1 -1
  10. package/lib/app/error.d.ts +47 -0
  11. package/lib/app/error.js +57 -0
  12. package/lib/app/firebase-app.d.ts +1 -1
  13. package/lib/app/firebase-app.js +28 -12
  14. package/lib/app/index.d.ts +4 -3
  15. package/lib/app/index.js +6 -4
  16. package/lib/app/lifecycle.d.ts +2 -2
  17. package/lib/app/lifecycle.js +46 -21
  18. package/lib/app-check/app-check-api-client-internal.d.ts +2 -16
  19. package/lib/app-check/app-check-api-client-internal.js +71 -47
  20. package/lib/app-check/app-check-api.d.ts +19 -1
  21. package/lib/app-check/app-check-api.js +1 -1
  22. package/lib/app-check/app-check.d.ts +1 -1
  23. package/lib/app-check/app-check.js +7 -3
  24. package/lib/app-check/error.d.ts +47 -0
  25. package/lib/app-check/error.js +65 -0
  26. package/lib/app-check/index.d.ts +2 -1
  27. package/lib/app-check/index.js +5 -2
  28. package/lib/app-check/token-generator.d.ts +1 -1
  29. package/lib/app-check/token-generator.js +43 -13
  30. package/lib/app-check/token-verifier.d.ts +1 -1
  31. package/lib/app-check/token-verifier.js +39 -11
  32. package/lib/auth/action-code-settings-builder.d.ts +1 -1
  33. package/lib/auth/action-code-settings-builder.js +16 -16
  34. package/lib/auth/auth-api-request.d.ts +6 -4
  35. package/lib/auth/auth-api-request.js +277 -166
  36. package/lib/auth/auth-config.d.ts +31 -2
  37. package/lib/auth/auth-config.js +103 -103
  38. package/lib/auth/auth.d.ts +1 -1
  39. package/lib/auth/auth.js +1 -1
  40. package/lib/auth/base-auth.d.ts +2 -1
  41. package/lib/auth/base-auth.js +29 -27
  42. package/lib/auth/error.d.ts +137 -0
  43. package/lib/auth/error.js +690 -0
  44. package/lib/auth/identifier.d.ts +1 -1
  45. package/lib/auth/identifier.js +1 -1
  46. package/lib/auth/index.d.ts +2 -2
  47. package/lib/auth/index.js +4 -4
  48. package/lib/auth/project-config-manager.d.ts +1 -1
  49. package/lib/auth/project-config-manager.js +1 -1
  50. package/lib/auth/project-config.d.ts +1 -1
  51. package/lib/auth/project-config.js +4 -4
  52. package/lib/auth/tenant-manager.d.ts +2 -1
  53. package/lib/auth/tenant-manager.js +13 -10
  54. package/lib/auth/tenant.d.ts +1 -1
  55. package/lib/auth/tenant.js +7 -7
  56. package/lib/auth/token-generator.d.ts +1 -1
  57. package/lib/auth/token-generator.js +13 -13
  58. package/lib/auth/token-verifier.d.ts +1 -1
  59. package/lib/auth/token-verifier.js +22 -22
  60. package/lib/auth/user-import-builder.d.ts +1 -1
  61. package/lib/auth/user-import-builder.js +22 -22
  62. package/lib/auth/user-record.d.ts +1 -1
  63. package/lib/auth/user-record.js +6 -6
  64. package/lib/credential/index.d.ts +1 -1
  65. package/lib/credential/index.js +1 -1
  66. package/lib/data-connect/data-connect-api-client-internal.d.ts +1 -16
  67. package/lib/data-connect/data-connect-api-client-internal.js +122 -65
  68. package/lib/data-connect/data-connect-api.d.ts +1 -1
  69. package/lib/data-connect/data-connect-api.js +1 -1
  70. package/lib/data-connect/data-connect.d.ts +1 -1
  71. package/lib/data-connect/data-connect.js +1 -1
  72. package/lib/data-connect/error.d.ts +47 -0
  73. package/lib/data-connect/error.js +66 -0
  74. package/lib/data-connect/index.d.ts +2 -1
  75. package/lib/data-connect/index.js +5 -2
  76. package/lib/data-connect/validate-admin-args.d.ts +1 -1
  77. package/lib/data-connect/validate-admin-args.js +6 -3
  78. package/lib/database/database.d.ts +1 -1
  79. package/lib/database/database.js +11 -6
  80. package/lib/database/error.d.ts +39 -0
  81. package/lib/database/error.js +49 -0
  82. package/lib/database/index.d.ts +2 -2
  83. package/lib/database/index.js +4 -3
  84. package/lib/esm/app/index.js +2 -1
  85. package/lib/esm/app-check/index.js +2 -0
  86. package/lib/esm/auth/index.js +1 -1
  87. package/lib/esm/data-connect/index.js +2 -0
  88. package/lib/esm/database/index.js +1 -0
  89. package/lib/esm/eventarc/index.js +2 -0
  90. package/lib/esm/extensions/index.js +2 -0
  91. package/lib/esm/firebase-admin/index.js +13 -0
  92. package/lib/esm/firestore/index.js +1 -0
  93. package/lib/esm/functions/index.js +2 -0
  94. package/lib/esm/installations/index.js +1 -1
  95. package/lib/esm/machine-learning/index.js +2 -0
  96. package/lib/esm/messaging/index.js +1 -1
  97. package/lib/esm/phone-number-verification/index.js +2 -0
  98. package/lib/esm/project-management/index.js +1 -0
  99. package/lib/esm/remote-config/index.js +2 -0
  100. package/lib/esm/security-rules/index.js +2 -0
  101. package/lib/esm/storage/index.js +2 -0
  102. package/lib/eventarc/cloudevent.d.ts +1 -1
  103. package/lib/eventarc/cloudevent.js +1 -1
  104. package/lib/eventarc/error.d.ts +38 -0
  105. package/lib/eventarc/error.js +47 -0
  106. package/lib/eventarc/eventarc-client-internal.d.ts +1 -1
  107. package/lib/eventarc/eventarc-client-internal.js +24 -9
  108. package/lib/eventarc/eventarc-utils.d.ts +1 -13
  109. package/lib/eventarc/eventarc-utils.js +36 -26
  110. package/lib/eventarc/eventarc.d.ts +1 -1
  111. package/lib/eventarc/eventarc.js +18 -6
  112. package/lib/eventarc/index.d.ts +2 -1
  113. package/lib/eventarc/index.js +5 -2
  114. package/lib/extensions/error.d.ts +41 -0
  115. package/lib/extensions/error.js +50 -0
  116. package/lib/extensions/extensions-api-client-internal.d.ts +1 -13
  117. package/lib/extensions/extensions-api-client-internal.js +40 -28
  118. package/lib/extensions/extensions-api.d.ts +1 -1
  119. package/lib/extensions/extensions-api.js +1 -1
  120. package/lib/extensions/extensions.d.ts +1 -1
  121. package/lib/extensions/extensions.js +18 -5
  122. package/lib/extensions/index.d.ts +2 -1
  123. package/lib/extensions/index.js +5 -2
  124. package/lib/firestore/error.d.ts +41 -0
  125. package/lib/firestore/error.js +51 -0
  126. package/lib/firestore/firestore-internal.d.ts +2 -1
  127. package/lib/firestore/firestore-internal.js +6 -6
  128. package/lib/firestore/index.d.ts +2 -2
  129. package/lib/firestore/index.js +7 -7
  130. package/lib/functions/error.d.ts +48 -0
  131. package/lib/functions/error.js +67 -0
  132. package/lib/functions/functions-api-client-internal.d.ts +1 -16
  133. package/lib/functions/functions-api-client-internal.js +111 -71
  134. package/lib/functions/functions-api.d.ts +1 -1
  135. package/lib/functions/functions-api.js +1 -1
  136. package/lib/functions/functions.d.ts +1 -1
  137. package/lib/functions/functions.js +14 -4
  138. package/lib/functions/index.d.ts +2 -1
  139. package/lib/functions/index.js +5 -2
  140. package/lib/index.d.ts +13 -8
  141. package/lib/index.js +19 -3
  142. package/lib/installations/error.d.ts +48 -0
  143. package/lib/installations/error.js +73 -0
  144. package/lib/installations/index.d.ts +2 -2
  145. package/lib/installations/index.js +4 -4
  146. package/lib/installations/installations-request-handler.d.ts +1 -1
  147. package/lib/installations/installations-request-handler.js +11 -5
  148. package/lib/installations/installations.d.ts +1 -1
  149. package/lib/installations/installations.js +3 -3
  150. package/lib/machine-learning/error.d.ts +53 -0
  151. package/lib/machine-learning/error.js +84 -0
  152. package/lib/machine-learning/index.d.ts +2 -1
  153. package/lib/machine-learning/index.js +5 -2
  154. package/lib/machine-learning/machine-learning-api-client.d.ts +1 -1
  155. package/lib/machine-learning/machine-learning-api-client.js +61 -24
  156. package/lib/machine-learning/machine-learning.d.ts +1 -1
  157. package/lib/machine-learning/machine-learning.js +21 -9
  158. package/lib/messaging/error.d.ts +63 -0
  159. package/lib/messaging/error.js +286 -0
  160. package/lib/messaging/index.d.ts +3 -3
  161. package/lib/messaging/index.js +4 -4
  162. package/lib/messaging/messaging-api-request-internal.d.ts +1 -1
  163. package/lib/messaging/messaging-api-request-internal.js +1 -1
  164. package/lib/messaging/messaging-api.d.ts +1 -280
  165. package/lib/messaging/messaging-api.js +1 -1
  166. package/lib/messaging/messaging-errors-internal.d.ts +2 -2
  167. package/lib/messaging/messaging-errors-internal.js +11 -8
  168. package/lib/messaging/messaging-internal.d.ts +1 -1
  169. package/lib/messaging/messaging-internal.js +48 -48
  170. package/lib/messaging/messaging.d.ts +1 -1
  171. package/lib/messaging/messaging.js +47 -50
  172. package/lib/phone-number-verification/error.d.ts +43 -0
  173. package/lib/phone-number-verification/error.js +48 -0
  174. package/lib/phone-number-verification/index.d.ts +2 -1
  175. package/lib/phone-number-verification/index.js +5 -2
  176. package/lib/phone-number-verification/phone-number-verification-api-client-internal.d.ts +1 -18
  177. package/lib/phone-number-verification/phone-number-verification-api-client-internal.js +2 -26
  178. package/lib/phone-number-verification/phone-number-verification-api.d.ts +2 -2
  179. package/lib/phone-number-verification/phone-number-verification-api.js +5 -4
  180. package/lib/phone-number-verification/phone-number-verification.d.ts +1 -1
  181. package/lib/phone-number-verification/phone-number-verification.js +1 -1
  182. package/lib/phone-number-verification/token-verifier.d.ts +1 -1
  183. package/lib/phone-number-verification/token-verifier.js +68 -20
  184. package/lib/project-management/android-app.d.ts +1 -1
  185. package/lib/project-management/android-app.js +15 -6
  186. package/lib/project-management/app-metadata.d.ts +1 -1
  187. package/lib/project-management/app-metadata.js +1 -1
  188. package/lib/project-management/error.d.ts +45 -0
  189. package/lib/project-management/error.js +55 -0
  190. package/lib/project-management/index.d.ts +2 -2
  191. package/lib/project-management/index.js +4 -3
  192. package/lib/project-management/ios-app.d.ts +1 -1
  193. package/lib/project-management/ios-app.js +6 -3
  194. package/lib/project-management/project-management-api-request-internal.d.ts +1 -1
  195. package/lib/project-management/project-management-api-request-internal.js +18 -6
  196. package/lib/project-management/project-management.d.ts +1 -1
  197. package/lib/project-management/project-management.js +13 -7
  198. package/lib/remote-config/condition-evaluator-internal.d.ts +1 -1
  199. package/lib/remote-config/condition-evaluator-internal.js +4 -4
  200. package/lib/remote-config/error.d.ts +49 -0
  201. package/lib/remote-config/error.js +70 -0
  202. package/lib/remote-config/index.d.ts +2 -1
  203. package/lib/remote-config/index.js +5 -2
  204. package/lib/remote-config/internal/value-impl.d.ts +1 -1
  205. package/lib/remote-config/internal/value-impl.js +1 -1
  206. package/lib/remote-config/remote-config-api-client-internal.d.ts +2 -13
  207. package/lib/remote-config/remote-config-api-client-internal.js +80 -52
  208. package/lib/remote-config/remote-config-api.d.ts +1 -1
  209. package/lib/remote-config/remote-config-api.js +1 -1
  210. package/lib/remote-config/remote-config.d.ts +1 -1
  211. package/lib/remote-config/remote-config.js +92 -23
  212. package/lib/security-rules/error.d.ts +45 -0
  213. package/lib/security-rules/error.js +54 -0
  214. package/lib/security-rules/index.d.ts +2 -1
  215. package/lib/security-rules/index.js +5 -2
  216. package/lib/security-rules/security-rules-api-client-internal.d.ts +1 -1
  217. package/lib/security-rules/security-rules-api-client-internal.js +50 -18
  218. package/lib/security-rules/security-rules.d.ts +1 -1
  219. package/lib/security-rules/security-rules.js +32 -11
  220. package/lib/storage/error.d.ts +41 -0
  221. package/lib/storage/error.js +50 -0
  222. package/lib/storage/index.d.ts +2 -1
  223. package/lib/storage/index.js +8 -5
  224. package/lib/storage/storage.d.ts +1 -1
  225. package/lib/storage/storage.js +12 -12
  226. package/lib/storage/utils.d.ts +1 -1
  227. package/lib/storage/utils.js +1 -1
  228. package/lib/utils/api-request.d.ts +12 -12
  229. package/lib/utils/api-request.js +97 -55
  230. package/lib/utils/crypto-signer.d.ts +1 -1
  231. package/lib/utils/crypto-signer.js +2 -7
  232. package/lib/utils/deep-copy.d.ts +1 -1
  233. package/lib/utils/deep-copy.js +1 -1
  234. package/lib/utils/error.d.ts +75 -570
  235. package/lib/utils/error.js +53 -1047
  236. package/lib/utils/index.d.ts +1 -1
  237. package/lib/utils/index.js +2 -2
  238. package/lib/utils/jwt.d.ts +1 -1
  239. package/lib/utils/jwt.js +1 -2
  240. package/lib/utils/validator.d.ts +1 -1
  241. package/lib/utils/validator.js +1 -1
  242. package/package.json +25 -33
  243. package/lib/app/firebase-namespace.d.ts +0 -163
  244. package/lib/app/firebase-namespace.js +0 -335
  245. package/lib/app-check/app-check-namespace.d.ts +0 -72
  246. package/lib/app-check/app-check-namespace.js +0 -18
  247. package/lib/auth/auth-namespace.d.ts +0 -257
  248. package/lib/auth/auth-namespace.js +0 -18
  249. package/lib/database/database-namespace.d.ts +0 -95
  250. package/lib/database/database-namespace.js +0 -23
  251. package/lib/default-namespace.d.ts +0 -24
  252. package/lib/default-namespace.js +0 -30
  253. package/lib/esm/instance-id/index.js +0 -6
  254. package/lib/firebase-namespace-api.d.ts +0 -91
  255. package/lib/firebase-namespace-api.js +0 -58
  256. package/lib/firestore/firestore-namespace.d.ts +0 -71
  257. package/lib/firestore/firestore-namespace.js +0 -52
  258. package/lib/installations/installations-namespace.d.ts +0 -55
  259. package/lib/installations/installations-namespace.js +0 -18
  260. package/lib/instance-id/index.d.ts +0 -62
  261. package/lib/instance-id/index.js +0 -74
  262. package/lib/instance-id/instance-id-namespace.d.ts +0 -38
  263. package/lib/instance-id/instance-id-namespace.js +0 -3
  264. package/lib/instance-id/instance-id.d.ts +0 -47
  265. package/lib/instance-id/instance-id.js +0 -77
  266. package/lib/machine-learning/machine-learning-namespace.d.ts +0 -81
  267. package/lib/machine-learning/machine-learning-namespace.js +0 -18
  268. package/lib/machine-learning/machine-learning-utils.d.ts +0 -22
  269. package/lib/machine-learning/machine-learning-utils.js +0 -47
  270. package/lib/messaging/messaging-namespace.d.ts +0 -161
  271. package/lib/messaging/messaging-namespace.js +0 -18
  272. package/lib/project-management/project-management-namespace.d.ts +0 -82
  273. package/lib/project-management/project-management-namespace.js +0 -18
  274. package/lib/remote-config/remote-config-namespace.d.ts +0 -141
  275. package/lib/remote-config/remote-config-namespace.js +0 -18
  276. package/lib/security-rules/security-rules-internal.d.ts +0 -21
  277. package/lib/security-rules/security-rules-internal.js +0 -26
  278. package/lib/security-rules/security-rules-namespace.d.ts +0 -69
  279. package/lib/security-rules/security-rules-namespace.js +0 -18
  280. package/lib/storage/storage-namespace.d.ts +0 -45
  281. package/lib/storage/storage-namespace.js +0 -18
@@ -1,4 +1,4 @@
1
- /*! firebase-admin v13.9.0 */
1
+ /*! firebase-admin v14.0.0 */
2
2
  "use strict";
3
3
  /*!
4
4
  * Copyright 2018 Google LLC
@@ -20,7 +20,7 @@ exports.EmailPrivacyAuthConfig = exports.PasswordPolicyAuthConfig = exports.Mobi
20
20
  exports.validateTestPhoneNumbers = validateTestPhoneNumbers;
21
21
  const validator = require("../utils/validator");
22
22
  const deep_copy_1 = require("../utils/deep-copy");
23
- const error_1 = require("../utils/error");
23
+ const error_1 = require("./error");
24
24
  /** A maximum of 10 test phone number / code pairs can be configured. */
25
25
  exports.MAXIMUM_TEST_PHONE_NUMBERS = 10;
26
26
  /** Client Auth factor type to server auth factor type mapping. */
@@ -83,39 +83,39 @@ class MultiFactorAuthConfig {
83
83
  providerConfigs: true,
84
84
  };
85
85
  if (!validator.isNonNullObject(options)) {
86
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig" must be a non-null object.');
86
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig" must be a non-null object.');
87
87
  }
88
88
  // Check for unsupported top level attributes.
89
89
  for (const key in options) {
90
90
  if (!(key in validKeys)) {
91
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid MultiFactorConfig parameter.`);
91
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid MultiFactorConfig parameter.`);
92
92
  }
93
93
  }
94
94
  // Validate content.
95
95
  if (typeof options.state !== 'undefined' &&
96
96
  options.state !== 'ENABLED' &&
97
97
  options.state !== 'DISABLED') {
98
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.state" must be either "ENABLED" or "DISABLED".');
98
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.state" must be either "ENABLED" or "DISABLED".');
99
99
  }
100
100
  if (typeof options.factorIds !== 'undefined') {
101
101
  if (!validator.isArray(options.factorIds)) {
102
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.factorIds" must be an array of valid "AuthFactorTypes".');
102
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.factorIds" must be an array of valid "AuthFactorTypes".');
103
103
  }
104
104
  // Validate content of array.
105
105
  options.factorIds.forEach((factorId) => {
106
106
  if (typeof AUTH_FACTOR_CLIENT_TO_SERVER_TYPE[factorId] === 'undefined') {
107
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${factorId}" is not a valid "AuthFactorType".`);
107
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${factorId}" is not a valid "AuthFactorType".`);
108
108
  }
109
109
  });
110
110
  }
111
111
  if (typeof options.providerConfigs !== 'undefined') {
112
112
  if (!validator.isArray(options.providerConfigs)) {
113
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs" must be an array of valid "MultiFactorProviderConfig."');
113
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs" must be an array of valid "MultiFactorProviderConfig."');
114
114
  }
115
115
  //Validate content of array.
116
116
  options.providerConfigs.forEach((multiFactorProviderConfig) => {
117
117
  if (typeof multiFactorProviderConfig === 'undefined' || !validator.isObject(multiFactorProviderConfig)) {
118
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${multiFactorProviderConfig}" is not a valid "MultiFactorProviderConfig" type.`);
118
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${multiFactorProviderConfig}" is not a valid "MultiFactorProviderConfig" type.`);
119
119
  }
120
120
  const validProviderConfigKeys = {
121
121
  state: true,
@@ -123,30 +123,30 @@ class MultiFactorAuthConfig {
123
123
  };
124
124
  for (const key in multiFactorProviderConfig) {
125
125
  if (!(key in validProviderConfigKeys)) {
126
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid ProviderConfig parameter.`);
126
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid ProviderConfig parameter.`);
127
127
  }
128
128
  }
129
129
  if (typeof multiFactorProviderConfig.state === 'undefined' ||
130
130
  (multiFactorProviderConfig.state !== 'ENABLED' &&
131
131
  multiFactorProviderConfig.state !== 'DISABLED')) {
132
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs.state" must be either "ENABLED" or "DISABLED".');
132
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs.state" must be either "ENABLED" or "DISABLED".');
133
133
  }
134
134
  // Since TOTP is the only provider config available right now, not defining it will lead into an error
135
135
  if (typeof multiFactorProviderConfig.totpProviderConfig === 'undefined') {
136
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs.totpProviderConfig" must be defined.');
136
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MultiFactorConfig.providerConfigs.totpProviderConfig" must be defined.');
137
137
  }
138
138
  const validTotpProviderConfigKeys = {
139
139
  adjacentIntervals: true,
140
140
  };
141
141
  for (const key in multiFactorProviderConfig.totpProviderConfig) {
142
142
  if (!(key in validTotpProviderConfigKeys)) {
143
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid TotpProviderConfig parameter.`);
143
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid TotpProviderConfig parameter.`);
144
144
  }
145
145
  }
146
146
  const adjIntervals = multiFactorProviderConfig.totpProviderConfig.adjacentIntervals;
147
147
  if (typeof adjIntervals !== 'undefined' &&
148
148
  (!Number.isInteger(adjIntervals) || adjIntervals < 0 || adjIntervals > 10)) {
149
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"MultiFactorConfig.providerConfigs.totpProviderConfig.adjacentIntervals" must' +
149
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"MultiFactorConfig.providerConfigs.totpProviderConfig.adjacentIntervals" must' +
150
150
  ' be a valid number between 0 and 10 (both inclusive).');
151
151
  }
152
152
  });
@@ -162,7 +162,7 @@ class MultiFactorAuthConfig {
162
162
  */
163
163
  constructor(response) {
164
164
  if (typeof response.state === 'undefined') {
165
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid multi-factor configuration response');
165
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid multi-factor configuration response');
166
166
  }
167
167
  this.state = response.state;
168
168
  this.factorIds = [];
@@ -180,7 +180,7 @@ class MultiFactorAuthConfig {
180
180
  typeof providerConfig.totpProviderConfig === 'undefined' ||
181
181
  (typeof providerConfig.totpProviderConfig.adjacentIntervals !== 'undefined' &&
182
182
  typeof providerConfig.totpProviderConfig.adjacentIntervals !== 'number')) {
183
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid multi-factor configuration response');
183
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid multi-factor configuration response');
184
184
  }
185
185
  this.providerConfigs.push(providerConfig);
186
186
  }
@@ -203,20 +203,20 @@ exports.MultiFactorAuthConfig = MultiFactorAuthConfig;
203
203
  */
204
204
  function validateTestPhoneNumbers(testPhoneNumbers) {
205
205
  if (!validator.isObject(testPhoneNumbers)) {
206
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"testPhoneNumbers" must be a map of phone number / code pairs.');
206
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"testPhoneNumbers" must be a map of phone number / code pairs.');
207
207
  }
208
208
  if (Object.keys(testPhoneNumbers).length > exports.MAXIMUM_TEST_PHONE_NUMBERS) {
209
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.MAXIMUM_TEST_PHONE_NUMBER_EXCEEDED);
209
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.MAXIMUM_TEST_PHONE_NUMBER_EXCEEDED);
210
210
  }
211
211
  for (const phoneNumber in testPhoneNumbers) {
212
212
  // Validate phone number.
213
213
  if (!validator.isPhoneNumber(phoneNumber)) {
214
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_TESTING_PHONE_NUMBER, `"${phoneNumber}" is not a valid E.164 standard compliant phone number.`);
214
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_TESTING_PHONE_NUMBER, `"${phoneNumber}" is not a valid E.164 standard compliant phone number.`);
215
215
  }
216
216
  // Validate code.
217
217
  if (!validator.isString(testPhoneNumbers[phoneNumber]) ||
218
218
  !/^[\d]{6}$/.test(testPhoneNumbers[phoneNumber])) {
219
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_TESTING_PHONE_NUMBER, `"${testPhoneNumbers[phoneNumber]}" is not a valid 6 digit code string.`);
219
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_TESTING_PHONE_NUMBER, `"${testPhoneNumbers[phoneNumber]}" is not a valid 6 digit code string.`);
220
220
  }
221
221
  }
222
222
  }
@@ -258,22 +258,22 @@ class EmailSignInConfig {
258
258
  passwordRequired: true,
259
259
  };
260
260
  if (!validator.isNonNullObject(options)) {
261
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig" must be a non-null object.');
261
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig" must be a non-null object.');
262
262
  }
263
263
  // Check for unsupported top level attributes.
264
264
  for (const key in options) {
265
265
  if (!(key in validKeys)) {
266
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, `"${key}" is not a valid EmailSignInConfig parameter.`);
266
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, `"${key}" is not a valid EmailSignInConfig parameter.`);
267
267
  }
268
268
  }
269
269
  // Validate content.
270
270
  if (typeof options.enabled !== 'undefined' &&
271
271
  !validator.isBoolean(options.enabled)) {
272
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig.enabled" must be a boolean.');
272
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig.enabled" must be a boolean.');
273
273
  }
274
274
  if (typeof options.passwordRequired !== 'undefined' &&
275
275
  !validator.isBoolean(options.passwordRequired)) {
276
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig.passwordRequired" must be a boolean.');
276
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"EmailSignInConfig.passwordRequired" must be a boolean.');
277
277
  }
278
278
  }
279
279
  /**
@@ -285,7 +285,7 @@ class EmailSignInConfig {
285
285
  */
286
286
  constructor(response) {
287
287
  if (typeof response.allowPasswordSignup === 'undefined') {
288
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid email sign-in configuration response');
288
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid email sign-in configuration response');
289
289
  }
290
290
  this.enabled = response.allowPasswordSignup;
291
291
  this.passwordRequired = !response.enableEmailLinkSignin;
@@ -390,61 +390,61 @@ class SAMLConfig {
390
390
  enableRequestSigning: true,
391
391
  };
392
392
  if (!validator.isNonNullObject(options)) {
393
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig" must be a valid non-null object.');
393
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig" must be a valid non-null object.');
394
394
  }
395
395
  // Check for unsupported top level attributes.
396
396
  for (const key in options) {
397
397
  if (!(key in validKeys)) {
398
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SAML config parameter.`);
398
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SAML config parameter.`);
399
399
  }
400
400
  }
401
401
  // Required fields.
402
402
  if (validator.isNonEmptyString(options.providerId)) {
403
403
  if (options.providerId.indexOf('saml.') !== 0) {
404
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_PROVIDER_ID, '"SAMLAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "saml.".');
404
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_PROVIDER_ID, '"SAMLAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "saml.".');
405
405
  }
406
406
  }
407
407
  else if (!ignoreMissingFields) {
408
408
  // providerId is required and not provided correctly.
409
- throw new error_1.FirebaseAuthError(!options.providerId ? error_1.AuthClientErrorCode.MISSING_PROVIDER_ID : error_1.AuthClientErrorCode.INVALID_PROVIDER_ID, '"SAMLAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "saml.".');
409
+ throw new error_1.FirebaseAuthError(!options.providerId ? error_1.authClientErrorCode.MISSING_PROVIDER_ID : error_1.authClientErrorCode.INVALID_PROVIDER_ID, '"SAMLAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "saml.".');
410
410
  }
411
411
  if (!(ignoreMissingFields && typeof options.idpEntityId === 'undefined') &&
412
412
  !validator.isNonEmptyString(options.idpEntityId)) {
413
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.idpEntityId" must be a valid non-empty string.');
413
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.idpEntityId" must be a valid non-empty string.');
414
414
  }
415
415
  if (!(ignoreMissingFields && typeof options.ssoURL === 'undefined') &&
416
416
  !validator.isURL(options.ssoURL)) {
417
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.ssoURL" must be a valid URL string.');
417
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.ssoURL" must be a valid URL string.');
418
418
  }
419
419
  if (!(ignoreMissingFields && typeof options.rpEntityId === 'undefined') &&
420
420
  !validator.isNonEmptyString(options.rpEntityId)) {
421
- throw new error_1.FirebaseAuthError(!options.rpEntityId ? error_1.AuthClientErrorCode.MISSING_SAML_RELYING_PARTY_CONFIG :
422
- error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.rpEntityId" must be a valid non-empty string.');
421
+ throw new error_1.FirebaseAuthError(!options.rpEntityId ? error_1.authClientErrorCode.MISSING_SAML_RELYING_PARTY_CONFIG :
422
+ error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.rpEntityId" must be a valid non-empty string.');
423
423
  }
424
424
  if (!(ignoreMissingFields && typeof options.callbackURL === 'undefined') &&
425
425
  !validator.isURL(options.callbackURL)) {
426
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.callbackURL" must be a valid URL string.');
426
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.callbackURL" must be a valid URL string.');
427
427
  }
428
428
  if (!(ignoreMissingFields && typeof options.x509Certificates === 'undefined') &&
429
429
  !validator.isArray(options.x509Certificates)) {
430
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.x509Certificates" must be a valid array of X509 certificate strings.');
430
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.x509Certificates" must be a valid array of X509 certificate strings.');
431
431
  }
432
432
  (options.x509Certificates || []).forEach((cert) => {
433
433
  if (!validator.isNonEmptyString(cert)) {
434
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.x509Certificates" must be a valid array of X509 certificate strings.');
434
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.x509Certificates" must be a valid array of X509 certificate strings.');
435
435
  }
436
436
  });
437
437
  if (typeof options.enableRequestSigning !== 'undefined' &&
438
438
  !validator.isBoolean(options.enableRequestSigning)) {
439
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.enableRequestSigning" must be a boolean.');
439
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.enableRequestSigning" must be a boolean.');
440
440
  }
441
441
  if (typeof options.enabled !== 'undefined' &&
442
442
  !validator.isBoolean(options.enabled)) {
443
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.enabled" must be a boolean.');
443
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.enabled" must be a boolean.');
444
444
  }
445
445
  if (typeof options.displayName !== 'undefined' &&
446
446
  !validator.isString(options.displayName)) {
447
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.displayName" must be a valid string.');
447
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SAMLAuthProviderConfig.displayName" must be a valid string.');
448
448
  }
449
449
  }
450
450
  /**
@@ -463,11 +463,11 @@ class SAMLConfig {
463
463
  !response.name ||
464
464
  !(validator.isString(response.name) &&
465
465
  SAMLConfig.getProviderIdFromResourceName(response.name))) {
466
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
466
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
467
467
  }
468
468
  const providerId = SAMLConfig.getProviderIdFromResourceName(response.name);
469
469
  if (!providerId) {
470
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
470
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
471
471
  }
472
472
  this.providerId = providerId;
473
473
  // RP config.
@@ -584,68 +584,68 @@ class OIDCConfig {
584
584
  code: true,
585
585
  };
586
586
  if (!validator.isNonNullObject(options)) {
587
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig" must be a valid non-null object.');
587
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig" must be a valid non-null object.');
588
588
  }
589
589
  // Check for unsupported top level attributes.
590
590
  for (const key in options) {
591
591
  if (!(key in validKeys)) {
592
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid OIDC config parameter.`);
592
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid OIDC config parameter.`);
593
593
  }
594
594
  }
595
595
  // Required fields.
596
596
  if (validator.isNonEmptyString(options.providerId)) {
597
597
  if (options.providerId.indexOf('oidc.') !== 0) {
598
- throw new error_1.FirebaseAuthError(!options.providerId ? error_1.AuthClientErrorCode.MISSING_PROVIDER_ID : error_1.AuthClientErrorCode.INVALID_PROVIDER_ID, '"OIDCAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "oidc.".');
598
+ throw new error_1.FirebaseAuthError(!options.providerId ? error_1.authClientErrorCode.MISSING_PROVIDER_ID : error_1.authClientErrorCode.INVALID_PROVIDER_ID, '"OIDCAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "oidc.".');
599
599
  }
600
600
  }
601
601
  else if (!ignoreMissingFields) {
602
- throw new error_1.FirebaseAuthError(!options.providerId ? error_1.AuthClientErrorCode.MISSING_PROVIDER_ID : error_1.AuthClientErrorCode.INVALID_PROVIDER_ID, '"OIDCAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "oidc.".');
602
+ throw new error_1.FirebaseAuthError(!options.providerId ? error_1.authClientErrorCode.MISSING_PROVIDER_ID : error_1.authClientErrorCode.INVALID_PROVIDER_ID, '"OIDCAuthProviderConfig.providerId" must be a valid non-empty string prefixed with "oidc.".');
603
603
  }
604
604
  if (!(ignoreMissingFields && typeof options.clientId === 'undefined') &&
605
605
  !validator.isNonEmptyString(options.clientId)) {
606
- throw new error_1.FirebaseAuthError(!options.clientId ? error_1.AuthClientErrorCode.MISSING_OAUTH_CLIENT_ID : error_1.AuthClientErrorCode.INVALID_OAUTH_CLIENT_ID, '"OIDCAuthProviderConfig.clientId" must be a valid non-empty string.');
606
+ throw new error_1.FirebaseAuthError(!options.clientId ? error_1.authClientErrorCode.MISSING_OAUTH_CLIENT_ID : error_1.authClientErrorCode.INVALID_OAUTH_CLIENT_ID, '"OIDCAuthProviderConfig.clientId" must be a valid non-empty string.');
607
607
  }
608
608
  if (!(ignoreMissingFields && typeof options.issuer === 'undefined') &&
609
609
  !validator.isURL(options.issuer)) {
610
- throw new error_1.FirebaseAuthError(!options.issuer ? error_1.AuthClientErrorCode.MISSING_ISSUER : error_1.AuthClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.issuer" must be a valid URL string.');
610
+ throw new error_1.FirebaseAuthError(!options.issuer ? error_1.authClientErrorCode.MISSING_ISSUER : error_1.authClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.issuer" must be a valid URL string.');
611
611
  }
612
612
  if (typeof options.enabled !== 'undefined' &&
613
613
  !validator.isBoolean(options.enabled)) {
614
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.enabled" must be a boolean.');
614
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.enabled" must be a boolean.');
615
615
  }
616
616
  if (typeof options.displayName !== 'undefined' &&
617
617
  !validator.isString(options.displayName)) {
618
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.displayName" must be a valid string.');
618
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.displayName" must be a valid string.');
619
619
  }
620
620
  if (typeof options.clientSecret !== 'undefined' &&
621
621
  !validator.isNonEmptyString(options.clientSecret)) {
622
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.clientSecret" must be a valid string.');
622
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"OIDCAuthProviderConfig.clientSecret" must be a valid string.');
623
623
  }
624
624
  if (validator.isNonNullObject(options.responseType) && typeof options.responseType !== 'undefined') {
625
625
  Object.keys(options.responseType).forEach((key) => {
626
626
  if (!(key in validResponseTypes)) {
627
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid OAuthResponseType parameter.`);
627
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid OAuthResponseType parameter.`);
628
628
  }
629
629
  });
630
630
  const idToken = options.responseType.idToken;
631
631
  if (typeof idToken !== 'undefined' && !validator.isBoolean(idToken)) {
632
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"OIDCAuthProviderConfig.responseType.idToken" must be a boolean.');
632
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"OIDCAuthProviderConfig.responseType.idToken" must be a boolean.');
633
633
  }
634
634
  const code = options.responseType.code;
635
635
  if (typeof code !== 'undefined') {
636
636
  if (!validator.isBoolean(code)) {
637
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"OIDCAuthProviderConfig.responseType.code" must be a boolean.');
637
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"OIDCAuthProviderConfig.responseType.code" must be a boolean.');
638
638
  }
639
639
  // If code flow is enabled, client secret must be provided.
640
640
  if (code && typeof options.clientSecret === 'undefined') {
641
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.MISSING_OAUTH_CLIENT_SECRET, 'The OAuth configuration client secret is required to enable OIDC code flow.');
641
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.MISSING_OAUTH_CLIENT_SECRET, 'The OAuth configuration client secret is required to enable OIDC code flow.');
642
642
  }
643
643
  }
644
644
  const allKeys = Object.keys(options.responseType).length;
645
645
  const enabledCount = Object.values(options.responseType).filter(Boolean).length;
646
646
  // Only one of OAuth response types can be set to true.
647
647
  if (allKeys > 1 && enabledCount !== 1) {
648
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_OAUTH_RESPONSETYPE, 'Only exactly one OAuth responseType should be set to true.');
648
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_OAUTH_RESPONSETYPE, 'Only exactly one OAuth responseType should be set to true.');
649
649
  }
650
650
  }
651
651
  }
@@ -662,11 +662,11 @@ class OIDCConfig {
662
662
  !response.name ||
663
663
  !(validator.isString(response.name) &&
664
664
  OIDCConfig.getProviderIdFromResourceName(response.name))) {
665
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid OIDC configuration response');
665
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid OIDC configuration response');
666
666
  }
667
667
  const providerId = OIDCConfig.getProviderIdFromResourceName(response.name);
668
668
  if (!providerId) {
669
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
669
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid SAML configuration response');
670
670
  }
671
671
  this.providerId = providerId;
672
672
  this.clientId = response.clientId;
@@ -703,7 +703,7 @@ exports.OIDCConfig = OIDCConfig;
703
703
  class SmsRegionsAuthConfig {
704
704
  static validate(options) {
705
705
  if (!validator.isNonNullObject(options)) {
706
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig" must be a non-null object.');
706
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig" must be a non-null object.');
707
707
  }
708
708
  const validKeys = {
709
709
  allowlistOnly: true,
@@ -711,12 +711,12 @@ class SmsRegionsAuthConfig {
711
711
  };
712
712
  for (const key in options) {
713
713
  if (!(key in validKeys)) {
714
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig parameter.`);
714
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig parameter.`);
715
715
  }
716
716
  }
717
717
  // validate mutual exclusiveness of allowByDefault and allowlistOnly
718
718
  if (typeof options.allowByDefault !== 'undefined' && typeof options.allowlistOnly !== 'undefined') {
719
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, 'SmsRegionConfig cannot have both "allowByDefault" and "allowlistOnly" parameters.');
719
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, 'SmsRegionConfig cannot have both "allowByDefault" and "allowlistOnly" parameters.');
720
720
  }
721
721
  // validation for allowByDefault type
722
722
  if (typeof options.allowByDefault !== 'undefined') {
@@ -725,13 +725,13 @@ class SmsRegionsAuthConfig {
725
725
  };
726
726
  for (const key in options.allowByDefault) {
727
727
  if (!(key in allowByDefaultValidKeys)) {
728
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig.allowByDefault parameter.`);
728
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig.allowByDefault parameter.`);
729
729
  }
730
730
  }
731
731
  // disallowedRegion can be empty.
732
732
  if (typeof options.allowByDefault.disallowedRegions !== 'undefined'
733
733
  && !validator.isArray(options.allowByDefault.disallowedRegions)) {
734
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig.allowByDefault.disallowedRegions" must be a valid string array.');
734
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig.allowByDefault.disallowedRegions" must be a valid string array.');
735
735
  }
736
736
  }
737
737
  if (typeof options.allowlistOnly !== 'undefined') {
@@ -740,13 +740,13 @@ class SmsRegionsAuthConfig {
740
740
  };
741
741
  for (const key in options.allowlistOnly) {
742
742
  if (!(key in allowListOnlyValidKeys)) {
743
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig.allowlistOnly parameter.`);
743
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid SmsRegionConfig.allowlistOnly parameter.`);
744
744
  }
745
745
  }
746
746
  // allowedRegions can be empty
747
747
  if (typeof options.allowlistOnly.allowedRegions !== 'undefined'
748
748
  && !validator.isArray(options.allowlistOnly.allowedRegions)) {
749
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig.allowlistOnly.allowedRegions" must be a valid string array.');
749
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"SmsRegionConfig.allowlistOnly.allowedRegions" must be a valid string array.');
750
750
  }
751
751
  }
752
752
  }
@@ -829,38 +829,38 @@ class RecaptchaAuthConfig {
829
829
  smsTollFraudManagedRules: true,
830
830
  };
831
831
  if (!validator.isNonNullObject(options)) {
832
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig" must be a non-null object.');
832
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig" must be a non-null object.');
833
833
  }
834
834
  for (const key in options) {
835
835
  if (!(key in validKeys)) {
836
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaConfig parameter.`);
836
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaConfig parameter.`);
837
837
  }
838
838
  }
839
839
  // Validation
840
840
  if (typeof options.emailPasswordEnforcementState !== 'undefined') {
841
841
  if (!validator.isNonEmptyString(options.emailPasswordEnforcementState)) {
842
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"RecaptchaConfig.emailPasswordEnforcementState" must be a valid non-empty string.');
842
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"RecaptchaConfig.emailPasswordEnforcementState" must be a valid non-empty string.');
843
843
  }
844
844
  if (options.emailPasswordEnforcementState !== 'OFF' &&
845
845
  options.emailPasswordEnforcementState !== 'AUDIT' &&
846
846
  options.emailPasswordEnforcementState !== 'ENFORCE') {
847
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.emailPasswordEnforcementState" must be either "OFF", "AUDIT" or "ENFORCE".');
847
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.emailPasswordEnforcementState" must be either "OFF", "AUDIT" or "ENFORCE".');
848
848
  }
849
849
  }
850
850
  if (typeof options.phoneEnforcementState !== 'undefined') {
851
851
  if (!validator.isNonEmptyString(options.phoneEnforcementState)) {
852
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_ARGUMENT, '"RecaptchaConfig.phoneEnforcementState" must be a valid non-empty string.');
852
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_ARGUMENT, '"RecaptchaConfig.phoneEnforcementState" must be a valid non-empty string.');
853
853
  }
854
854
  if (options.phoneEnforcementState !== 'OFF' &&
855
855
  options.phoneEnforcementState !== 'AUDIT' &&
856
856
  options.phoneEnforcementState !== 'ENFORCE') {
857
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.phoneEnforcementState" must be either "OFF", "AUDIT" or "ENFORCE".');
857
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.phoneEnforcementState" must be either "OFF", "AUDIT" or "ENFORCE".');
858
858
  }
859
859
  }
860
860
  if (typeof options.managedRules !== 'undefined') {
861
861
  // Validate array
862
862
  if (!validator.isArray(options.managedRules)) {
863
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.managedRules" must be an array of valid "RecaptchaManagedRule".');
863
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.managedRules" must be an array of valid "RecaptchaManagedRule".');
864
864
  }
865
865
  // Validate each rule of the array
866
866
  options.managedRules.forEach((managedRule) => {
@@ -869,23 +869,23 @@ class RecaptchaAuthConfig {
869
869
  }
870
870
  if (typeof options.useAccountDefender !== 'undefined') {
871
871
  if (!validator.isBoolean(options.useAccountDefender)) {
872
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useAccountDefender" must be a boolean value".');
872
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useAccountDefender" must be a boolean value".');
873
873
  }
874
874
  }
875
875
  if (typeof options.useSmsBotScore !== 'undefined') {
876
876
  if (!validator.isBoolean(options.useSmsBotScore)) {
877
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useSmsBotScore" must be a boolean value".');
877
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useSmsBotScore" must be a boolean value".');
878
878
  }
879
879
  }
880
880
  if (typeof options.useSmsTollFraudProtection !== 'undefined') {
881
881
  if (!validator.isBoolean(options.useSmsTollFraudProtection)) {
882
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useSmsTollFraudProtection" must be a boolean value".');
882
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.useSmsTollFraudProtection" must be a boolean value".');
883
883
  }
884
884
  }
885
885
  if (typeof options.smsTollFraudManagedRules !== 'undefined') {
886
886
  // Validate array
887
887
  if (!validator.isArray(options.smsTollFraudManagedRules)) {
888
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.smsTollFraudManagedRules" must be an array of valid "RecaptchaTollFraudManagedRule".');
888
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaConfig.smsTollFraudManagedRules" must be an array of valid "RecaptchaTollFraudManagedRule".');
889
889
  }
890
890
  // Validate each rule of the array
891
891
  options.smsTollFraudManagedRules.forEach((tollFraudManagedRule) => {
@@ -903,18 +903,18 @@ class RecaptchaAuthConfig {
903
903
  action: true,
904
904
  };
905
905
  if (!validator.isNonNullObject(options)) {
906
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaManagedRule" must be a non-null object.');
906
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaManagedRule" must be a non-null object.');
907
907
  }
908
908
  // Check for unsupported top level attributes.
909
909
  for (const key in options) {
910
910
  if (!(key in validKeys)) {
911
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaManagedRule parameter.`);
911
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaManagedRule parameter.`);
912
912
  }
913
913
  }
914
914
  // Validate content.
915
915
  if (typeof options.action !== 'undefined' &&
916
916
  options.action !== 'BLOCK') {
917
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaManagedRule.action" must be "BLOCK".');
917
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaManagedRule.action" must be "BLOCK".');
918
918
  }
919
919
  }
920
920
  /**
@@ -927,18 +927,18 @@ class RecaptchaAuthConfig {
927
927
  action: true,
928
928
  };
929
929
  if (!validator.isNonNullObject(options)) {
930
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaTollFraudManagedRule" must be a non-null object.');
930
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaTollFraudManagedRule" must be a non-null object.');
931
931
  }
932
932
  // Check for unsupported top level attributes.
933
933
  for (const key in options) {
934
934
  if (!(key in validKeys)) {
935
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaTollFraudManagedRule parameter.`);
935
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid RecaptchaTollFraudManagedRule parameter.`);
936
936
  }
937
937
  }
938
938
  // Validate content.
939
939
  if (typeof options.action !== 'undefined' &&
940
940
  options.action !== 'BLOCK') {
941
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"RecaptchaTollFraudManagedRule.action" must be "BLOCK".');
941
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"RecaptchaTollFraudManagedRule.action" must be "BLOCK".');
942
942
  }
943
943
  }
944
944
  }
@@ -951,20 +951,20 @@ exports.RecaptchaAuthConfig = RecaptchaAuthConfig;
951
951
  class MobileLinksAuthConfig {
952
952
  static validate(options) {
953
953
  if (!validator.isNonNullObject(options)) {
954
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MobileLinksConfig" must be a non-null object.');
954
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MobileLinksConfig" must be a non-null object.');
955
955
  }
956
956
  const validKeys = {
957
957
  domain: true,
958
958
  };
959
959
  for (const key in options) {
960
960
  if (!(key in validKeys)) {
961
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid "MobileLinksConfig" parameter.`);
961
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid "MobileLinksConfig" parameter.`);
962
962
  }
963
963
  }
964
964
  if (typeof options.domain !== 'undefined'
965
965
  && options.domain !== 'HOSTING_DOMAIN'
966
966
  && options.domain !== 'FIREBASE_DYNAMIC_LINK_DOMAIN') {
967
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"MobileLinksConfig.domain" must be either "HOSTING_DOMAIN" or "FIREBASE_DYNAMIC_LINK_DOMAIN".');
967
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"MobileLinksConfig.domain" must be either "HOSTING_DOMAIN" or "FIREBASE_DYNAMIC_LINK_DOMAIN".');
968
968
  }
969
969
  }
970
970
  }
@@ -1041,28 +1041,28 @@ class PasswordPolicyAuthConfig {
1041
1041
  constraints: true,
1042
1042
  };
1043
1043
  if (!validator.isNonNullObject(options)) {
1044
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig" must be a non-null object.');
1044
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig" must be a non-null object.');
1045
1045
  }
1046
1046
  // Check for unsupported top level attributes.
1047
1047
  for (const key in options) {
1048
1048
  if (!(key in validKeys)) {
1049
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid PasswordPolicyConfig parameter.`);
1049
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid PasswordPolicyConfig parameter.`);
1050
1050
  }
1051
1051
  }
1052
1052
  // Validate content.
1053
1053
  if (typeof options.enforcementState === 'undefined' ||
1054
1054
  !(options.enforcementState === 'ENFORCE' ||
1055
1055
  options.enforcementState === 'OFF')) {
1056
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.enforcementState" must be either "ENFORCE" or "OFF".');
1056
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.enforcementState" must be either "ENFORCE" or "OFF".');
1057
1057
  }
1058
1058
  if (typeof options.forceUpgradeOnSignin !== 'undefined') {
1059
1059
  if (!validator.isBoolean(options.forceUpgradeOnSignin)) {
1060
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.forceUpgradeOnSignin" must be a boolean.');
1060
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.forceUpgradeOnSignin" must be a boolean.');
1061
1061
  }
1062
1062
  }
1063
1063
  if (typeof options.constraints !== 'undefined') {
1064
1064
  if (options.enforcementState === 'ENFORCE' && !validator.isNonNullObject(options.constraints)) {
1065
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints" must be a non-empty object.');
1065
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints" must be a non-empty object.');
1066
1066
  }
1067
1067
  const validCharKeys = {
1068
1068
  requireUppercase: true,
@@ -1075,36 +1075,36 @@ class PasswordPolicyAuthConfig {
1075
1075
  // Check for unsupported attributes.
1076
1076
  for (const key in options.constraints) {
1077
1077
  if (!(key in validCharKeys)) {
1078
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid PasswordPolicyConfig.constraints parameter.`);
1078
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid PasswordPolicyConfig.constraints parameter.`);
1079
1079
  }
1080
1080
  }
1081
1081
  if (typeof options.constraints.requireUppercase !== 'undefined' &&
1082
1082
  !validator.isBoolean(options.constraints.requireUppercase)) {
1083
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireUppercase" must be a boolean.');
1083
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireUppercase" must be a boolean.');
1084
1084
  }
1085
1085
  if (typeof options.constraints.requireLowercase !== 'undefined' &&
1086
1086
  !validator.isBoolean(options.constraints.requireLowercase)) {
1087
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireLowercase" must be a boolean.');
1087
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireLowercase" must be a boolean.');
1088
1088
  }
1089
1089
  if (typeof options.constraints.requireNonAlphanumeric !== 'undefined' &&
1090
1090
  !validator.isBoolean(options.constraints.requireNonAlphanumeric)) {
1091
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireNonAlphanumeric"' +
1091
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireNonAlphanumeric"' +
1092
1092
  ' must be a boolean.');
1093
1093
  }
1094
1094
  if (typeof options.constraints.requireNumeric !== 'undefined' &&
1095
1095
  !validator.isBoolean(options.constraints.requireNumeric)) {
1096
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireNumeric" must be a boolean.');
1096
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.requireNumeric" must be a boolean.');
1097
1097
  }
1098
1098
  if (typeof options.constraints.minLength === 'undefined') {
1099
1099
  options.constraints.minLength = 6;
1100
1100
  }
1101
1101
  else if (!validator.isNumber(options.constraints.minLength)) {
1102
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.minLength" must be a number.');
1102
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.minLength" must be a number.');
1103
1103
  }
1104
1104
  else {
1105
1105
  if (!(options.constraints.minLength >= 6
1106
1106
  && options.constraints.minLength <= 30)) {
1107
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.minLength"' +
1107
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.minLength"' +
1108
1108
  ' must be an integer between 6 and 30, inclusive.');
1109
1109
  }
1110
1110
  }
@@ -1112,19 +1112,19 @@ class PasswordPolicyAuthConfig {
1112
1112
  options.constraints.maxLength = 4096;
1113
1113
  }
1114
1114
  else if (!validator.isNumber(options.constraints.maxLength)) {
1115
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.maxLength" must be a number.');
1115
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.maxLength" must be a number.');
1116
1116
  }
1117
1117
  else {
1118
1118
  if (!(options.constraints.maxLength >= options.constraints.minLength &&
1119
1119
  options.constraints.maxLength <= 4096)) {
1120
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.maxLength"' +
1120
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints.maxLength"' +
1121
1121
  ' must be greater than or equal to minLength and at max 4096.');
1122
1122
  }
1123
1123
  }
1124
1124
  }
1125
1125
  else {
1126
1126
  if (options.enforcementState === 'ENFORCE') {
1127
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints" must be defined.');
1127
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"PasswordPolicyConfig.constraints" must be defined.');
1128
1128
  }
1129
1129
  }
1130
1130
  }
@@ -1138,7 +1138,7 @@ class PasswordPolicyAuthConfig {
1138
1138
  */
1139
1139
  constructor(response) {
1140
1140
  if (typeof response.passwordPolicyEnforcementState === 'undefined') {
1141
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid password policy configuration response');
1141
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Invalid password policy configuration response');
1142
1142
  }
1143
1143
  this.enforcementState = response.passwordPolicyEnforcementState;
1144
1144
  let constraintsResponse = {};
@@ -1167,19 +1167,19 @@ exports.PasswordPolicyAuthConfig = PasswordPolicyAuthConfig;
1167
1167
  class EmailPrivacyAuthConfig {
1168
1168
  static validate(options) {
1169
1169
  if (!validator.isNonNullObject(options)) {
1170
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"EmailPrivacyConfig" must be a non-null object.');
1170
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"EmailPrivacyConfig" must be a non-null object.');
1171
1171
  }
1172
1172
  const validKeys = {
1173
1173
  enableImprovedEmailPrivacy: true,
1174
1174
  };
1175
1175
  for (const key in options) {
1176
1176
  if (!(key in validKeys)) {
1177
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid "EmailPrivacyConfig" parameter.`);
1177
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, `"${key}" is not a valid "EmailPrivacyConfig" parameter.`);
1178
1178
  }
1179
1179
  }
1180
1180
  if (typeof options.enableImprovedEmailPrivacy !== 'undefined'
1181
1181
  && !validator.isBoolean(options.enableImprovedEmailPrivacy)) {
1182
- throw new error_1.FirebaseAuthError(error_1.AuthClientErrorCode.INVALID_CONFIG, '"EmailPrivacyConfig.enableImprovedEmailPrivacy" must be a valid boolean value.');
1182
+ throw new error_1.FirebaseAuthError(error_1.authClientErrorCode.INVALID_CONFIG, '"EmailPrivacyConfig.enableImprovedEmailPrivacy" must be a valid boolean value.');
1183
1183
  }
1184
1184
  }
1185
1185
  }