@firebase-oss/ui-angular 0.0.1 → 0.0.2-exp.6bf0c31

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.
package/dist/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
1
  import * as _tanstack_angular_form from '@tanstack/angular-form';
2
2
  import * as _angular_core from '@angular/core';
3
- import { ElementRef, Signal, EnvironmentProviders } from '@angular/core';
4
- import { UserCredential, RecaptchaVerifier, GoogleAuthProvider, FacebookAuthProvider, OAuthProvider, TwitterAuthProvider, GithubAuthProvider, AuthProvider } from '@angular/fire/auth';
3
+ import { EventEmitter, OnInit, ElementRef, Signal, EnvironmentProviders } from '@angular/core';
4
+ import { UserCredential, GoogleAuthProvider, FacebookAuthProvider, OAuthProvider, TwitterAuthProvider, GithubAuthProvider, AuthProvider, User } from '@angular/fire/auth';
5
5
  import * as firebase_auth from 'firebase/auth';
6
- import { MultiFactorInfo } from 'firebase/auth';
6
+ import { UserCredential as UserCredential$1, MultiFactorInfo, FactorId, RecaptchaVerifier, TotpSecret } from 'firebase/auth';
7
+ import * as libphonenumber_js from 'libphonenumber-js';
7
8
  import * as _firebase_oss_ui_core from '@firebase-oss/ui-core';
8
- import { CountryCode, FirebaseUIStore, FirebaseUI, createSignInAuthFormSchema, createSignUpAuthFormSchema, createForgotPasswordAuthFormSchema, createEmailLinkAuthFormSchema, createPhoneAuthNumberFormSchema, createPhoneAuthVerifyFormSchema, createMultiFactorPhoneAuthNumberFormSchema, createMultiFactorPhoneAuthVerifyFormSchema, createMultiFactorTotpAuthNumberFormSchema, createMultiFactorTotpAuthVerifyFormSchema, CountryData } from '@firebase-oss/ui-core';
9
+ import { CountryCode, FirebaseUIStore, FirebaseUI, createSignInAuthFormSchema, createSignUpAuthFormSchema, createForgotPasswordAuthFormSchema, createEmailLinkAuthFormSchema, createPhoneAuthNumberFormSchema, createPhoneAuthVerifyFormSchema, createMultiFactorPhoneAuthNumberFormSchema, createMultiFactorPhoneAuthAssertionFormSchema, createMultiFactorPhoneAuthVerifyFormSchema, createMultiFactorTotpAuthNumberFormSchema, createMultiFactorTotpAuthVerifyFormSchema, CountryData } from '@firebase-oss/ui-core';
9
10
  import { FirebaseApps } from '@angular/fire/app';
10
11
 
