firebase-admin-edge 1.0.25 → 1.1.1

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 (63) hide show
  1. package/README.md +45 -42
  2. package/dist/auth/auth-error-codes.d.ts +32 -0
  3. package/dist/auth/auth-error-codes.d.ts.map +1 -1
  4. package/dist/auth/auth-error-codes.js +32 -0
  5. package/dist/auth/auth-error-codes.js.map +1 -1
  6. package/dist/auth/email-action-request.d.ts +40 -0
  7. package/dist/auth/email-action-request.d.ts.map +1 -0
  8. package/dist/auth/email-action-request.js +80 -0
  9. package/dist/auth/email-action-request.js.map +1 -0
  10. package/dist/auth/email-action-request.test.d.ts +2 -0
  11. package/dist/auth/email-action-request.test.d.ts.map +1 -0
  12. package/dist/auth/email-action-request.test.js +128 -0
  13. package/dist/auth/email-action-request.test.js.map +1 -0
  14. package/dist/auth/firebase-admin-auth.d.ts +67 -9
  15. package/dist/auth/firebase-admin-auth.d.ts.map +1 -1
  16. package/dist/auth/firebase-admin-auth.js +491 -13
  17. package/dist/auth/firebase-admin-auth.js.map +1 -1
  18. package/dist/auth/firebase-admin-auth.test.js +1015 -6
  19. package/dist/auth/firebase-admin-auth.test.js.map +1 -1
  20. package/dist/auth/firebase-auth-endpoints.d.ts +84 -4
  21. package/dist/auth/firebase-auth-endpoints.d.ts.map +1 -1
  22. package/dist/auth/firebase-auth-endpoints.js +150 -8
  23. package/dist/auth/firebase-auth-endpoints.js.map +1 -1
  24. package/dist/auth/firebase-auth-endpoints.test.js +335 -3
  25. package/dist/auth/firebase-auth-endpoints.test.js.map +1 -1
  26. package/dist/auth/user-batch.d.ts +21 -0
  27. package/dist/auth/user-batch.d.ts.map +1 -0
  28. package/dist/auth/user-batch.js +49 -0
  29. package/dist/auth/user-batch.js.map +1 -0
  30. package/dist/auth/user-batch.test.d.ts +2 -0
  31. package/dist/auth/user-batch.test.d.ts.map +1 -0
  32. package/dist/auth/user-batch.test.js +73 -0
  33. package/dist/auth/user-batch.test.js.map +1 -0
  34. package/dist/auth/user-import.d.ts +55 -0
  35. package/dist/auth/user-import.d.ts.map +1 -0
  36. package/dist/auth/user-import.js +208 -0
  37. package/dist/auth/user-import.js.map +1 -0
  38. package/dist/auth/user-import.test.d.ts +2 -0
  39. package/dist/auth/user-import.test.d.ts.map +1 -0
  40. package/dist/auth/user-import.test.js +217 -0
  41. package/dist/auth/user-import.test.js.map +1 -0
  42. package/dist/auth/user-record.d.ts +69 -0
  43. package/dist/auth/user-record.d.ts.map +1 -0
  44. package/dist/auth/user-record.js +104 -0
  45. package/dist/auth/user-record.js.map +1 -0
  46. package/dist/auth/user-record.test.d.ts +2 -0
  47. package/dist/auth/user-record.test.d.ts.map +1 -0
  48. package/dist/auth/user-record.test.js +198 -0
  49. package/dist/auth/user-record.test.js.map +1 -0
  50. package/dist/auth/user-request.d.ts +98 -0
  51. package/dist/auth/user-request.d.ts.map +1 -0
  52. package/dist/auth/user-request.js +298 -0
  53. package/dist/auth/user-request.js.map +1 -0
  54. package/dist/auth/user-request.test.d.ts +2 -0
  55. package/dist/auth/user-request.test.d.ts.map +1 -0
  56. package/dist/auth/user-request.test.js +327 -0
  57. package/dist/auth/user-request.test.js.map +1 -0
  58. package/dist/firebase-edge-server.d.ts.map +1 -1
  59. package/dist/firebase-edge-server.js +6 -2
  60. package/dist/firebase-edge-server.js.map +1 -1
  61. package/dist/firebase-edge-server.test.js +29 -0
  62. package/dist/firebase-edge-server.test.js.map +1 -1
  63. package/package.json +1 -1
