@firebase/auth 0.18.3 → 0.19.0-canary.0b3ca78eb

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 (365) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/auth-public.d.ts +28 -19
  3. package/dist/auth.d.ts +29 -20
  4. package/dist/cordova/index.js +2 -2
  5. package/dist/cordova/index.rn.d.ts +3 -0
  6. package/dist/cordova/internal.js +7 -3
  7. package/dist/cordova/internal.js.map +1 -1
  8. package/dist/cordova/{popup_redirect-f608cd47.js → popup_redirect-680c56fc.js} +54 -33
  9. package/dist/cordova/popup_redirect-680c56fc.js.map +1 -0
  10. package/dist/cordova/src/core/errors.d.ts +2 -2
  11. package/dist/cordova/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  12. package/dist/cordova/src/mfa/mfa_error.d.ts +4 -5
  13. package/dist/cordova/src/model/public_types.d.ts +25 -19
  14. package/dist/cordova/src/platform_browser/persistence/browser.d.ts +4 -3
  15. package/dist/cordova/src/platform_browser/persistence/browser.test.d.ts +17 -0
  16. package/dist/cordova/src/platform_browser/strategies/phone.d.ts +3 -0
  17. package/dist/cordova/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  18. package/dist/esm2017/{index-f41a0691.js → index-100be16e.js} +43 -25
  19. package/dist/esm2017/index-100be16e.js.map +1 -0
  20. package/dist/esm2017/index.js +1 -1
  21. package/dist/esm2017/index.rn.d.ts +3 -0
  22. package/dist/esm2017/internal.js +2 -2
  23. package/dist/esm2017/src/core/errors.d.ts +2 -2
  24. package/dist/esm2017/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  25. package/dist/esm2017/src/mfa/mfa_error.d.ts +4 -5
  26. package/dist/esm2017/src/model/public_types.d.ts +25 -19
  27. package/dist/esm2017/src/platform_browser/persistence/browser.d.ts +4 -3
  28. package/dist/esm2017/src/platform_browser/persistence/browser.test.d.ts +17 -0
  29. package/dist/esm2017/src/platform_browser/strategies/phone.d.ts +3 -0
  30. package/dist/esm2017/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  31. package/dist/esm5/{index-fd8b7af5.js → index-4c58d8b7.js} +59 -34
  32. package/dist/esm5/index-4c58d8b7.js.map +1 -0
  33. package/dist/esm5/index.js +1 -1
  34. package/dist/esm5/index.rn.d.ts +3 -0
  35. package/dist/esm5/internal.js +2 -2
  36. package/dist/esm5/src/core/errors.d.ts +2 -2
  37. package/dist/esm5/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  38. package/dist/esm5/src/mfa/mfa_error.d.ts +4 -5
  39. package/dist/esm5/src/model/public_types.d.ts +25 -19
  40. package/dist/esm5/src/platform_browser/persistence/browser.d.ts +4 -3
  41. package/dist/esm5/src/platform_browser/persistence/browser.test.d.ts +17 -0
  42. package/dist/esm5/src/platform_browser/strategies/phone.d.ts +3 -0
  43. package/dist/esm5/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  44. package/dist/index.rn.d.ts +3 -0
  45. package/dist/index.webworker.esm5.js +25 -23
  46. package/dist/index.webworker.esm5.js.map +1 -1
  47. package/dist/node/{index-358613ec.js → index-8505a33c.js} +26 -24
  48. package/dist/node/index-8505a33c.js.map +1 -0
  49. package/dist/node/index.js +1 -1
  50. package/dist/node/index.rn.d.ts +3 -0
  51. package/dist/node/internal.js +29 -10
  52. package/dist/node/internal.js.map +1 -1
  53. package/dist/node/src/core/errors.d.ts +2 -2
  54. package/dist/node/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  55. package/dist/node/src/mfa/mfa_error.d.ts +4 -5
  56. package/dist/node/src/model/public_types.d.ts +25 -19
  57. package/dist/node/src/platform_browser/persistence/browser.d.ts +4 -3
  58. package/dist/node/src/platform_browser/persistence/browser.test.d.ts +17 -0
  59. package/dist/node/src/platform_browser/strategies/phone.d.ts +3 -0
  60. package/dist/node/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  61. package/dist/node-esm/index-4b759c81.js +6031 -0
  62. package/dist/node-esm/index-4b759c81.js.map +1 -0
  63. package/dist/node-esm/index.cordova.d.ts +32 -0
  64. package/dist/node-esm/index.d.ts +36 -0
  65. package/dist/node-esm/index.doc.d.ts +24 -0
  66. package/dist/node-esm/index.js +8 -0
  67. package/dist/node-esm/index.js.map +1 -0
  68. package/dist/node-esm/index.node.d.ts +17 -0
  69. package/dist/node-esm/index.rn.d.ts +30 -0
  70. package/dist/node-esm/index.shared.d.ts +19 -0
  71. package/dist/node-esm/index.webworker.d.ts +21 -0
  72. package/dist/node-esm/internal/index.d.ts +41 -0
  73. package/dist/node-esm/internal.js +1455 -0
  74. package/dist/node-esm/internal.js.map +1 -0
  75. package/dist/node-esm/package.json +1 -0
  76. package/dist/node-esm/scripts/run_node_tests.d.ts +17 -0
  77. package/dist/node-esm/src/api/account_management/account.d.ts +59 -0
  78. package/dist/node-esm/src/api/account_management/account.test.d.ts +17 -0
  79. package/dist/node-esm/src/api/account_management/email_and_password.d.ts +47 -0
  80. package/dist/node-esm/src/api/account_management/email_and_password.test.d.ts +17 -0
  81. package/dist/node-esm/src/api/account_management/mfa.d.ts +69 -0
  82. package/dist/node-esm/src/api/account_management/mfa.test.d.ts +17 -0
  83. package/dist/node-esm/src/api/account_management/profile.d.ts +29 -0
  84. package/dist/node-esm/src/api/account_management/profile.test.d.ts +17 -0
  85. package/dist/node-esm/src/api/authentication/create_auth_uri.d.ts +26 -0
  86. package/dist/node-esm/src/api/authentication/create_auth_uri.test.d.ts +17 -0
  87. package/dist/node-esm/src/api/authentication/custom_token.d.ts +26 -0
  88. package/dist/node-esm/src/api/authentication/custom_token.test.d.ts +17 -0
  89. package/dist/node-esm/src/api/authentication/email_and_password.d.ts +76 -0
  90. package/dist/node-esm/src/api/authentication/email_and_password.test.d.ts +17 -0
  91. package/dist/node-esm/src/api/authentication/email_link.d.ts +32 -0
  92. package/dist/node-esm/src/api/authentication/email_link.test.d.ts +17 -0
  93. package/dist/node-esm/src/api/authentication/idp.d.ts +40 -0
  94. package/dist/node-esm/src/api/authentication/idp.test.d.ts +17 -0
  95. package/dist/node-esm/src/api/authentication/mfa.d.ts +58 -0
  96. package/dist/node-esm/src/api/authentication/mfa.test.d.ts +17 -0
  97. package/dist/node-esm/src/api/authentication/recaptcha.d.ts +18 -0
  98. package/dist/node-esm/src/api/authentication/recaptcha.test.d.ts +17 -0
  99. package/dist/node-esm/src/api/authentication/sign_up.d.ts +29 -0
  100. package/dist/node-esm/src/api/authentication/sign_up.test.d.ts +17 -0
  101. package/dist/node-esm/src/api/authentication/sms.d.ts +50 -0
  102. package/dist/node-esm/src/api/authentication/sms.test.d.ts +17 -0
  103. package/dist/node-esm/src/api/authentication/token.d.ts +26 -0
  104. package/dist/node-esm/src/api/authentication/token.test.d.ts +17 -0
  105. package/dist/node-esm/src/api/errors.d.ts +118 -0
  106. package/dist/node-esm/src/api/index.d.ts +67 -0
  107. package/dist/node-esm/src/api/index.test.d.ts +17 -0
  108. package/dist/node-esm/src/api/project_config/get_project_config.d.ts +25 -0
  109. package/dist/node-esm/src/api/project_config/get_project_config.test.d.ts +17 -0
  110. package/dist/node-esm/src/core/action_code_url.d.ts +73 -0
  111. package/dist/node-esm/src/core/action_code_url.test.d.ts +17 -0
  112. package/dist/node-esm/src/core/auth/auth_event_manager.d.ts +34 -0
  113. package/dist/node-esm/src/core/auth/auth_event_manager.test.d.ts +17 -0
  114. package/dist/node-esm/src/core/auth/auth_impl.d.ts +106 -0
  115. package/dist/node-esm/src/core/auth/auth_impl.test.d.ts +17 -0
  116. package/dist/node-esm/src/core/auth/emulator.d.ts +42 -0
  117. package/dist/node-esm/src/core/auth/emulator.test.d.ts +17 -0
  118. package/dist/node-esm/src/core/auth/firebase_internal.d.ts +35 -0
  119. package/dist/node-esm/src/core/auth/firebase_internal.test.d.ts +17 -0
  120. package/dist/node-esm/src/core/auth/initialize.d.ts +46 -0
  121. package/dist/node-esm/src/core/auth/initialize.test.d.ts +17 -0
  122. package/dist/node-esm/src/core/auth/register.d.ts +23 -0
  123. package/dist/node-esm/src/core/credentials/auth_credential.d.ts +75 -0
  124. package/dist/node-esm/src/core/credentials/email.d.ts +60 -0
  125. package/dist/node-esm/src/core/credentials/email.test.d.ts +17 -0
  126. package/dist/node-esm/src/core/credentials/index.d.ts +23 -0
  127. package/dist/node-esm/src/core/credentials/oauth.d.ts +81 -0
  128. package/dist/node-esm/src/core/credentials/oauth.test.d.ts +17 -0
  129. package/dist/node-esm/src/core/credentials/phone.d.ts +52 -0
  130. package/dist/node-esm/src/core/credentials/phone.test.d.ts +17 -0
  131. package/dist/node-esm/src/core/credentials/saml.d.ts +52 -0
  132. package/dist/node-esm/src/core/credentials/saml.test.d.ts +17 -0
  133. package/dist/node-esm/src/core/errors.d.ts +299 -0
  134. package/dist/node-esm/src/core/errors.test.d.ts +17 -0
  135. package/dist/node-esm/src/core/index.d.ts +141 -0
  136. package/dist/node-esm/src/core/persistence/in_memory.d.ts +35 -0
  137. package/dist/node-esm/src/core/persistence/in_memory.test.d.ts +17 -0
  138. package/dist/node-esm/src/core/persistence/index.d.ts +41 -0
  139. package/dist/node-esm/src/core/persistence/persistence_user_manager.d.ts +45 -0
  140. package/dist/node-esm/src/core/persistence/persistence_user_manager.test.d.ts +17 -0
  141. package/dist/node-esm/src/core/providers/email.d.ts +83 -0
  142. package/dist/node-esm/src/core/providers/email.test.d.ts +17 -0
  143. package/dist/node-esm/src/core/providers/facebook.d.ts +93 -0
  144. package/dist/node-esm/src/core/providers/facebook.test.d.ts +17 -0
  145. package/dist/node-esm/src/core/providers/federated.d.ts +64 -0
  146. package/dist/node-esm/src/core/providers/federated.test.d.ts +17 -0
  147. package/dist/node-esm/src/core/providers/github.d.ts +89 -0
  148. package/dist/node-esm/src/core/providers/github.test.d.ts +17 -0
  149. package/dist/node-esm/src/core/providers/google.d.ts +96 -0
  150. package/dist/node-esm/src/core/providers/google.test.d.ts +17 -0
  151. package/dist/node-esm/src/core/providers/oauth.d.ts +151 -0
  152. package/dist/node-esm/src/core/providers/oauth.test.d.ts +17 -0
  153. package/dist/node-esm/src/core/providers/saml.d.ts +62 -0
  154. package/dist/node-esm/src/core/providers/saml.test.d.ts +17 -0
  155. package/dist/node-esm/src/core/providers/twitter.d.ts +103 -0
  156. package/dist/node-esm/src/core/providers/twitter.test.d.ts +17 -0
  157. package/dist/node-esm/src/core/strategies/abstract_popup_redirect_operation.d.ts +44 -0
  158. package/dist/node-esm/src/core/strategies/abstract_popup_redirect_operation.test.d.ts +17 -0
  159. package/dist/node-esm/src/core/strategies/action_code_settings.d.ts +19 -0
  160. package/dist/node-esm/src/core/strategies/action_code_settings.test.d.ts +17 -0
  161. package/dist/node-esm/src/core/strategies/anonymous.d.ts +29 -0
  162. package/dist/node-esm/src/core/strategies/anonymous.test.d.ts +17 -0
  163. package/dist/node-esm/src/core/strategies/credential.d.ts +57 -0
  164. package/dist/node-esm/src/core/strategies/credential.test.d.ts +17 -0
  165. package/dist/node-esm/src/core/strategies/custom_token.d.ts +34 -0
  166. package/dist/node-esm/src/core/strategies/custom_token.test.d.ts +17 -0
  167. package/dist/node-esm/src/core/strategies/email.d.ts +98 -0
  168. package/dist/node-esm/src/core/strategies/email.test.d.ts +17 -0
  169. package/dist/node-esm/src/core/strategies/email_and_password.d.ts +126 -0
  170. package/dist/node-esm/src/core/strategies/email_and_password.test.d.ts +17 -0
  171. package/dist/node-esm/src/core/strategies/email_link.d.ts +103 -0
  172. package/dist/node-esm/src/core/strategies/email_link.test.d.ts +17 -0
  173. package/dist/node-esm/src/core/strategies/idp.d.ts +32 -0
  174. package/dist/node-esm/src/core/strategies/idp.test.d.ts +17 -0
  175. package/dist/node-esm/src/core/strategies/redirect.d.ts +35 -0
  176. package/dist/node-esm/src/core/strategies/redirect.test.d.ts +17 -0
  177. package/dist/node-esm/src/core/user/account_info.d.ts +60 -0
  178. package/dist/node-esm/src/core/user/account_info.test.d.ts +17 -0
  179. package/dist/node-esm/src/core/user/additional_user_info.d.ts +31 -0
  180. package/dist/node-esm/src/core/user/additional_user_info.test.d.ts +17 -0
  181. package/dist/node-esm/src/core/user/id_token_result.d.ts +48 -0
  182. package/dist/node-esm/src/core/user/id_token_result.test.d.ts +17 -0
  183. package/dist/node-esm/src/core/user/invalidation.d.ts +18 -0
  184. package/dist/node-esm/src/core/user/invalidation.test.d.ts +17 -0
  185. package/dist/node-esm/src/core/user/link_unlink.d.ts +30 -0
  186. package/dist/node-esm/src/core/user/link_unlink.test.d.ts +17 -0
  187. package/dist/node-esm/src/core/user/proactive_refresh.d.ts +34 -0
  188. package/dist/node-esm/src/core/user/proactive_refresh.test.d.ts +17 -0
  189. package/dist/node-esm/src/core/user/reauthenticate.d.ts +20 -0
  190. package/dist/node-esm/src/core/user/reauthenticate.test.d.ts +17 -0
  191. package/dist/node-esm/src/core/user/reload.d.ts +27 -0
  192. package/dist/node-esm/src/core/user/reload.test.d.ts +17 -0
  193. package/dist/node-esm/src/core/user/token_manager.d.ts +49 -0
  194. package/dist/node-esm/src/core/user/token_manager.test.d.ts +17 -0
  195. package/dist/node-esm/src/core/user/user_credential_impl.d.ts +37 -0
  196. package/dist/node-esm/src/core/user/user_credential_impl.test.d.ts +17 -0
  197. package/dist/node-esm/src/core/user/user_impl.d.ts +68 -0
  198. package/dist/node-esm/src/core/user/user_impl.test.d.ts +17 -0
  199. package/dist/node-esm/src/core/user/user_metadata.d.ts +27 -0
  200. package/dist/node-esm/src/core/util/assert.d.ts +93 -0
  201. package/dist/node-esm/src/core/util/assert.test.d.ts +17 -0
  202. package/dist/node-esm/src/core/util/browser.d.ts +50 -0
  203. package/dist/node-esm/src/core/util/browser.test.d.ts +17 -0
  204. package/dist/node-esm/src/core/util/delay.d.ts +31 -0
  205. package/dist/node-esm/src/core/util/delay.test.d.ts +17 -0
  206. package/dist/node-esm/src/core/util/emulator.d.ts +18 -0
  207. package/dist/node-esm/src/core/util/emulator.test.d.ts +17 -0
  208. package/dist/node-esm/src/core/util/event_id.d.ts +17 -0
  209. package/dist/node-esm/src/core/util/event_id.test.d.ts +17 -0
  210. package/dist/node-esm/src/core/util/fetch_provider.d.ts +25 -0
  211. package/dist/node-esm/src/core/util/handler.d.ts +20 -0
  212. package/dist/node-esm/src/core/util/instantiator.d.ts +28 -0
  213. package/dist/node-esm/src/core/util/instantiator.test.d.ts +17 -0
  214. package/dist/node-esm/src/core/util/location.d.ts +19 -0
  215. package/dist/node-esm/src/core/util/log.d.ts +22 -0
  216. package/dist/node-esm/src/core/util/navigator.d.ts +21 -0
  217. package/dist/node-esm/src/core/util/providers.d.ts +23 -0
  218. package/dist/node-esm/src/core/util/resolver.d.ts +25 -0
  219. package/dist/node-esm/src/core/util/time.d.ts +17 -0
  220. package/dist/node-esm/src/core/util/validate_origin.d.ts +18 -0
  221. package/dist/node-esm/src/core/util/validate_origin.test.d.ts +17 -0
  222. package/dist/node-esm/src/core/util/version.d.ts +30 -0
  223. package/dist/node-esm/src/core/util/version.test.d.ts +17 -0
  224. package/dist/node-esm/src/index.d.ts +18 -0
  225. package/dist/node-esm/src/mfa/index.d.ts +18 -0
  226. package/dist/node-esm/src/mfa/mfa_assertion.d.ts +27 -0
  227. package/dist/node-esm/src/mfa/mfa_error.d.ts +35 -0
  228. package/dist/node-esm/src/mfa/mfa_info.d.ts +32 -0
  229. package/dist/node-esm/src/mfa/mfa_info.test.d.ts +17 -0
  230. package/dist/node-esm/src/mfa/mfa_resolver.d.ts +41 -0
  231. package/dist/node-esm/src/mfa/mfa_resolver.test.d.ts +17 -0
  232. package/dist/node-esm/src/mfa/mfa_session.d.ts +37 -0
  233. package/dist/node-esm/src/mfa/mfa_session.test.d.ts +17 -0
  234. package/dist/node-esm/src/mfa/mfa_user.d.ts +38 -0
  235. package/dist/node-esm/src/mfa/mfa_user.test.d.ts +17 -0
  236. package/dist/node-esm/src/model/application_verifier.d.ts +23 -0
  237. package/dist/node-esm/src/model/auth.d.ts +75 -0
  238. package/dist/node-esm/src/model/enum_maps.d.ts +97 -0
  239. package/dist/node-esm/src/model/enums.d.ts +74 -0
  240. package/dist/node-esm/src/model/id_token.d.ts +84 -0
  241. package/dist/node-esm/src/model/popup_redirect.d.ts +92 -0
  242. package/dist/node-esm/src/model/public_types.d.ts +1139 -0
  243. package/dist/node-esm/src/model/user.d.ts +79 -0
  244. package/dist/node-esm/src/platform_browser/auth.test.d.ts +17 -0
  245. package/dist/node-esm/src/platform_browser/auth_window.d.ts +37 -0
  246. package/dist/node-esm/src/platform_browser/iframe/gapi.d.ts +19 -0
  247. package/dist/node-esm/src/platform_browser/iframe/gapi.iframes.d.ts +47 -0
  248. package/dist/node-esm/src/platform_browser/iframe/gapi.test.d.ts +17 -0
  249. package/dist/node-esm/src/platform_browser/iframe/iframe.d.ts +18 -0
  250. package/dist/node-esm/src/platform_browser/iframe/iframe.test.d.ts +17 -0
  251. package/dist/node-esm/src/platform_browser/index.d.ts +27 -0
  252. package/dist/node-esm/src/platform_browser/load_js.d.ts +18 -0
  253. package/dist/node-esm/src/platform_browser/load_js.test.d.ts +17 -0
  254. package/dist/node-esm/src/platform_browser/messagechannel/index.d.ts +87 -0
  255. package/dist/node-esm/src/platform_browser/messagechannel/promise.d.ts +33 -0
  256. package/dist/node-esm/src/platform_browser/messagechannel/promise.test.d.ts +17 -0
  257. package/dist/node-esm/src/platform_browser/messagechannel/receiver.d.ts +63 -0
  258. package/dist/node-esm/src/platform_browser/messagechannel/receiver.test.d.ts +17 -0
  259. package/dist/node-esm/src/platform_browser/messagechannel/sender.d.ts +46 -0
  260. package/dist/node-esm/src/platform_browser/messagechannel/sender.test.d.ts +17 -0
  261. package/dist/node-esm/src/platform_browser/mfa/assertions/phone.d.ts +56 -0
  262. package/dist/node-esm/src/platform_browser/mfa/assertions/phone.test.d.ts +17 -0
  263. package/dist/node-esm/src/platform_browser/persistence/browser.d.ts +27 -0
  264. package/dist/node-esm/src/platform_browser/persistence/browser.test.d.ts +17 -0
  265. package/dist/node-esm/src/platform_browser/persistence/indexed_db.d.ts +33 -0
  266. package/dist/node-esm/src/platform_browser/persistence/indexed_db.test.d.ts +17 -0
  267. package/dist/node-esm/src/platform_browser/persistence/local_storage.d.ts +25 -0
  268. package/dist/node-esm/src/platform_browser/persistence/local_storage.test.d.ts +17 -0
  269. package/dist/node-esm/src/platform_browser/persistence/session_storage.d.ts +24 -0
  270. package/dist/node-esm/src/platform_browser/persistence/session_storage.test.d.ts +17 -0
  271. package/dist/node-esm/src/platform_browser/popup_redirect.d.ts +24 -0
  272. package/dist/node-esm/src/platform_browser/popup_redirect.test.d.ts +17 -0
  273. package/dist/node-esm/src/platform_browser/providers/phone.d.ts +149 -0
  274. package/dist/node-esm/src/platform_browser/providers/phone.test.d.ts +17 -0
  275. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha.d.ts +23 -0
  276. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_loader.d.ts +44 -0
  277. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_loader.test.d.ts +17 -0
  278. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_mock.d.ts +51 -0
  279. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_mock.test.d.ts +17 -0
  280. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_verifier.d.ts +94 -0
  281. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_verifier.test.d.ts +17 -0
  282. package/dist/node-esm/src/platform_browser/strategies/phone.d.ts +98 -0
  283. package/dist/node-esm/src/platform_browser/strategies/phone.test.d.ts +17 -0
  284. package/dist/node-esm/src/platform_browser/strategies/popup.d.ts +103 -0
  285. package/dist/node-esm/src/platform_browser/strategies/popup.test.d.ts +17 -0
  286. package/dist/node-esm/src/platform_browser/strategies/redirect.d.ts +156 -0
  287. package/dist/node-esm/src/platform_browser/strategies/redirect.test.d.ts +17 -0
  288. package/dist/node-esm/src/platform_browser/util/popup.d.ts +24 -0
  289. package/dist/node-esm/src/platform_browser/util/popup.test.d.ts +17 -0
  290. package/dist/node-esm/src/platform_browser/util/worker.d.ts +20 -0
  291. package/dist/node-esm/src/platform_cordova/plugins.d.ts +42 -0
  292. package/dist/node-esm/src/platform_cordova/popup_redirect/events.d.ts +39 -0
  293. package/dist/node-esm/src/platform_cordova/popup_redirect/events.test.d.ts +17 -0
  294. package/dist/node-esm/src/platform_cordova/popup_redirect/popup_redirect.d.ts +24 -0
  295. package/dist/node-esm/src/platform_cordova/popup_redirect/popup_redirect.test.d.ts +17 -0
  296. package/dist/node-esm/src/platform_cordova/popup_redirect/utils.d.ts +47 -0
  297. package/dist/node-esm/src/platform_cordova/popup_redirect/utils.test.d.ts +17 -0
  298. package/dist/node-esm/src/platform_cordova/strategies/redirect.d.ts +20 -0
  299. package/dist/node-esm/src/platform_node/index.d.ts +49 -0
  300. package/dist/node-esm/src/platform_react_native/persistence/react_native.d.ts +31 -0
  301. package/dist/node-esm/src/platform_react_native/persistence/react_native.test.d.ts +17 -0
  302. package/dist/node-esm/test/helpers/api/helper.d.ts +20 -0
  303. package/dist/node-esm/test/helpers/delay.d.ts +20 -0
  304. package/dist/node-esm/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  305. package/dist/node-esm/test/helpers/fake_service_worker.d.ts +22 -0
  306. package/dist/node-esm/test/helpers/id_token_response.d.ts +18 -0
  307. package/dist/node-esm/test/helpers/iframe_event.d.ts +19 -0
  308. package/dist/node-esm/test/helpers/integration/emulator_rest_helpers.d.ts +35 -0
  309. package/dist/node-esm/test/helpers/integration/helpers.d.ts +20 -0
  310. package/dist/node-esm/test/helpers/integration/settings.d.ts +23 -0
  311. package/dist/node-esm/test/helpers/jwt.d.ts +17 -0
  312. package/dist/node-esm/test/helpers/mock_auth.d.ts +37 -0
  313. package/dist/node-esm/test/helpers/mock_auth_credential.d.ts +31 -0
  314. package/dist/node-esm/test/helpers/mock_fetch.d.ts +30 -0
  315. package/dist/node-esm/test/helpers/mock_fetch.test.d.ts +17 -0
  316. package/dist/node-esm/test/helpers/mock_popup_redirect_resolver.d.ts +24 -0
  317. package/dist/node-esm/test/helpers/redirect_persistence.d.ts +24 -0
  318. package/dist/node-esm/test/helpers/timeout_stub.d.ts +34 -0
  319. package/dist/node-esm/test/integration/flows/anonymous.test.d.ts +17 -0
  320. package/dist/node-esm/test/integration/flows/custom.local.test.d.ts +17 -0
  321. package/dist/node-esm/test/integration/flows/email.test.d.ts +17 -0
  322. package/dist/node-esm/test/integration/flows/idp.local.test.d.ts +17 -0
  323. package/dist/node-esm/test/integration/flows/oob.local.test.d.ts +17 -0
  324. package/dist/node-esm/test/integration/flows/phone.test.d.ts +17 -0
  325. package/dist/node-esm/test/integration/webdriver/anonymous.test.d.ts +17 -0
  326. package/dist/node-esm/test/integration/webdriver/compat/firebaseui.test.d.ts +17 -0
  327. package/dist/node-esm/test/integration/webdriver/persistence.test.d.ts +17 -0
  328. package/dist/node-esm/test/integration/webdriver/popup.test.d.ts +17 -0
  329. package/dist/node-esm/test/integration/webdriver/redirect.test.d.ts +17 -0
  330. package/dist/node-esm/test/integration/webdriver/util/auth_driver.d.ts +46 -0
  331. package/dist/node-esm/test/integration/webdriver/util/functions.d.ts +77 -0
  332. package/dist/node-esm/test/integration/webdriver/util/idp_page.d.ts +31 -0
  333. package/dist/node-esm/test/integration/webdriver/util/js_load_condition.d.ts +25 -0
  334. package/dist/node-esm/test/integration/webdriver/util/test_runner.d.ts +19 -0
  335. package/dist/node-esm/test/integration/webdriver/util/test_server.d.ts +27 -0
  336. package/dist/node-esm/test/integration/webdriver/util/ui_page.d.ts +33 -0
  337. package/dist/rn/index.js +70 -64
  338. package/dist/rn/index.js.map +1 -1
  339. package/dist/rn/index.rn.d.ts +3 -0
  340. package/dist/rn/internal.js +338 -1465
  341. package/dist/rn/internal.js.map +1 -1
  342. package/dist/rn/{enum_maps-81db3ff6.js → phone-fe0b5242.js} +1195 -34
  343. package/dist/rn/phone-fe0b5242.js.map +1 -0
  344. package/dist/rn/src/core/errors.d.ts +2 -2
  345. package/dist/rn/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  346. package/dist/rn/src/mfa/mfa_error.d.ts +4 -5
  347. package/dist/rn/src/model/public_types.d.ts +25 -19
  348. package/dist/rn/src/platform_browser/persistence/browser.d.ts +4 -3
  349. package/dist/rn/src/platform_browser/persistence/browser.test.d.ts +17 -0
  350. package/dist/rn/src/platform_browser/strategies/phone.d.ts +3 -0
  351. package/dist/rn/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  352. package/dist/src/core/errors.d.ts +2 -2
  353. package/dist/src/core/strategies/abstract_popup_redirect_operation.d.ts +1 -1
  354. package/dist/src/mfa/mfa_error.d.ts +4 -5
  355. package/dist/src/model/public_types.d.ts +25 -19
  356. package/dist/src/platform_browser/persistence/browser.d.ts +4 -3
  357. package/dist/src/platform_browser/persistence/browser.test.d.ts +17 -0
  358. package/dist/src/platform_browser/strategies/phone.d.ts +3 -0
  359. package/dist/test/helpers/erroring_unavailable_persistence.d.ts +36 -0
  360. package/package.json +31 -9
  361. package/dist/cordova/popup_redirect-f608cd47.js.map +0 -1
  362. package/dist/esm2017/index-f41a0691.js.map +0 -1
  363. package/dist/esm5/index-fd8b7af5.js.map +0 -1
  364. package/dist/node/index-358613ec.js.map +0 -1
  365. package/dist/rn/enum_maps-81db3ff6.js.map +0 -1
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { MultiFactorAssertion, MultiFactorInfo, MultiFactorSession, MultiFactorUser, User } from '../model/public_types';
18
+ import { UserInternal } from '../model/user';
19
+ export declare class MultiFactorUserImpl implements MultiFactorUser {
20
+ readonly user: UserInternal;
21
+ enrolledFactors: MultiFactorInfo[];
22
+ private constructor();
23
+ static _fromUser(user: UserInternal): MultiFactorUserImpl;
24
+ getSession(): Promise<MultiFactorSession>;
25
+ enroll(assertionExtern: MultiFactorAssertion, displayName?: string | null): Promise<void>;
26
+ unenroll(infoOrUid: MultiFactorInfo | string): Promise<void>;
27
+ }
28
+ /**
29
+ * The {@link MultiFactorUser} corresponding to the user.
30
+ *
31
+ * @remarks
32
+ * This is used to access all multi-factor properties and operations related to the user.
33
+ *
34
+ * @param user - The user.
35
+ *
36
+ * @public
37
+ */
38
+ export declare function multiFactor(user: User): MultiFactorUser;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ export {};
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { ApplicationVerifier } from './public_types';
18
+ export interface ApplicationVerifierInternal extends ApplicationVerifier {
19
+ /**
20
+ * @internal
21
+ */
22
+ _reset(): void;
23
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Auth, AuthSettings, Config, EmulatorConfig, PopupRedirectResolver, User } from './public_types';
18
+ import { ErrorFactory } from '@firebase/util';
19
+ import { AuthErrorCode, AuthErrorParams } from '../core/errors';
20
+ import { PopupRedirectResolverInternal } from './popup_redirect';
21
+ import { UserInternal } from './user';
22
+ import { ClientPlatform } from '../core/util/version';
23
+ export declare type AppName = string;
24
+ export declare type ApiKey = string;
25
+ export declare type AuthDomain = string;
26
+ /**
27
+ * @internal
28
+ */
29
+ export interface ConfigInternal extends Config {
30
+ /**
31
+ * @readonly
32
+ */
33
+ emulator?: {
34
+ url: string;
35
+ };
36
+ /**
37
+ * @readonly
38
+ */
39
+ clientPlatform: ClientPlatform;
40
+ }
41
+ /**
42
+ * UserInternal and AuthInternal reference each other, so both of them are included in the public typings.
43
+ * In order to exclude them, we mark them as internal explicitly.
44
+ *
45
+ * @internal
46
+ */
47
+ export interface AuthInternal extends Auth {
48
+ currentUser: User | null;
49
+ emulatorConfig: EmulatorConfig | null;
50
+ _canInitEmulator: boolean;
51
+ _isInitialized: boolean;
52
+ _initializationPromise: Promise<void> | null;
53
+ _updateCurrentUser(user: UserInternal | null): Promise<void>;
54
+ _onStorageEvent(): void;
55
+ _notifyListenersIfCurrent(user: UserInternal): void;
56
+ _persistUserIfCurrent(user: UserInternal): Promise<void>;
57
+ _setRedirectUser(user: UserInternal | null, popupRedirectResolver?: PopupRedirectResolver): Promise<void>;
58
+ _redirectUserForId(id: string): Promise<UserInternal | null>;
59
+ _popupRedirectResolver: PopupRedirectResolverInternal | null;
60
+ _key(): string;
61
+ _startProactiveRefresh(): void;
62
+ _stopProactiveRefresh(): void;
63
+ _getPersistence(): string;
64
+ _logFramework(framework: string): void;
65
+ _getFrameworks(): readonly string[];
66
+ _getSdkClientVersion(): string;
67
+ readonly name: AppName;
68
+ readonly config: ConfigInternal;
69
+ languageCode: string | null;
70
+ tenantId: string | null;
71
+ readonly settings: AuthSettings;
72
+ _errorFactory: ErrorFactory<AuthErrorCode, AuthErrorParams>;
73
+ useDeviceLanguage(): void;
74
+ signOut(): Promise<void>;
75
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * An enum of factors that may be used for multifactor authentication.
19
+ *
20
+ * @public
21
+ */
22
+ export declare const FactorId: {
23
+ /** Phone as second factor */
24
+ readonly PHONE: "phone";
25
+ };
26
+ /**
27
+ * Enumeration of supported providers.
28
+ *
29
+ * @public
30
+ */
31
+ export declare const ProviderId: {
32
+ /** Facebook provider ID */
33
+ readonly FACEBOOK: "facebook.com";
34
+ /** GitHub provider ID */
35
+ readonly GITHUB: "github.com";
36
+ /** Google provider ID */
37
+ readonly GOOGLE: "google.com";
38
+ /** Password provider */
39
+ readonly PASSWORD: "password";
40
+ /** Phone provider */
41
+ readonly PHONE: "phone";
42
+ /** Twitter provider ID */
43
+ readonly TWITTER: "twitter.com";
44
+ };
45
+ /**
46
+ * Enumeration of supported sign-in methods.
47
+ *
48
+ * @public
49
+ */
50
+ export declare const SignInMethod: {
51
+ /** Email link sign in method */
52
+ readonly EMAIL_LINK: "emailLink";
53
+ /** Email/password sign in method */
54
+ readonly EMAIL_PASSWORD: "password";
55
+ /** Facebook sign in method */
56
+ readonly FACEBOOK: "facebook.com";
57
+ /** GitHub sign in method */
58
+ readonly GITHUB: "github.com";
59
+ /** Google sign in method */
60
+ readonly GOOGLE: "google.com";
61
+ /** Phone sign in method */
62
+ readonly PHONE: "phone";
63
+ /** Twitter sign in method */
64
+ readonly TWITTER: "twitter.com";
65
+ };
66
+ /**
67
+ * Enumeration of supported operation types.
68
+ *
69
+ * @public
70
+ */
71
+ export declare const OperationType: {
72
+ /** Operation involving linking an additional provider to an already signed-in user. */
73
+ readonly LINK: "link";
74
+ /** Operation involving using a provider to reauthenticate an already signed-in user. */
75
+ readonly REAUTHENTICATE: "reauthenticate";
76
+ /** Operation involving signing in a user. */
77
+ readonly SIGN_IN: "signIn";
78
+ };
79
+ /**
80
+ * An enumeration of the possible email action types.
81
+ *
82
+ * @public
83
+ */
84
+ export declare const ActionCodeOperation: {
85
+ /** The email link sign-in action. */
86
+ readonly EMAIL_SIGNIN: "EMAIL_SIGNIN";
87
+ /** The password reset action. */
88
+ readonly PASSWORD_RESET: "PASSWORD_RESET";
89
+ /** The email revocation action. */
90
+ readonly RECOVER_EMAIL: "RECOVER_EMAIL";
91
+ /** The revert second factor addition email action. */
92
+ readonly REVERT_SECOND_FACTOR_ADDITION: "REVERT_SECOND_FACTOR_ADDITION";
93
+ /** The revert second factor addition email action. */
94
+ readonly VERIFY_AND_CHANGE_EMAIL: "VERIFY_AND_CHANGE_EMAIL";
95
+ /** The email verification action. */
96
+ readonly VERIFY_EMAIL: "VERIFY_EMAIL";
97
+ };
@@ -0,0 +1,74 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * Enumeration of supported providers.
19
+ * @internal
20
+ */
21
+ export declare const enum ProviderId {
22
+ /** @internal */
23
+ ANONYMOUS = "anonymous",
24
+ /** @internal */
25
+ CUSTOM = "custom",
26
+ /** Facebook provider ID */
27
+ FACEBOOK = "facebook.com",
28
+ /** @internal */
29
+ FIREBASE = "firebase",
30
+ /** GitHub provider ID */
31
+ GITHUB = "github.com",
32
+ /** Google provider ID */
33
+ GOOGLE = "google.com",
34
+ /** Password provider */
35
+ PASSWORD = "password",
36
+ /** Phone provider */
37
+ PHONE = "phone",
38
+ /** Twitter provider ID */
39
+ TWITTER = "twitter.com"
40
+ }
41
+ /**
42
+ * Enumeration of supported sign-in methods.
43
+ * @internal
44
+ */
45
+ export declare const enum SignInMethod {
46
+ /** @internal */
47
+ ANONYMOUS = "anonymous",
48
+ /** Email link sign in method */
49
+ EMAIL_LINK = "emailLink",
50
+ /** Email/password sign in method */
51
+ EMAIL_PASSWORD = "password",
52
+ /** Facebook sign in method */
53
+ FACEBOOK = "facebook.com",
54
+ /** GitHub sign in method */
55
+ GITHUB = "github.com",
56
+ /** Google sign in method */
57
+ GOOGLE = "google.com",
58
+ /** Phone sign in method */
59
+ PHONE = "phone",
60
+ /** Twitter sign in method */
61
+ TWITTER = "twitter.com"
62
+ }
63
+ /**
64
+ * Enumeration of supported operation types.
65
+ * @internal
66
+ */
67
+ export declare const enum OperationType {
68
+ /** Operation involving linking an additional provider to an already signed-in user. */
69
+ LINK = "link",
70
+ /** Operation involving using a provider to reauthenticate an already signed-in user. */
71
+ REAUTHENTICATE = "reauthenticate",
72
+ /** Operation involving signing in a user. */
73
+ SIGN_IN = "signIn"
74
+ }
@@ -0,0 +1,84 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { PhoneOrOauthTokenResponse } from '../api/authentication/mfa';
18
+ /**
19
+ * Raw encoded JWT
20
+ *
21
+ */
22
+ export declare type IdToken = string;
23
+ /**
24
+ * Raw parsed JWT
25
+ *
26
+ */
27
+ export interface ParsedIdToken {
28
+ iss: string;
29
+ aud: string;
30
+ exp: number;
31
+ sub: string;
32
+ iat: number;
33
+ email?: string;
34
+ verified: boolean;
35
+ providerId?: string;
36
+ tenantId?: string;
37
+ anonymous: boolean;
38
+ federatedId?: string;
39
+ displayName?: string;
40
+ photoURL?: string;
41
+ toString(): string;
42
+ }
43
+ /**
44
+ * IdToken as returned by the API
45
+ *
46
+ * @internal
47
+ */
48
+ export interface IdTokenResponse {
49
+ localId: string;
50
+ idToken?: IdToken;
51
+ refreshToken?: string;
52
+ expiresIn?: string;
53
+ providerId?: string;
54
+ displayName?: string | null;
55
+ isNewUser?: boolean;
56
+ kind?: IdTokenResponseKind;
57
+ photoUrl?: string | null;
58
+ rawUserInfo?: string;
59
+ screenName?: string | null;
60
+ }
61
+ /**
62
+ * The possible types of the `IdTokenResponse`
63
+ *
64
+ * @internal
65
+ */
66
+ export declare const enum IdTokenResponseKind {
67
+ CreateAuthUri = "identitytoolkit#CreateAuthUriResponse",
68
+ DeleteAccount = "identitytoolkit#DeleteAccountResponse",
69
+ DownloadAccount = "identitytoolkit#DownloadAccountResponse",
70
+ EmailLinkSignin = "identitytoolkit#EmailLinkSigninResponse",
71
+ GetAccountInfo = "identitytoolkit#GetAccountInfoResponse",
72
+ GetOobConfirmationCode = "identitytoolkit#GetOobConfirmationCodeResponse",
73
+ GetRecaptchaParam = "identitytoolkit#GetRecaptchaParamResponse",
74
+ ResetPassword = "identitytoolkit#ResetPasswordResponse",
75
+ SetAccountInfo = "identitytoolkit#SetAccountInfoResponse",
76
+ SignupNewUser = "identitytoolkit#SignupNewUserResponse",
77
+ UploadAccount = "identitytoolkit#UploadAccountResponse",
78
+ VerifyAssertion = "identitytoolkit#VerifyAssertionResponse",
79
+ VerifyCustomToken = "identitytoolkit#VerifyCustomTokenResponse",
80
+ VerifyPassword = "identitytoolkit#VerifyPasswordResponse"
81
+ }
82
+ export interface TaggedWithTokenResponse {
83
+ _tokenResponse?: PhoneOrOauthTokenResponse;
84
+ }
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Auth, AuthProvider, Persistence, PopupRedirectResolver, UserCredential } from './public_types';
18
+ import { FirebaseError } from '@firebase/util';
19
+ import { AuthPopup } from '../platform_browser/util/popup';
20
+ import { AuthInternal } from './auth';
21
+ export declare const enum EventFilter {
22
+ POPUP = 0,
23
+ REDIRECT = 1
24
+ }
25
+ export declare const enum GapiOutcome {
26
+ ACK = "ACK",
27
+ ERROR = "ERROR"
28
+ }
29
+ export interface GapiAuthEvent extends gapi.iframes.Message {
30
+ authEvent: AuthEvent;
31
+ }
32
+ /**
33
+ * @internal
34
+ */
35
+ export declare const enum AuthEventType {
36
+ LINK_VIA_POPUP = "linkViaPopup",
37
+ LINK_VIA_REDIRECT = "linkViaRedirect",
38
+ REAUTH_VIA_POPUP = "reauthViaPopup",
39
+ REAUTH_VIA_REDIRECT = "reauthViaRedirect",
40
+ SIGN_IN_VIA_POPUP = "signInViaPopup",
41
+ SIGN_IN_VIA_REDIRECT = "signInViaRedirect",
42
+ UNKNOWN = "unknown",
43
+ VERIFY_APP = "verifyApp"
44
+ }
45
+ export interface AuthEventError extends Error {
46
+ code: string;
47
+ message: string;
48
+ }
49
+ /**
50
+ * @internal
51
+ */
52
+ export interface AuthEvent {
53
+ type: AuthEventType;
54
+ eventId: string | null;
55
+ urlResponse: string | null;
56
+ sessionId: string | null;
57
+ postBody: string | null;
58
+ tenantId: string | null;
59
+ error?: AuthEventError;
60
+ }
61
+ /**
62
+ * @internal
63
+ */
64
+ export interface AuthEventConsumer {
65
+ readonly filter: AuthEventType[];
66
+ eventId: string | null;
67
+ onAuthEvent(event: AuthEvent): unknown;
68
+ onError(error: FirebaseError): unknown;
69
+ }
70
+ /**
71
+ * @internal
72
+ */
73
+ export interface EventManager {
74
+ registerConsumer(authEventConsumer: AuthEventConsumer): void;
75
+ unregisterConsumer(authEventConsumer: AuthEventConsumer): void;
76
+ }
77
+ /**
78
+ * We need to mark this interface as internal explicitly to exclude it in the public typings, because
79
+ * it references AuthInternal which has a circular dependency with UserInternal.
80
+ *
81
+ * @internal
82
+ */
83
+ export interface PopupRedirectResolverInternal extends PopupRedirectResolver {
84
+ _shouldInitProactively: boolean;
85
+ _initialize(auth: AuthInternal): Promise<EventManager>;
86
+ _openPopup(auth: AuthInternal, provider: AuthProvider, authType: AuthEventType, eventId?: string): Promise<AuthPopup>;
87
+ _openRedirect(auth: AuthInternal, provider: AuthProvider, authType: AuthEventType, eventId?: string): Promise<void | never>;
88
+ _isIframeWebStorageSupported(auth: AuthInternal, cb: (support: boolean) => unknown): void;
89
+ _redirectPersistence: Persistence;
90
+ _originValidation(auth: Auth): Promise<void>;
91
+ _completeRedirectFn: (auth: Auth, resolver: PopupRedirectResolver, bypassAuthState: boolean) => Promise<UserCredential | null>;
92
+ }