11
12
  declare class EmailLinkAuthFormComponent {
@@ -16,8 +17,10 @@ declare class EmailLinkAuthFormComponent {
16
17
  sendSignInLinkLabel: _angular_core.Signal<string>;
17
18
  emailSentMessage: _angular_core.Signal<string>;
18
19
  unknownErrorLabel: _angular_core.Signal<string>;
19
- emailSent: _angular_core.OutputEmitterRef<void>;
20
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
20
+ /** Event emitter fired when sign-in link email is sent. */
21
+ emailSent: EventEmitter<void>;
22
+ /** Event emitter for successful sign-in. */
23
+ signIn: EventEmitter<UserCredential>;
21
24
  form: _tanstack_angular_form.FormApi<{
22
25
  email: string;
23
26
  }, _tanstack_angular_form.FormValidateOrFn<{
@@ -80,8 +83,10 @@ declare class ForgotPasswordAuthFormComponent {
80
83
  backToSignInLabel: _angular_core.Signal<string>;
81
84
  checkEmailForResetMessage: _angular_core.Signal<string>;
82
85
  unknownErrorLabel: _angular_core.Signal<string>;
83
- passwordSent: _angular_core.OutputEmitterRef<void>;
84
- backToSignIn: _angular_core.OutputEmitterRef<void>;
86
+ /** Event emitter for back to sign in action. */
87
+ backToSignIn: _angular_core.InputSignal<EventEmitter<void>>;
88
+ /** Event emitter fired when password reset email is sent. */
89
+ passwordSent: EventEmitter<void>;
85
90
  form: _tanstack_angular_form.FormApi<{
86
91
  email: string;
87
92
  }, _tanstack_angular_form.FormValidateOrFn<{
@@ -131,25 +136,48 @@ declare class ForgotPasswordAuthFormComponent {
131
136
  handleSubmit(event: SubmitEvent): Promise<void>;
132
137
  constructor();
133
138
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ForgotPasswordAuthFormComponent, never>;
134
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ForgotPasswordAuthFormComponent, "fui-forgot-password-auth-form", never, {}, { "passwordSent": "passwordSent"; "backToSignIn": "backToSignIn"; }, never, never, true, never>;
139
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ForgotPasswordAuthFormComponent, "fui-forgot-password-auth-form", never, { "backToSignIn": { "alias": "backToSignIn"; "required": false; "isSignal": true; }; }, { "passwordSent": "passwordSent"; }, never, never, true, never>;
135
140
  }
136
141
 
137
142
  declare class MultiFactorAuthAssertionFormComponent {
138
143
  private ui;
144
+ constructor();
145
+ /** Event emitter for successful MFA assertion. */
146
+ onSuccess: EventEmitter<UserCredential$1>;
139
147
  resolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
140
148
  selectedHint: _angular_core.WritableSignal<MultiFactorInfo>;
141
- phoneFactorId: _angular_core.Signal<string>;
142
- totpFactorId: _angular_core.Signal<"totp">;
149
+ phoneFactorId: string;
150
+ totpFactorId: "totp";
143
151
  smsVerificationLabel: _angular_core.Signal<string>;
144
152
  totpVerificationLabel: _angular_core.Signal<string>;
153
+ mfaAssertionFactorPrompt: _angular_core.Signal<string>;
145
154
  selectHint(hint: MultiFactorInfo): void;
146
155
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MultiFactorAuthAssertionFormComponent, never>;
147
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiFactorAuthAssertionFormComponent, "fui-multi-factor-auth-assertion-form", never, {}, {}, never, never, true, never>;
156
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiFactorAuthAssertionFormComponent, "fui-multi-factor-auth-assertion-form", never, {}, { "onSuccess": "onSuccess"; }, never, never, true, never>;
157
+ }
158
+
159
+ type Hint$1 = (typeof FactorId)[keyof typeof FactorId];
160
+ declare class MultiFactorAuthEnrollmentFormComponent implements OnInit {
161
+ /** The available MFA factor types for enrollment. */
162
+ hints: _angular_core.InputSignal<Hint$1[]>;
163
+ /** Event emitter fired when MFA enrollment is completed. */
164
+ onEnrollment: EventEmitter<void>;
165
+ selectedHint: _angular_core.WritableSignal<Hint$1>;
166
+ phoneFactorId: "phone";
167
+ totpFactorId: "totp";
168
+ smsVerificationLabel: _angular_core.Signal<string>;
169
+ totpVerificationLabel: _angular_core.Signal<string>;
170
+ validatedHint: _angular_core.Signal<Hint$1>;
171
+ ngOnInit(): void;
172
+ selectHint(hint: Hint$1): void;
173
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MultiFactorAuthEnrollmentFormComponent, never>;
174
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiFactorAuthEnrollmentFormComponent, "fui-multi-factor-auth-enrollment-form", never, { "hints": { "alias": "hints"; "required": false; "isSignal": true; }; }, { "onEnrollment": "onEnrollment"; }, never, never, true, never>;
148
175
  }
149
176
 
150
177
  declare class PhoneAuthFormComponent {
151
178
  verificationId: _angular_core.WritableSignal<string>;
152
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
179
+ /** Event emitter for successful sign-in. */
180
+ signIn: EventEmitter<UserCredential>;
153
181
  handlePhoneSubmit(data: {
154
182
  verificationId: string;
155
183
  phoneNumber: string;
@@ -168,9 +196,12 @@ declare class SignInAuthFormComponent {
168
196
  noAccountLabel: _angular_core.Signal<string>;
169
197
  signUpLabel: _angular_core.Signal<string>;
170
198
  unknownErrorLabel: _angular_core.Signal<string>;
171
- forgotPassword: _angular_core.OutputEmitterRef<void>;
172
- signUp: _angular_core.OutputEmitterRef<void>;
173
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
199
+ /** Event emitter for forgot password action. */
200
+ forgotPassword: _angular_core.InputSignal<EventEmitter<void>>;
201
+ /** Event emitter for sign up action. */
202
+ signUp: _angular_core.InputSignal<EventEmitter<void>>;
203
+ /** Event emitter for successful sign-in. */
204
+ signIn: EventEmitter<UserCredential>;
174
205
  form: _tanstack_angular_form.FormApi<{
175
206
  email: string;
176
207
  password: string;
@@ -242,7 +273,7 @@ declare class SignInAuthFormComponent {
242
273
  handleSubmit(event: SubmitEvent): void;
243
274
  constructor();
244
275
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SignInAuthFormComponent, never>;
245
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignInAuthFormComponent, "fui-sign-in-auth-form", never, {}, { "forgotPassword": "forgotPassword"; "signUp": "signUp"; "signIn": "signIn"; }, never, never, true, never>;
276
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignInAuthFormComponent, "fui-sign-in-auth-form", never, { "forgotPassword": { "alias": "forgotPassword"; "required": false; "isSignal": true; }; "signUp": { "alias": "signUp"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
246
277
  }
247
278
 
248
279
  declare class SignUpAuthFormComponent {
@@ -256,8 +287,10 @@ declare class SignUpAuthFormComponent {
256
287
  haveAccountLabel: _angular_core.Signal<string>;
257
288
  signInLabel: _angular_core.Signal<string>;
258
289
  unknownErrorLabel: _angular_core.Signal<string>;
259
- signUp: _angular_core.OutputEmitterRef<UserCredential>;
260
- signIn: _angular_core.OutputEmitterRef<void>;
290
+ /** Event emitter for sign in action. */
291
+ signIn: _angular_core.InputSignal<EventEmitter<void>>;
292
+ /** Event emitter for successful sign-up. */
293
+ signUp: EventEmitter<UserCredential>;
261
294
  form: _tanstack_angular_form.FormApi<{
262
295
  email: string;
263
296
  password: string;
@@ -351,66 +384,22 @@ declare class SignUpAuthFormComponent {
351
384
  handleSubmit(event: SubmitEvent): void;
352
385
  constructor();
353
386
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SignUpAuthFormComponent, never>;
354
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignUpAuthFormComponent, "fui-sign-up-auth-form", never, {}, { "signUp": "signUp"; "signIn": "signIn"; }, never, never, true, never>;
387
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignUpAuthFormComponent, "fui-sign-up-auth-form", never, { "signIn": { "alias": "signIn"; "required": false; "isSignal": true; }; }, { "signUp": "signUp"; }, never, never, true, never>;
355
388
  }
356
389
 
357
390
  declare class SmsMultiFactorAssertionPhoneFormComponent {
358
391
  private ui;
359
- private formSchema;
392
+ /** The multi-factor info hint containing phone number details. */
360
393
  hint: _angular_core.InputSignal<MultiFactorInfo>;
361
- onSubmit: _angular_core.OutputEmitterRef<string>;
362
- phoneNumberLabel: _angular_core.Signal<string>;
394
+ /** Event emitter fired when verification ID is received. */
395
+ onSubmit: EventEmitter<string>;
363
396
  sendCodeLabel: _angular_core.Signal<string>;
364
- unknownErrorLabel: _angular_core.Signal<string>;
365
397
  recaptchaContainer: _angular_core.Signal<ElementRef<HTMLDivElement>>;
366
398
  phoneNumber: _angular_core.Signal<string>;
367
- recaptchaVerifier: _angular_core.Signal<RecaptchaVerifier>;
368
- form: _tanstack_angular_form.FormApi<{
369
- phoneNumber: string;
370
- }, _tanstack_angular_form.FormValidateOrFn<{
371
- phoneNumber: string;
372
- }>, _tanstack_angular_form.FormValidateOrFn<{
373
- phoneNumber: string;
374
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
375
- phoneNumber: string;
376
- }>, _tanstack_angular_form.FormValidateOrFn<{
377
- phoneNumber: string;
378
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
379
- phoneNumber: string;
380
- }>, _tanstack_angular_form.FormValidateOrFn<{
381
- phoneNumber: string;
382
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
383
- phoneNumber: string;
384
- }>, _tanstack_angular_form.FormValidateOrFn<{
385
- phoneNumber: string;
386
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
387
- phoneNumber: string;
388
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
389
- phoneNumber: string;
390
- }>, unknown>;
391
- state: _angular_core.Signal<_tanstack_angular_form.FormState<{
392
- phoneNumber: string;
393
- }, _tanstack_angular_form.FormValidateOrFn<{
394
- phoneNumber: string;
395
- }>, _tanstack_angular_form.FormValidateOrFn<{
396
- phoneNumber: string;
397
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
398
- phoneNumber: string;
399
- }>, _tanstack_angular_form.FormValidateOrFn<{
400
- phoneNumber: string;
401
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
402
- phoneNumber: string;
403
- }>, _tanstack_angular_form.FormValidateOrFn<{
404
- phoneNumber: string;
405
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
406
- phoneNumber: string;
407
- }>, _tanstack_angular_form.FormValidateOrFn<{
408
- phoneNumber: string;
409
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
410
- phoneNumber: string;
411
- }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
412
- phoneNumber: string;
413
- }>>>;
399
+ mfaSmsAssertionPrompt: _angular_core.Signal<string>;
400
+ recaptchaVerifier: _angular_core.Signal<firebase_auth.RecaptchaVerifier>;
401
+ form: _tanstack_angular_form.FormApi<{}, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, unknown>;
402
+ state: _angular_core.Signal<_tanstack_angular_form.FormState<{}, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>, _tanstack_angular_form.FormAsyncValidateOrFn<{}>>>;
414
403
  constructor();
415
404
  handleSubmit(event: SubmitEvent): Promise<void>;
416
405
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmsMultiFactorAssertionPhoneFormComponent, never>;
@@ -419,10 +408,13 @@ declare class SmsMultiFactorAssertionPhoneFormComponent {
419
408
  declare class SmsMultiFactorAssertionVerifyFormComponent {
420
409
  private ui;
421
410
  private formSchema;
411
+ /** The verification ID received from the phone form. */
422
412
  verificationId: _angular_core.InputSignal<string>;
423
- onSuccess: _angular_core.OutputEmitterRef<void>;
413
+ /** Event emitter for successful MFA assertion. */
414
+ onSuccess: EventEmitter<UserCredential$1>;
424
415
  verificationCodeLabel: _angular_core.Signal<string>;
425
416
  verifyCodeLabel: _angular_core.Signal<string>;
417
+ smsVerificationPrompt: _angular_core.Signal<string>;
426
418
  unknownErrorLabel: _angular_core.Signal<string>;
427
419
  form: _tanstack_angular_form.FormApi<{
428
420
  verificationId: string;
@@ -498,8 +490,10 @@ declare class SmsMultiFactorAssertionVerifyFormComponent {
498
490
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmsMultiFactorAssertionVerifyFormComponent, "fui-sms-multi-factor-assertion-verify-form", never, { "verificationId": { "alias": "verificationId"; "required": true; "isSignal": true; }; }, { "onSuccess": "onSuccess"; }, never, never, true, never>;
499
491
  }
500
492
  declare class SmsMultiFactorAssertionFormComponent {
493
+ /** The multi-factor info hint containing phone number details. */
501
494
  hint: _angular_core.InputSignal<MultiFactorInfo>;
502
- onSuccess: _angular_core.OutputEmitterRef<void>;
495
+ /** Event emitter for successful MFA assertion. */
496
+ onSuccess: EventEmitter<UserCredential$1>;
503
497
  verification: _angular_core.WritableSignal<{
504
498
  verificationId: string;
505
499
  }>;
@@ -508,14 +502,155 @@ declare class SmsMultiFactorAssertionFormComponent {
508
502
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmsMultiFactorAssertionFormComponent, "fui-sms-multi-factor-assertion-form", never, { "hint": { "alias": "hint"; "required": true; "isSignal": true; }; }, { "onSuccess": "onSuccess"; }, never, never, true, never>;
509
503
  }
510
504
 
505
+ declare class SmsMultiFactorEnrollmentFormComponent {
506
+ private ui;
507
+ private phoneFormSchema;
508
+ private verificationFormSchema;
509
+ private defaultCountry;
510
+ verificationId: _angular_core.WritableSignal<string>;
511
+ country: _angular_core.WritableSignal<libphonenumber_js.CountryCode>;
512
+ displayName: _angular_core.WritableSignal<string>;
513
+ displayNameLabel: _angular_core.Signal<string>;
514
+ phoneNumberLabel: _angular_core.Signal<string>;
515
+ sendCodeLabel: _angular_core.Signal<string>;
516
+ verificationCodeLabel: _angular_core.Signal<string>;
517
+ verifyCodeLabel: _angular_core.Signal<string>;
518
+ smsVerificationPrompt: _angular_core.Signal<string>;
519
+ /** Event emitter fired when MFA enrollment is completed. */
520
+ onEnrollment: EventEmitter<void>;
521
+ recaptchaContainer: _angular_core.Signal<ElementRef<HTMLDivElement>>;
522
+ recaptchaVerifier: _angular_core.Signal<RecaptchaVerifier>;
523
+ phoneForm: _tanstack_angular_form.FormApi<{
524
+ displayName: string;
525
+ phoneNumber: string;
526
+ }, _tanstack_angular_form.FormValidateOrFn<{
527
+ displayName: string;
528
+ phoneNumber: string;
529
+ }>, _tanstack_angular_form.FormValidateOrFn<{
530
+ displayName: string;
531
+ phoneNumber: string;
532
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
533
+ displayName: string;
534
+ phoneNumber: string;
535
+ }>, _tanstack_angular_form.FormValidateOrFn<{
536
+ displayName: string;
537
+ phoneNumber: string;
538
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
539
+ displayName: string;
540
+ phoneNumber: string;
541
+ }>, _tanstack_angular_form.FormValidateOrFn<{
542
+ displayName: string;
543
+ phoneNumber: string;
544
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
545
+ displayName: string;
546
+ phoneNumber: string;
547
+ }>, _tanstack_angular_form.FormValidateOrFn<{
548
+ displayName: string;
549
+ phoneNumber: string;
550
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
551
+ displayName: string;
552
+ phoneNumber: string;
553
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
554
+ displayName: string;
555
+ phoneNumber: string;
556
+ }>, unknown>;
557
+ verificationForm: _tanstack_angular_form.FormApi<{
558
+ verificationCode: string;
559
+ }, _tanstack_angular_form.FormValidateOrFn<{
560
+ verificationCode: string;
561
+ }>, _tanstack_angular_form.FormValidateOrFn<{
562
+ verificationCode: string;
563
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
564
+ verificationCode: string;
565
+ }>, _tanstack_angular_form.FormValidateOrFn<{
566
+ verificationCode: string;
567
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
568
+ verificationCode: string;
569
+ }>, _tanstack_angular_form.FormValidateOrFn<{
570
+ verificationCode: string;
571
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
572
+ verificationCode: string;
573
+ }>, _tanstack_angular_form.FormValidateOrFn<{
574
+ verificationCode: string;
575
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
576
+ verificationCode: string;
577
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
578
+ verificationCode: string;
579
+ }>, unknown>;
580
+ phoneState: _angular_core.Signal<_tanstack_angular_form.FormState<{
581
+ displayName: string;
582
+ phoneNumber: string;
583
+ }, _tanstack_angular_form.FormValidateOrFn<{
584
+ displayName: string;
585
+ phoneNumber: string;
586
+ }>, _tanstack_angular_form.FormValidateOrFn<{
587
+ displayName: string;
588
+ phoneNumber: string;
589
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
590
+ displayName: string;
591
+ phoneNumber: string;
592
+ }>, _tanstack_angular_form.FormValidateOrFn<{
593
+ displayName: string;
594
+ phoneNumber: string;
595
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
596
+ displayName: string;
597
+ phoneNumber: string;
598
+ }>, _tanstack_angular_form.FormValidateOrFn<{
599
+ displayName: string;
600
+ phoneNumber: string;
601
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
602
+ displayName: string;
603
+ phoneNumber: string;
604
+ }>, _tanstack_angular_form.FormValidateOrFn<{
605
+ displayName: string;
606
+ phoneNumber: string;
607
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
608
+ displayName: string;
609
+ phoneNumber: string;
610
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
611
+ displayName: string;
612
+ phoneNumber: string;
613
+ }>>>;
614
+ verificationState: _angular_core.Signal<_tanstack_angular_form.FormState<{
615
+ verificationCode: string;
616
+ }, _tanstack_angular_form.FormValidateOrFn<{
617
+ verificationCode: string;
618
+ }>, _tanstack_angular_form.FormValidateOrFn<{
619
+ verificationCode: string;
620
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
621
+ verificationCode: string;
622
+ }>, _tanstack_angular_form.FormValidateOrFn<{
623
+ verificationCode: string;
624
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
625
+ verificationCode: string;
626
+ }>, _tanstack_angular_form.FormValidateOrFn<{
627
+ verificationCode: string;
628
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
629
+ verificationCode: string;
630
+ }>, _tanstack_angular_form.FormValidateOrFn<{
631
+ verificationCode: string;
632
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
633
+ verificationCode: string;
634
+ }>, _tanstack_angular_form.FormAsyncValidateOrFn<{
635
+ verificationCode: string;
636
+ }>>>;
637
+ constructor();
638
+ handlePhoneSubmit(event: SubmitEvent): Promise<void>;
639
+ handleVerificationSubmit(event: SubmitEvent): Promise<void>;
640
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmsMultiFactorEnrollmentFormComponent, never>;
641
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmsMultiFactorEnrollmentFormComponent, "fui-sms-multi-factor-enrollment-form", never, {}, { "onEnrollment": "onEnrollment"; }, never, never, true, never>;
642
+ }
643
+
511
644
  declare class TotpMultiFactorAssertionFormComponent {
512
645
  private ui;
513
646
  private formSchema;
647
+ /** The multi-factor info hint containing TOTP details. */
514
648
  hint: _angular_core.InputSignal<MultiFactorInfo>;
515
- onSuccess: _angular_core.OutputEmitterRef<void>;
649
+ /** Event emitter for successful MFA assertion. */
650
+ onSuccess: EventEmitter<UserCredential$1>;
516
651
  verificationCodeLabel: _angular_core.Signal<string>;
517
652
  verifyCodeLabel: _angular_core.Signal<string>;
518
- unknownErrorLabel: _angular_core.Signal<string>;
653
+ enterVerificationCodePrompt: _angular_core.Signal<string>;
519
654
  form: _tanstack_angular_form.FormApi<{
520
655
  verificationCode: string;
521
656
  }, _tanstack_angular_form.FormValidateOrFn<{
@@ -568,78 +703,135 @@ declare class TotpMultiFactorAssertionFormComponent {
568
703
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<TotpMultiFactorAssertionFormComponent, "fui-totp-multi-factor-assertion-form", never, { "hint": { "alias": "hint"; "required": true; "isSignal": true; }; }, { "onSuccess": "onSuccess"; }, never, never, true, never>;
569
704
  }
570
705
 
706
+ declare class TotpMultiFactorEnrollmentFormComponent {
707
+ private ui;
708
+ enrollment: _angular_core.WritableSignal<{
709
+ secret: TotpSecret;
710
+ displayName: string;
711
+ }>;
712
+ /** Event emitter fired when MFA enrollment is completed. */
713
+ onEnrollment: EventEmitter<void>;
714
+ constructor();
715
+ handleSecretGeneration(data: {
716
+ secret: TotpSecret;
717
+ displayName: string;
718
+ }): void;
719
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TotpMultiFactorEnrollmentFormComponent, never>;
720
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TotpMultiFactorEnrollmentFormComponent, "fui-totp-multi-factor-enrollment-form", never, {}, { "onEnrollment": "onEnrollment"; }, never, never, true, never>;
721
+ }
722
+
571
723
  declare class GoogleSignInButtonComponent {
572
724
  ui: _angular_core.Signal<_firebase_oss_ui_core.FirebaseUI>;
573
725
  signInWithGoogleLabel: _angular_core.Signal<string>;
726
+ /** Whether to use themed styling. */
727
+ themed: _angular_core.InputSignal<boolean | "neutral">;
728
+ /** Event emitter for successful sign-in. */
729
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
574
730
  private defaultProvider;
731
+ /** Optional custom OAuth provider configuration. */
575
732
  provider: _angular_core.InputSignal<GoogleAuthProvider>;
576
733
  get googleProvider(): GoogleAuthProvider;
577
734
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<GoogleSignInButtonComponent, never>;
578
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<GoogleSignInButtonComponent, "fui-google-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
735
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<GoogleSignInButtonComponent, "fui-google-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
579
736
  }
580
737
 
581
738
  declare class FacebookSignInButtonComponent {
582
739
  ui: _angular_core.Signal<_firebase_oss_ui_core.FirebaseUI>;
583
740
  signInWithFacebookLabel: _angular_core.Signal<string>;
741
+ /** Whether to use themed styling. */
742
+ themed: _angular_core.InputSignal<boolean>;
743
+ /** Event emitter for successful sign-in. */
744
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
584
745
  private defaultProvider;
746
+ /** Optional custom OAuth provider configuration. */
585
747
  provider: _angular_core.InputSignal<FacebookAuthProvider>;
586
748
  get facebookProvider(): FacebookAuthProvider;
587
749
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FacebookSignInButtonComponent, never>;
588
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FacebookSignInButtonComponent, "fui-facebook-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
750
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FacebookSignInButtonComponent, "fui-facebook-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
589
751
  }
590
752
 
591
753
  declare class AppleSignInButtonComponent {
592
754
  ui: _angular_core.Signal<_firebase_oss_ui_core.FirebaseUI>;
593
755
  signInWithAppleLabel: _angular_core.Signal<string>;
756
+ /** Whether to use themed styling. */
757
+ themed: _angular_core.InputSignal<boolean>;
758
+ /** Event emitter for successful sign-in. */
759
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
594
760
  private defaultProvider;
761
+ /** Optional custom OAuth provider configuration. */
595
762
  provider: _angular_core.InputSignal<OAuthProvider>;
596
763
  get appleProvider(): OAuthProvider;
597
764
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AppleSignInButtonComponent, never>;
598
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AppleSignInButtonComponent, "fui-apple-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
765
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AppleSignInButtonComponent, "fui-apple-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
599
766
  }
600
767
 
601
768
  declare class MicrosoftSignInButtonComponent {
602
769
  signInWithMicrosoftLabel: _angular_core.Signal<string>;
770
+ /** Whether to use themed styling. */
771
+ themed: _angular_core.InputSignal<boolean>;
772
+ /** Event emitter for successful sign-in. */
773
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
603
774
  private defaultProvider;
775
+ /** Optional custom OAuth provider configuration. */
604
776
  provider: _angular_core.InputSignal<OAuthProvider>;
605
777
  get microsoftProvider(): OAuthProvider;
606
778
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MicrosoftSignInButtonComponent, never>;
607
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<MicrosoftSignInButtonComponent, "fui-microsoft-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
779
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MicrosoftSignInButtonComponent, "fui-microsoft-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
608
780
  }
609
781
 
610
782
  declare class TwitterSignInButtonComponent {
611
783
  signInWithTwitterLabel: _angular_core.Signal<string>;
784
+ /** Whether to use themed styling. */
785
+ themed: _angular_core.InputSignal<boolean>;
786
+ /** Event emitter for successful sign-in. */
787
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
612
788
  private defaultProvider;
789
+ /** Optional custom OAuth provider configuration. */
613
790
  provider: _angular_core.InputSignal<TwitterAuthProvider>;
614
791
  get twitterProvider(): TwitterAuthProvider;
615
792
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TwitterSignInButtonComponent, never>;
616
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<TwitterSignInButtonComponent, "fui-twitter-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
793
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TwitterSignInButtonComponent, "fui-twitter-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
617
794
  }
618
795
 
619
- declare class GithubSignInButtonComponent {
620
- signInWithGithubLabel: _angular_core.Signal<string>;
796
+ declare class GitHubSignInButtonComponent {
797
+ signInWithGitHubLabel: _angular_core.Signal<string>;
798
+ /** Whether to use themed styling. */
799
+ themed: _angular_core.InputSignal<boolean>;
800
+ /** Event emitter for successful sign-in. */
801
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
621
802
  private defaultProvider;
803
+ /** Optional custom OAuth provider configuration. */
622
804
  provider: _angular_core.InputSignal<GithubAuthProvider>;
623
805
  get githubProvider(): GithubAuthProvider;
624
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<GithubSignInButtonComponent, never>;
625
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<GithubSignInButtonComponent, "fui-github-sign-in-button", never, { "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
806
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<GitHubSignInButtonComponent, never>;
807
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<GitHubSignInButtonComponent, "fui-github-sign-in-button", never, { "themed": { "alias": "themed"; "required": false; "isSignal": true; }; "provider": { "alias": "provider"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, never, true, never>;
626
808
  }
627
809
 
628
810
  declare class OAuthButtonComponent {
629
811
  ui: _angular_core.Signal<_firebase_oss_ui_core.FirebaseUI>;
630
- unknownErrorLabel: _angular_core.Signal<string>;
812
+ /** The OAuth provider to use for sign-in. */
631
813
  provider: _angular_core.InputSignal<AuthProvider>;
814
+ /** Whether to use themed styling. */
815
+ themed: _angular_core.InputSignal<string | boolean>;
632
816
  error: _angular_core.WritableSignal<string>;
817
+ /** Event emitter for successful sign-in. */
818
+ signIn: _angular_core.OutputEmitterRef<UserCredential>;
819
+ buttonVariant: _angular_core.Signal<"primary" | "secondary">;
633
820
  handleOAuthSignIn(): Promise<void>;
634
821
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<OAuthButtonComponent, never>;
635
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<OAuthButtonComponent, "fui-oauth-button", never, { "provider": { "alias": "provider"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
822
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<OAuthButtonComponent, "fui-oauth-button", never, { "provider": { "alias": "provider"; "required": true; "isSignal": true; }; "themed": { "alias": "themed"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, ["*"], true, never>;
636
823
  }
637
824
 
638
825
  declare class EmailLinkAuthScreenComponent {
826
+ private ui;
827
+ mfaResolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
639
828
  titleText: _angular_core.Signal<string>;
640
829
  subtitleText: _angular_core.Signal<string>;
641
- emailSent: _angular_core.OutputEmitterRef<void>;
642
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
830
+ constructor();
831
+ /** Event emitter fired when sign-in link email is sent. */
832
+ emailSent: EventEmitter<void>;
833
+ /** Event emitter for successful sign-in. */
834
+ signIn: EventEmitter<User>;
643
835
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EmailLinkAuthScreenComponent, never>;
644
836
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmailLinkAuthScreenComponent, "fui-email-link-auth-screen", never, {}, { "emailSent": "emailSent"; "signIn": "signIn"; }, never, ["*"], true, never>;
645
837
  }
@@ -647,19 +839,45 @@ declare class EmailLinkAuthScreenComponent {
647
839
  declare class ForgotPasswordAuthScreenComponent {
648
840
  titleText: _angular_core.Signal<string>;
649
841
  subtitleText: _angular_core.Signal<string>;
650
- passwordSent: _angular_core.OutputEmitterRef<void>;
651
- backToSignIn: _angular_core.OutputEmitterRef<void>;
842
+ /** Event emitter fired when password reset email is sent. */
843
+ passwordSent: EventEmitter<void>;
844
+ /** Event emitter for back to sign in action. */
845
+ backToSignIn: EventEmitter<void>;
652
846
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ForgotPasswordAuthScreenComponent, never>;
653
847
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ForgotPasswordAuthScreenComponent, "fui-forgot-password-auth-screen", never, {}, { "passwordSent": "passwordSent"; "backToSignIn": "backToSignIn"; }, never, never, true, never>;
654
848
  }
655
849
 
850
+ declare class MultiFactorAuthAssertionScreenComponent {
851
+ /** Event emitter for successful MFA assertion. */
852
+ onSuccess: EventEmitter<UserCredential>;
853
+ titleText: _angular_core.Signal<string>;
854
+ subtitleText: _angular_core.Signal<string>;
855
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MultiFactorAuthAssertionScreenComponent, never>;
856
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiFactorAuthAssertionScreenComponent, "fui-multi-factor-auth-assertion-screen", never, {}, { "onSuccess": "onSuccess"; }, never, never, true, never>;
857
+ }
858
+
859
+ type Hint = (typeof FactorId)[keyof typeof FactorId];
860
+ declare class MultiFactorAuthEnrollmentScreenComponent {
861
+ /** The available MFA factor types for enrollment. */
862
+ hints: _angular_core.InputSignal<Hint[]>;
863
+ /** Event emitter fired when MFA enrollment is completed. */
864
+ onEnrollment: EventEmitter<void>;
865
+ titleText: _angular_core.Signal<string>;
866
+ subtitleText: _angular_core.Signal<string>;
867
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MultiFactorAuthEnrollmentScreenComponent, never>;
868
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiFactorAuthEnrollmentScreenComponent, "fui-multi-factor-auth-enrollment-screen", never, { "hints": { "alias": "hints"; "required": false; "isSignal": true; }; }, { "onEnrollment": "onEnrollment"; }, never, never, true, never>;
869
+ }
870
+
656
871
  declare class OAuthScreenComponent {
657
872
  private ui;
658
873
  mfaResolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
659
874
  titleText: _angular_core.Signal<string>;
660
875
  subtitleText: _angular_core.Signal<string>;
876
+ constructor();
877
+ /** Event emitter for successful sign-in. */
878
+ onSignIn: EventEmitter<User>;
661
879
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<OAuthScreenComponent, never>;
662
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<OAuthScreenComponent, "fui-oauth-screen", never, {}, {}, never, ["*"], true, never>;
880
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<OAuthScreenComponent, "fui-oauth-screen", never, {}, { "onSignIn": "onSignIn"; }, never, ["*"], true, never>;
663
881
  }
664
882
 
665
883
  declare class PhoneAuthScreenComponent {
@@ -667,10 +885,11 @@ declare class PhoneAuthScreenComponent {
667
885
  mfaResolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
668
886
  titleText: _angular_core.Signal<string>;
669
887
  subtitleText: _angular_core.Signal<string>;
670
- resendDelay: _angular_core.InputSignal<number>;
671
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
888
+ constructor();
889
+ /** Event emitter for successful sign-in. */
890
+ signIn: EventEmitter<User>;
672
891
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PhoneAuthScreenComponent, never>;
673
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<PhoneAuthScreenComponent, "fui-phone-auth-screen", never, { "resendDelay": { "alias": "resendDelay"; "required": false; "isSignal": true; }; }, { "signIn": "signIn"; }, never, ["*"], true, never>;
892
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PhoneAuthScreenComponent, "fui-phone-auth-screen", never, {}, { "signIn": "signIn"; }, never, ["*"], true, never>;
674
893
  }
675
894
 
676
895
  declare class SignInAuthScreenComponent {
@@ -678,9 +897,13 @@ declare class SignInAuthScreenComponent {
678
897
  mfaResolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
679
898
  titleText: _angular_core.Signal<string>;
680
899
  subtitleText: _angular_core.Signal<string>;
681
- forgotPassword: _angular_core.OutputEmitterRef<void>;
682
- signUp: _angular_core.OutputEmitterRef<void>;
683
- signIn: _angular_core.OutputEmitterRef<UserCredential>;
900
+ constructor();
901
+ /** Event emitter for forgot password action. */
902
+ forgotPassword: EventEmitter<void>;
903
+ /** Event emitter for sign up action. */
904
+ signUp: EventEmitter<void>;
905
+ /** Event emitter for successful sign-in. */
906
+ signIn: EventEmitter<User>;
684
907
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SignInAuthScreenComponent, never>;
685
908
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignInAuthScreenComponent, "fui-sign-in-auth-screen", never, {}, { "forgotPassword": "forgotPassword"; "signUp": "signUp"; "signIn": "signIn"; }, never, ["*"], true, never>;
686
909
  }
@@ -690,13 +913,17 @@ declare class SignUpAuthScreenComponent {
690
913
  mfaResolver: _angular_core.Signal<firebase_auth.MultiFactorResolver>;
691
914
  titleText: _angular_core.Signal<string>;
692
915
  subtitleText: _angular_core.Signal<string>;
693
- signUp: _angular_core.OutputEmitterRef<UserCredential>;
694
- signIn: _angular_core.OutputEmitterRef<void>;
916
+ constructor();
917
+ /** Event emitter for successful sign-up. */
918
+ signUp: EventEmitter<User>;
919
+ /** Event emitter for sign in action. */
920
+ signIn: EventEmitter<void>;
695
921
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SignUpAuthScreenComponent, never>;
696
922
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SignUpAuthScreenComponent, "fui-sign-up-auth-screen", never, {}, { "signUp": "signUp"; "signIn": "signIn"; }, never, ["*"], true, never>;
697
923
  }
698
924
 
699
925
  declare class ButtonComponent {
926
+ /** The visual variant of the button. */
700
927
  variant: _angular_core.InputSignal<"primary" | "secondary">;
701
928
  get getButtonClasses(): string;
702
929
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ButtonComponent, never>;
@@ -707,10 +934,27 @@ declare class CardComponent {
707
934
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardComponent, never>;
708
935
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardComponent, "fui-card", never, {}, {}, never, ["fui-card-header", "fui-card-content"], true, never>;
709
936
  }
937
+ declare class CardHeaderComponent {
938
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardHeaderComponent, never>;
939
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardHeaderComponent, "fui-card-header", never, {}, {}, never, ["fui-card-title", "fui-card-subtitle"], true, never>;
940
+ }
941
+ declare class CardTitleComponent {
942
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardTitleComponent, never>;
943
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardTitleComponent, "fui-card-title", never, {}, {}, never, ["*"], true, never>;
944
+ }
945
+ declare class CardSubtitleComponent {
946
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardSubtitleComponent, never>;
947
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardSubtitleComponent, "fui-card-subtitle", never, {}, {}, never, ["*"], true, never>;
948
+ }
949
+ declare class CardContentComponent {
950
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CardContentComponent, never>;
951
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CardContentComponent, "fui-card-content", never, {}, {}, never, ["*"], true, never>;
952
+ }
710
953
 
711
954
  declare class CountrySelectorComponent {
712
955
  countries: _angular_core.Signal<_firebase_oss_ui_core.CountryData[]>;
713
956
  defaultCountry: _angular_core.Signal<_firebase_oss_ui_core.CountryData>;
957
+ /** The selected country code (two-way binding). */
714
958
  value: _angular_core.ModelSignal<CountryCode>;
715
959
  selected: _angular_core.Signal<_firebase_oss_ui_core.CountryData>;
716
960
  handleCountryChange(code: string): void;
@@ -719,6 +963,7 @@ declare class CountrySelectorComponent {
719
963
  }
720
964
 
721
965
  declare class DividerComponent {
966
+ /** Optional label text to display in the center of the divider. */
722
967
  label: _angular_core.InputSignal<string>;
723
968
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DividerComponent, never>;
724
969
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DividerComponent, "fui-divider", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -760,6 +1005,7 @@ declare class PoliciesComponent {
760
1005
  private readonly tosUrl;
761
1006
  private readonly privacyPolicyUrl;
762
1007
  readonly shouldShow: Signal<boolean>;
1008
+ get displayStyle(): string;
763
1009
  readonly policyParts: Signal<PolicyPart[]>;
764
1010
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PoliciesComponent, never>;
765
1011
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<PoliciesComponent, "fui-policies", never, {}, {}, never, never, true, never>;
@@ -777,28 +1023,155 @@ declare class RedirectErrorComponent {
777
1023
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<RedirectErrorComponent, "fui-redirect-error", never, {}, {}, never, never, true, never>;
778
1024
  }
779
1025
 
1026
+ /** Configuration for terms of service and privacy policy links. */
780
1027
  type PolicyConfig = {
1028
+ /** The URL to the terms of service page. */
781
1029
  termsOfServiceUrl: string;
1030
+ /** The URL to the privacy policy page. */
782
1031
  privacyPolicyUrl: string;
783
1032
  };
1033
+ /**
1034
+ * Provides FirebaseUI configuration for the Angular application.
1035
+ *
1036
+ * This function must be called in your application's providers array to enable FirebaseUI functionality.
1037
+ *
1038
+ * @param uiFactory - Factory function that creates a FirebaseUIStore from Firebase apps.
1039
+ * @returns Environment providers for FirebaseUI.
1040
+ */
784
1041
  declare function provideFirebaseUI(uiFactory: (apps: FirebaseApps) => FirebaseUIStore): EnvironmentProviders;
1042
+ /**
1043
+ * Provides policy configuration (terms of service and privacy policy URLs) for FirebaseUI components.
1044
+ *
1045
+ * @param factory - Factory function that returns the policy configuration.
1046
+ * @returns Environment providers for FirebaseUI policies.
1047
+ */
785
1048
  declare function provideFirebaseUIPolicies(factory: () => PolicyConfig): EnvironmentProviders;
1049
+ /**
1050
+ * Injects the FirebaseUI store as a reactive signal.
1051
+ *
1052
+ * Returns a readonly signal that updates when the UI state changes.
1053
+ *
1054
+ * @returns A readonly signal containing the current FirebaseUI state.
1055
+ */
786
1056
  declare function injectUI(): Signal<FirebaseUI>;
1057
+ /**
1058
+ * Injects a callback that is called when a user is authenticated.
1059
+ *
1060
+ * The callback is only triggered for non-anonymous users.
1061
+ *
1062
+ * @param onAuthenticated - Callback function called when a user is authenticated.
1063
+ */
1064
+ declare function injectUserAuthenticated(onAuthenticated: (user: User) => void): void;
1065
+ /**
1066
+ * Injects a reCAPTCHA verifier for phone authentication.
1067
+ *
1068
+ * Automatically renders the reCAPTCHA widget in the provided element when available.
1069
+ *
1070
+ * @param element - Function that returns the element reference where reCAPTCHA should be rendered.
1071
+ * @returns A computed signal containing the reCAPTCHA verifier instance, or null if not available.
1072
+ */
787
1073
  declare function injectRecaptchaVerifier(element: () => ElementRef<HTMLDivElement>): Signal<firebase_auth.RecaptchaVerifier>;
1074
+ /**
1075
+ * Injects a translation string as a reactive signal.
1076
+ *
1077
+ * The signal updates when the UI locale changes.
1078
+ *
1079
+ * @param category - The translation category (e.g., "labels", "errors", "prompts").
1080
+ * @param key - The translation key within the category.
1081
+ * @returns A computed signal containing the translated string.
1082
+ */
788
1083
  declare function injectTranslation(category: string, key: string): Signal<string>;
1084
+ /**
1085
+ * Injects the sign-in authentication form schema as a reactive signal.
1086
+ *
1087
+ * @returns A computed signal containing the sign-in form schema.
1088
+ */
789
1089
  declare function injectSignInAuthFormSchema(): Signal<ReturnType<typeof createSignInAuthFormSchema>>;
1090
+ /**
1091
+ * Injects the sign-up authentication form schema as a reactive signal.
1092
+ *
1093
+ * @returns A computed signal containing the sign-up form schema.
1094
+ */
790
1095
  declare function injectSignUpAuthFormSchema(): Signal<ReturnType<typeof createSignUpAuthFormSchema>>;
1096
+ /**
1097
+ * Injects the forgot password authentication form schema as a reactive signal.
1098
+ *
1099
+ * @returns A computed signal containing the forgot password form schema.
1100
+ */
791
1101
  declare function injectForgotPasswordAuthFormSchema(): Signal<ReturnType<typeof createForgotPasswordAuthFormSchema>>;
1102
+ /**
1103
+ * Injects the email link authentication form schema as a reactive signal.
1104
+ *
1105
+ * @returns A computed signal containing the email link auth form schema.
1106
+ */
792
1107
  declare function injectEmailLinkAuthFormSchema(): Signal<ReturnType<typeof createEmailLinkAuthFormSchema>>;
1108
+ /**
1109
+ * Injects the phone authentication number form schema as a reactive signal.
1110
+ *
1111
+ * @returns A computed signal containing the phone auth number form schema.
1112
+ */
793
1113
  declare function injectPhoneAuthFormSchema(): Signal<ReturnType<typeof createPhoneAuthNumberFormSchema>>;
1114
+ /**
1115
+ * Injects the phone authentication verification form schema as a reactive signal.
1116
+ *
1117
+ * @returns A computed signal containing the phone auth verification form schema.
1118
+ */
794
1119
  declare function injectPhoneAuthVerifyFormSchema(): Signal<ReturnType<typeof createPhoneAuthVerifyFormSchema>>;
1120
+ /**
1121
+ * Injects the multi-factor phone authentication number form schema as a reactive signal.
1122
+ *
1123
+ * @returns A computed signal containing the MFA phone auth number form schema.
1124
+ */
795
1125
  declare function injectMultiFactorPhoneAuthNumberFormSchema(): Signal<ReturnType<typeof createMultiFactorPhoneAuthNumberFormSchema>>;
1126
+ /**
1127
+ * Injects the multi-factor phone authentication assertion form schema as a reactive signal.
1128
+ *
1129
+ * @returns A computed signal containing the MFA phone auth assertion form schema.
1130
+ */
1131
+ declare function injectMultiFactorPhoneAuthAssertionFormSchema(): Signal<ReturnType<typeof createMultiFactorPhoneAuthAssertionFormSchema>>;
1132
+ /**
1133
+ * Injects the multi-factor phone authentication verification form schema as a reactive signal.
1134
+ *
1135
+ * @returns A computed signal containing the MFA phone auth verification form schema.
1136
+ */
796
1137
  declare function injectMultiFactorPhoneAuthVerifyFormSchema(): Signal<ReturnType<typeof createMultiFactorPhoneAuthVerifyFormSchema>>;
1138
+ /**
1139
+ * Injects the multi-factor TOTP authentication number form schema as a reactive signal.
1140
+ *
1141
+ * @returns A computed signal containing the MFA TOTP auth number form schema.
1142
+ */
797
1143
  declare function injectMultiFactorTotpAuthNumberFormSchema(): Signal<ReturnType<typeof createMultiFactorTotpAuthNumberFormSchema>>;
1144
+ /**
1145
+ * Injects the multi-factor TOTP authentication verification form schema as a reactive signal.
1146
+ *
1147
+ * @returns A computed signal containing the MFA TOTP auth verification form schema.
1148
+ */
798
1149
  declare function injectMultiFactorTotpAuthVerifyFormSchema(): Signal<ReturnType<typeof createMultiFactorTotpAuthVerifyFormSchema>>;
1150
+ /**
1151
+ * Injects the policy configuration (terms of service and privacy policy URLs).
1152
+ *
1153
+ * @returns The policy configuration, or null if not provided.
1154
+ */
799
1155
  declare function injectPolicies(): PolicyConfig | null;
1156
+ /**
1157
+ * Injects the list of allowed countries for phone authentication as a reactive signal.
1158
+ *
1159
+ * @returns A computed signal containing the array of allowed country data.
1160
+ */
800
1161
  declare function injectCountries(): Signal<CountryData[]>;
1162
+ /**
1163
+ * Injects the default country for phone authentication as a reactive signal.
1164
+ *
1165
+ * @returns A computed signal containing the default country data.
1166
+ */
801
1167
  declare function injectDefaultCountry(): Signal<CountryData>;
1168
+ /**
1169
+ * Injects the redirect error message as a reactive signal.
1170
+ *
1171
+ * Returns the error message if a redirect error occurred, undefined otherwise.
1172
+ *
1173
+ * @returns A computed signal containing the redirect error message, or undefined if no error.
1174
+ */
802
1175
  declare function injectRedirectError(): Signal<string | undefined>;
803
1176
 
804
- export { AppleSignInButtonComponent, ButtonComponent, CardComponent, ContentComponent, CountrySelectorComponent, DividerComponent, EmailLinkAuthFormComponent, EmailLinkAuthScreenComponent, FacebookSignInButtonComponent, ForgotPasswordAuthFormComponent, ForgotPasswordAuthScreenComponent, GithubSignInButtonComponent, GoogleSignInButtonComponent, MicrosoftSignInButtonComponent, MultiFactorAuthAssertionFormComponent, OAuthButtonComponent, OAuthScreenComponent, PhoneAuthFormComponent, PhoneAuthScreenComponent, PoliciesComponent, RedirectErrorComponent, SignInAuthFormComponent, SignInAuthScreenComponent, SignUpAuthFormComponent, SignUpAuthScreenComponent, SmsMultiFactorAssertionFormComponent, SmsMultiFactorAssertionPhoneFormComponent, SmsMultiFactorAssertionVerifyFormComponent, TotpMultiFactorAssertionFormComponent, TwitterSignInButtonComponent, injectCountries, injectDefaultCountry, injectEmailLinkAuthFormSchema, injectForgotPasswordAuthFormSchema, injectMultiFactorPhoneAuthNumberFormSchema, injectMultiFactorPhoneAuthVerifyFormSchema, injectMultiFactorTotpAuthNumberFormSchema, injectMultiFactorTotpAuthVerifyFormSchema, injectPhoneAuthFormSchema, injectPhoneAuthVerifyFormSchema, injectPolicies, injectRecaptchaVerifier, injectRedirectError, injectSignInAuthFormSchema, injectSignUpAuthFormSchema, injectTranslation, injectUI, provideFirebaseUI, provideFirebaseUIPolicies };
1177
+ export { AppleSignInButtonComponent, ButtonComponent, CardComponent, CardContentComponent, CardHeaderComponent, CardSubtitleComponent, CardTitleComponent, ContentComponent, CountrySelectorComponent, DividerComponent, EmailLinkAuthFormComponent, EmailLinkAuthScreenComponent, FacebookSignInButtonComponent, ForgotPasswordAuthFormComponent, ForgotPasswordAuthScreenComponent, GitHubSignInButtonComponent, GoogleSignInButtonComponent, MicrosoftSignInButtonComponent, MultiFactorAuthAssertionFormComponent, MultiFactorAuthAssertionScreenComponent, MultiFactorAuthEnrollmentFormComponent, MultiFactorAuthEnrollmentScreenComponent, OAuthButtonComponent, OAuthScreenComponent, PhoneAuthFormComponent, PhoneAuthScreenComponent, PoliciesComponent, RedirectErrorComponent, SignInAuthFormComponent, SignInAuthScreenComponent, SignUpAuthFormComponent, SignUpAuthScreenComponent, SmsMultiFactorAssertionFormComponent, SmsMultiFactorAssertionPhoneFormComponent, SmsMultiFactorAssertionVerifyFormComponent, SmsMultiFactorEnrollmentFormComponent, TotpMultiFactorAssertionFormComponent, TotpMultiFactorEnrollmentFormComponent, TwitterSignInButtonComponent, injectCountries, injectDefaultCountry, injectEmailLinkAuthFormSchema, injectForgotPasswordAuthFormSchema, injectMultiFactorPhoneAuthAssertionFormSchema, injectMultiFactorPhoneAuthNumberFormSchema, injectMultiFactorPhoneAuthVerifyFormSchema, injectMultiFactorTotpAuthNumberFormSchema, injectMultiFactorTotpAuthVerifyFormSchema, injectPhoneAuthFormSchema, injectPhoneAuthVerifyFormSchema, injectPolicies, injectRecaptchaVerifier, injectRedirectError, injectSignInAuthFormSchema, injectSignUpAuthFormSchema, injectTranslation, injectUI, injectUserAuthenticated, provideFirebaseUI, provideFirebaseUIPolicies };