@@ -1,6 +1,28 @@
1
1
  import type { ServiceAccount } from './firebase-types.js';
2
2
  import { FirebaseEdgeError } from './errors.js';
3
3
  import type { CacheConfig } from './cache-types.js';
4
+ import { type DeleteUsersResult, type UserImportResult } from './user-batch.js';
5
+ import { type UserImportRecord, type UserImportOptions } from './user-import.js';
6
+ export type { DeleteUsersResult, UserImportResult, FirebaseArrayIndexError } from './user-batch.js';
7
+ export type { UserImportRecord, UserImportOptions, HashAlgorithmType, UserMetadataRequest, UserProviderRequest } from './user-import.js';
8
+ import { type GetUsersResult, type ListUsersResult } from './user-record.js';
9
+ import type { UserRecord } from './user-record.js';
10
+ import { type UserIdentifier, type CreateRequest, type UpdateRequest } from './user-request.js';
11
+ export type { UserIdentifier, UidIdentifier, EmailIdentifier, PhoneIdentifier, ProviderIdentifier, CreateRequest, UpdateRequest, UserProvider, CreatePhoneMultiFactorInfoRequest, UpdatePhoneMultiFactorInfoRequest } from './user-request.js';
12
+ export type { GetUsersResult, ListUsersResult, UserRecord } from './user-record.js';
13
+ type AdminResult<T> = {
14
+ data: T;
15
+ error: null;
16
+ } | {
17
+ data: null;
18
+ error: FirebaseEdgeError;
19
+ };
20
+ import { type ActionCodeSettings } from './email-action-request.js';
21
+ export type { ActionCodeSettings } from './email-action-request.js';
22
+ export interface SessionCookieOptions {
23
+ /** Session lifetime in milliseconds, between five minutes and fourteen days. */
24
+ expiresIn: number;
25
+ }
4
26
  /**
5
27
  * Firebase Admin Authentication handler for edge environments.
6
28
  * Provides server-side authentication operations using service account credentials.
@@ -29,6 +51,22 @@ export declare class FirebaseAdminAuth {
29
51
  * @returns Promise with token data and error
30
52
  */
31
53
  private getCachedToken;
54
+ /** Create a user and return the complete user record. */
55
+ createUser(properties: CreateRequest): Promise<AdminResult<UserRecord>>;
56
+ /** Update a user; null clears displayName, photoURL, or phoneNumber. */
57
+ updateUser(uid: string, properties: UpdateRequest): Promise<AdminResult<UserRecord>>;
58
+ /** Replace stored custom claims; pass null to clear all claims. */
59
+ setCustomUserClaims(uid: string, claims: object | null): Promise<AdminResult<void>>;
60
+ /** Delete one user. A successful deletion returns undefined data. */
61
+ deleteUser(uid: string): Promise<AdminResult<void>>;
62
+ /** Delete up to 1000 users, reporting failures by original input index. */
63
+ deleteUsers(uids: string[]): Promise<AdminResult<DeleteUsersResult>>;
64
+ /** Import up to 1000 users, with local and API failures indexed to the original input. */
65
+ importUsers(users: UserImportRecord[], options?: UserImportOptions): Promise<AdminResult<UserImportResult>>;
66
+ /** Read back a complete record after a successful create or update. */
67
+ private getManagedUser;
68
+ /** Look up at most 100 identifiers, returning users and unmatched identifiers. */
69
+ getUsers(identifiers: UserIdentifier[]): Promise<AdminResult<GetUsersResult>>;
32
70
  /**
33
71
  * Retrieves user account information by UID.
34
72
  *
@@ -42,6 +80,19 @@ export declare class FirebaseAdminAuth {
42
80
  data: import("./firebase-types.js").UserInfo | null | undefined;
43
81
  error: null;
44
82
  }>;
83
+ /**
84
+ * Lists one page of users, using Firebase Admin's page size and token contract.
85
+ * @param maxResults Page size (1–1000), defaults to 1000.
86
+ * @param pageToken Token returned by the previous page.
87
+ * @returns User records and an optional next page token, or a structured error.
88
+ */
89
+ listUsers(maxResults?: number, pageToken?: string): Promise<{
90
+ data: ListUsersResult;
91
+ error: null;
92
+ } | {
93
+ data: null;
94
+ error: FirebaseEdgeError;
95
+ }>;
45
96
  /**
46
97
  * Retrieves user account information by email address.
47
98
  *
@@ -55,6 +106,10 @@ export declare class FirebaseAdminAuth {
55
106
  data: import("./firebase-types.js").UserInfo | null | undefined;
56
107
  error: null;
57
108
  }>;
109
+ /** Look up a linked provider UID, or a primary email/phone identifier. */
110
+ getUserByProviderUid(providerId: string, uid: string): Promise<AdminResult<UserRecord>>;
111
+ /** Look up a user by their primary international phone number. */
112
+ getUserByPhoneNumber(phoneNumber: string): Promise<AdminResult<UserRecord>>;
58
113
  /**
59
114
  * Verifies a Firebase ID token and returns the decoded payload.
60
115
  * Optionally checks if the token has been revoked.
@@ -74,16 +129,19 @@ export declare class FirebaseAdminAuth {
74
129
  * Creates a session cookie from a Firebase ID token.
75
130
  *
76
131
  * @param idToken Firebase ID token to convert to session cookie
77
- * @param expiresIn_ms Session cookie expiration time in milliseconds
132
+ * @param options Session cookie lifetime in milliseconds
78
133
  * @returns Promise with object containing session cookie string or null, and error if any
79
134
  */
80
- createSessionCookie(idToken: string, expiresIn_ms: number): Promise<{
81
- data: null;
82
- error: FirebaseEdgeError;
83
- } | {
84
- data: string | null;
85
- error: null;
86
- }>;
135
+ createSessionCookie(idToken: string, options: SessionCookieOptions): Promise<AdminResult<string>>;
136
+ /** Generate a password reset link to send through your own email service. */
137
+ generatePasswordResetLink(email: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
138
+ /** Generate an email verification link without sending an email. */
139
+ generateEmailVerificationLink(email: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
140
+ /** Generate a link that verifies a new email before changing the account email. */
141
+ generateVerifyAndChangeEmailLink(email: string, newEmail: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
142
+ /** Generate an email sign-in link; action code settings are required. */
143
+ generateSignInWithEmailLink(email: string, settings: ActionCodeSettings): Promise<AdminResult<string>>;
144
+ private generateActionLink;
87
145
  /**
88
146
  * Verifies a Firebase session cookie and returns the decoded payload.
89
147
  * Optionally checks if the token has been revoked.
@@ -109,7 +167,7 @@ export declare class FirebaseAdminAuth {
109
167
  data: null;
110
168
  error: FirebaseEdgeError;
111
169
  } | {
112
- data: import("./firebase-types.js").FirebaseUpdateAccountResponse | null;
170
+ data: import("./firebase-types.js").FirebaseUpdateAccountResponse;
113
171
  error: null;
114
172
  }>;
115
173
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"firebase-admin-auth.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAuB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EACH,iBAAiB,EAGpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,iBAAiB;IAatB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,KAAK,CAAC;IACd,OAAO,CAAC,KAAK,CAAC;IACd,OAAO,CAAC,SAAS,CAAC;IAhBtB,OAAO,CAAC,UAAU,CAAa;IAE/B;;;;;;;;OAQG;gBAES,iBAAiB,EAAE,cAAc,EACjC,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,YAAA,EAC/B,KAAK,CAAC,EAAE,WAAW,YAAA,EACnB,SAAS,CAAC,EAAE,MAAM,YAAA;IAK9B;;;;;OAKG;YACW,cAAc;IAoC5B;;;;;OAKG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM;;;;;;;IA+BzB;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM;;;;;;;IA+BlC;;;;;;;OAOG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe;;;;;;;IAwGlE;;;;;;OAMG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;;;;;;;IAuC/D;;;;;;;OAOG;IACG,mBAAmB,CACrB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,OAAe;;;;;;;IAgFjC;;;;;OAKG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM;;;;;;;IAwCrC;;;;;;OAMG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,GAAE,MAAW;;;;;;;CAmCpE"}
1
+ {"version":3,"file":"firebase-admin-auth.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAuB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EACH,iBAAiB,EAGpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAGH,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACR,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACR,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAGH,KAAK,cAAc,EACnB,KAAK,eAAe,EACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAIH,KAAK,cAAc,EAEnB,KAAK,aAAa,EAClB,KAAK,aAAa,EACrB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,iCAAiC,EACjC,iCAAiC,EACpC,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACR,cAAc,EACd,eAAe,EACf,UAAU,EACb,MAAM,kBAAkB,CAAC;AAE1B,KAAK,WAAW,CAAC,CAAC,IACZ;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,IAAI,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAE/C,OAAO,EAEH,KAAK,kBAAkB,EAE1B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,MAAM,WAAW,oBAAoB;IACjC,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAatB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,KAAK,CAAC;IACd,OAAO,CAAC,KAAK,CAAC;IACd,OAAO,CAAC,SAAS,CAAC;IAhBtB,OAAO,CAAC,UAAU,CAAa;IAE/B;;;;;;;;OAQG;gBAES,iBAAiB,EAAE,cAAc,EACjC,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,YAAA,EAC/B,KAAK,CAAC,EAAE,WAAW,YAAA,EACnB,SAAS,CAAC,EAAE,MAAM,YAAA;IAK9B;;;;;OAKG;YACW,cAAc;IAoC5B,yDAAyD;IACnD,UAAU,CACZ,UAAU,EAAE,aAAa,GAC1B,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAkDnC,wEAAwE;IAClE,UAAU,CACZ,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,aAAa,GAC1B,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAqDnC,mEAAmE;IAC7D,mBAAmB,CACrB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAkD7B,qEAAqE;IAC/D,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAwCzD,2EAA2E;IACrE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAuD1E,0FAA0F;IACpF,WAAW,CACb,KAAK,EAAE,gBAAgB,EAAE,EACzB,OAAO,CAAC,EAAE,iBAAiB,GAC5B,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IA6DzC,uEAAuE;YACzD,cAAc;IAsB5B,kFAAkF;IAC5E,QAAQ,CACV,WAAW,EAAE,cAAc,EAAE,GAC9B,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAoDvC;;;;;OAKG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM;;;;;;;IA+BzB;;;;;OAKG;IACG,SAAS,CACX,UAAU,SAAO,EACjB,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CACJ;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,KAAK,EAAE,IAAI,CAAA;KAAE,GACtC;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,iBAAiB,CAAA;KAAE,CAC7C;IAuFD;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM;;;;;;;IA+BlC,0EAA0E;IACpE,oBAAoB,CACtB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAoBnC,kEAAkE;IAC5D,oBAAoB,CACtB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAwCnC;;;;;;;OAOG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe;;;;;;;IAwGlE;;;;;;OAMG;IACG,mBAAmB,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAmF/B,6EAA6E;IACvE,yBAAyB,CAC3B,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,kBAAkB,GAC9B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAI/B,oEAAoE;IAC9D,6BAA6B,CAC/B,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,kBAAkB,GAC9B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAI/B,mFAAmF;IAC7E,gCAAgC,CAClC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,kBAAkB,GAC9B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAS/B,yEAAyE;IACnE,2BAA2B,CAC7B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,kBAAkB,GAC7B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAIjB,kBAAkB;IA0DhC;;;;;;;OAOG;IACG,mBAAmB,CACrB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,OAAe;;;;;;;IA+FjC;;;;;OAKG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM;;;;;;;IAwCrC;;;;;;OAMG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,GAAE,MAAW;;;;;;;CAmCpE"}