@aurabase/auth 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +96 -10
- package/dist/index.cjs +391 -211
- package/dist/index.d.cts +160 -88
- package/dist/index.d.ts +160 -88
- package/dist/index.js +392 -212
- package/package.json +7 -4
package/dist/index.d.cts
CHANGED
|
@@ -1,16 +1,85 @@
|
|
|
1
|
-
import { BaseService,
|
|
1
|
+
import { BaseService, AuraResponse, AdminUser, AdminCreateUserRequest, AdminUpdateUserRequest, GenerateLinkType, GenerateLinkResult, UserStats, IdentityInfo, AdminSessionInfo, AuditLogEntry, AuthSettings, AuthSettingsUpdate, EmailTemplateUpdate, AuraClientLike, AuthChangePayload, SignUpRequest, LoginResponse, SignInRequest, OAuthSignInOptions, MagicLinkRequest, TokenPair, User, SessionInfo, GetClaimsResult, UpdateUserRequest, PasswordResetRequest, MfaEnrollResponse, MfaVerifyRequest, MfaChallenge } from '@aurabase/core';
|
|
2
|
+
|
|
3
|
+
declare class AuthAdminService extends BaseService {
|
|
4
|
+
/**
|
|
5
|
+
* Préfixe des routes de ce service. Aucun identifiant de projet : il est injecté par
|
|
6
|
+
* la passerelle depuis le sous-domaine du projet (`inject_project_id`,
|
|
7
|
+
* `services/aura-gateway/src/middleware/project_subdomain.rs`).
|
|
8
|
+
*/
|
|
9
|
+
private get prefix();
|
|
10
|
+
listUsers(params?: {
|
|
11
|
+
limit?: number;
|
|
12
|
+
offset?: number;
|
|
13
|
+
search?: string;
|
|
14
|
+
}): Promise<AuraResponse<AdminUser[]>>;
|
|
15
|
+
getUser(userId: string): Promise<AuraResponse<AdminUser>>;
|
|
16
|
+
createUser(data: AdminCreateUserRequest): Promise<AuraResponse<AdminUser>>;
|
|
17
|
+
updateUser(userId: string, data: AdminUpdateUserRequest): Promise<AuraResponse<AdminUser>>;
|
|
18
|
+
deleteUser(userId: string): Promise<AuraResponse<null>>;
|
|
19
|
+
banUser(userId: string): Promise<AuraResponse<null>>;
|
|
20
|
+
unbanUser(userId: string): Promise<AuraResponse<null>>;
|
|
21
|
+
generateLink(userId: string, type: GenerateLinkType): Promise<AuraResponse<GenerateLinkResult>>;
|
|
22
|
+
getUserStats(): Promise<AuraResponse<UserStats>>;
|
|
23
|
+
listUserIdentities(userId: string): Promise<AuraResponse<IdentityInfo[]>>;
|
|
24
|
+
listSessions(params?: {
|
|
25
|
+
userId?: string;
|
|
26
|
+
limit?: number;
|
|
27
|
+
offset?: number;
|
|
28
|
+
}): Promise<AuraResponse<AdminSessionInfo[]>>;
|
|
29
|
+
revokeSession(sessionId: string): Promise<AuraResponse<null>>;
|
|
30
|
+
getAuditLog(params?: {
|
|
31
|
+
userId?: string;
|
|
32
|
+
limit?: number;
|
|
33
|
+
offset?: number;
|
|
34
|
+
}): Promise<AuraResponse<AuditLogEntry[]>>;
|
|
35
|
+
getSettings(): Promise<AuraResponse<AuthSettings>>;
|
|
36
|
+
/**
|
|
37
|
+
* Met à jour les réglages auth du projet (fusion partielle : seuls les champs fournis
|
|
38
|
+
* sont écrits, `COALESCE` côté backend).
|
|
39
|
+
*
|
|
40
|
+
* Le corps est un {@link AuthSettingsUpdate}, PAS un `Partial<AuthSettings>` : la vue de
|
|
41
|
+
* lecture ne sait pas porter les secrets write-only (`smtp_password`, `webhook_secret`,
|
|
42
|
+
* `captcha_secret_key`, `sms_api_key`/`sms_api_secret`, `hook_secret`) ni les drapeaux
|
|
43
|
+
* d'effacement (`smtp_clear`, `sms_clear`, `oauth_credentials_clear`), et porte à l'inverse
|
|
44
|
+
* des projections (`smtp_password_set`, `hook_secret_set`, `updated_at`…) que le backend
|
|
45
|
+
* REFUSE.
|
|
46
|
+
*
|
|
47
|
+
* Le serveur refuse aussi bien un champ inconnu qu'un `null` explicite — `400` dans les deux
|
|
48
|
+
* cas, le champ fautif est nommé. Ce n'est plus seulement un contrôle TypeScript : ne
|
|
49
|
+
* renvoyez donc pas tel quel un objet lu par {@link getSettings}.
|
|
50
|
+
*/
|
|
51
|
+
updateSettings(data: AuthSettingsUpdate): Promise<AuraResponse<AuthSettings>>;
|
|
52
|
+
listEmailTemplates(): Promise<AuraResponse<Record<string, unknown>[]>>;
|
|
53
|
+
getEmailTemplate(type: string): Promise<AuraResponse<Record<string, unknown>>>;
|
|
54
|
+
updateEmailTemplate(type: string, data: EmailTemplateUpdate): Promise<AuraResponse<Record<string, unknown>>>;
|
|
55
|
+
deleteEmailTemplate(type: string): Promise<AuraResponse<{
|
|
56
|
+
message: string;
|
|
57
|
+
}>>;
|
|
58
|
+
testEmailTemplate(type: string, body: {
|
|
59
|
+
to_email: string;
|
|
60
|
+
}): Promise<AuraResponse<null>>;
|
|
61
|
+
}
|
|
2
62
|
|
|
3
63
|
/**
|
|
4
|
-
* Types d'OTP « email »
|
|
5
|
-
*
|
|
6
|
-
*
|
|
64
|
+
* Types d'OTP « email » — ceux qu'Aurabase EXERCE réellement.
|
|
65
|
+
*
|
|
66
|
+
* F4 — `invite` a été RETIRÉ. Il n'a jamais eu d'endpoint de vérification côté backend
|
|
67
|
+
* (`services/aura-auth/src/main.rs` ne déclare ni `/invite` ni équivalent) : il n'était
|
|
68
|
+
* présent que « pour la parité de surface » avec supabase-js, et `verifyOtp` y répondait
|
|
69
|
+
* `otp_type_unsupported`. Une surface qui ne mène nulle part n'est pas de la parité, c'est
|
|
70
|
+
* une promesse fausse que le typage rendait crédible : elle a été supprimée.
|
|
71
|
+
*
|
|
72
|
+
* À ne pas confondre avec {@link GenerateLinkType} (`@aurabase/core`), où `invite` est bien
|
|
73
|
+
* servi — mais par l'API ADMIN (`POST /admin/users/{id}/generate-link`,
|
|
74
|
+
* `aura-auth/src/handlers/admin.rs`), qui ÉMET un lien ; c'est sa CONSOMMATION en OTP qui
|
|
75
|
+
* n'existe pas.
|
|
7
76
|
*/
|
|
8
|
-
type EmailOtpType = 'signup' | '
|
|
77
|
+
type EmailOtpType = 'signup' | 'magiclink' | 'recovery' | 'email_change' | 'email';
|
|
9
78
|
/**
|
|
10
|
-
* Types d'OTP « mobile
|
|
11
|
-
*
|
|
79
|
+
* Types d'OTP « mobile ». F4 — `phone_change` a été RETIRÉ pour la même raison
|
|
80
|
+
* qu'`invite` : aucun endpoint backend, donc aucune vérification possible.
|
|
12
81
|
*/
|
|
13
|
-
type MobileOtpType = 'sms'
|
|
82
|
+
type MobileOtpType = 'sms';
|
|
14
83
|
interface VerifySignupOtpParams {
|
|
15
84
|
type: 'signup';
|
|
16
85
|
/** Jeton reçu par email (lien de confirmation d'inscription). */
|
|
@@ -49,24 +118,13 @@ interface VerifyRecoveryOtpParams {
|
|
|
49
118
|
*/
|
|
50
119
|
password: string;
|
|
51
120
|
}
|
|
52
|
-
/** Type de surface (parité) sans endpoint backend → `otp_type_unsupported`. */
|
|
53
|
-
interface VerifyInviteOtpParams {
|
|
54
|
-
type: 'invite';
|
|
55
|
-
token: string;
|
|
56
|
-
}
|
|
57
|
-
/** Type de surface (parité) sans endpoint backend → `otp_type_unsupported`. */
|
|
58
|
-
interface VerifyPhoneChangeOtpParams {
|
|
59
|
-
type: 'phone_change';
|
|
60
|
-
phone: string;
|
|
61
|
-
token: string;
|
|
62
|
-
}
|
|
63
121
|
/**
|
|
64
|
-
* Union discriminée par `type` de la façade `verifyOtp
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
122
|
+
* Union discriminée par `type` de la façade `verifyOtp`. Chaque variante route vers un
|
|
123
|
+
* endpoint qui EXISTE — l'union est la liste de ce que le produit sait faire, pas celle de
|
|
124
|
+
* ce qu'un autre produit expose (F4 : `invite` et `phone_change` en ont été retirés, faute
|
|
125
|
+
* d'endpoint de vérification côté backend).
|
|
68
126
|
*/
|
|
69
|
-
type VerifyOtpParams = VerifySignupOtpParams | VerifyMagiclinkOtpParams | VerifyEmailOtpParams | VerifySmsOtpParams | VerifyEmailChangeOtpParams | VerifyRecoveryOtpParams
|
|
127
|
+
type VerifyOtpParams = VerifySignupOtpParams | VerifyMagiclinkOtpParams | VerifyEmailOtpParams | VerifySmsOtpParams | VerifyEmailChangeOtpParams | VerifyRecoveryOtpParams;
|
|
70
128
|
|
|
71
129
|
type AuthStateCallback = (payload: AuthChangePayload) => void;
|
|
72
130
|
interface AuthServiceOptions {
|
|
@@ -98,6 +156,9 @@ declare class AuthService extends BaseService {
|
|
|
98
156
|
* Détecte et consomme une session présente dans l'URL courante au boot (callback
|
|
99
157
|
* OAuth), à l'image de `detectSessionInUrl` de supabase-js :
|
|
100
158
|
* - fragment `#access_token=…&refresh_token=…` (flux implicit) → `setSession`.
|
|
159
|
+
* - fragment `#mfa_token=…` (atterrissage `{redirectTo}/oauth/mfa` d'un utilisateur MFA au
|
|
160
|
+
* retour d'OAuth) → émet `MFA_CHALLENGE` avec `mfaToken` (AUCUNE session posée : le défi
|
|
161
|
+
* reste à relever via `mfaVerify`).
|
|
101
162
|
* - query `?token=…&type=recovery` (lien de récupération de mot de passe) → émet
|
|
102
163
|
* `PASSWORD_RECOVERY` avec `recoveryToken` (AUCUNE session posée, PAS de `SIGNED_IN`).
|
|
103
164
|
* - query `?code=…` (flux PKCE) → `exchangeCodeForSession` (relit le verifier).
|
|
@@ -117,8 +178,23 @@ declare class AuthService extends BaseService {
|
|
|
117
178
|
private _applyRemoteState;
|
|
118
179
|
/** Démonte le cycle de vie proactif : ticker, visibilité, BroadcastChannel, listeners. */
|
|
119
180
|
dispose(): void;
|
|
181
|
+
/**
|
|
182
|
+
* Préfixe des routes de ce service. Aucun identifiant de projet : il est injecté par
|
|
183
|
+
* la passerelle depuis le sous-domaine du projet (`inject_project_id`,
|
|
184
|
+
* `services/aura-gateway/src/middleware/project_subdomain.rs`).
|
|
185
|
+
*/
|
|
120
186
|
private get prefix();
|
|
121
|
-
/**
|
|
187
|
+
/**
|
|
188
|
+
* `project_id` de la SESSION en cours, lu dans le token stocké — seule référence de projet
|
|
189
|
+
* dont dispose encore le client (voir SEC-F2 dans `getClaims`). `null` s'il n'y a pas de
|
|
190
|
+
* session, si le token est illisible, ou s'il ne porte pas ce claim.
|
|
191
|
+
*/
|
|
192
|
+
private _sessionProjectId;
|
|
193
|
+
/**
|
|
194
|
+
* Clé du `code_verifier` PKCE, scopée par la PORTÉE du client (`clientScope`, dérivée de
|
|
195
|
+
* l'URL du projet) : deux clients de deux projets instanciés dans la MÊME page partagent
|
|
196
|
+
* un seul `localStorage`, et ne doivent pas se marcher dessus.
|
|
197
|
+
*/
|
|
122
198
|
private get _pkceVerifierKey();
|
|
123
199
|
/**
|
|
124
200
|
* Clé project-scoped du MARQUEUR d'initiation du flux OAuth implicit (SEC-F3).
|
|
@@ -134,6 +210,36 @@ declare class AuthService extends BaseService {
|
|
|
134
210
|
private _emitEvent;
|
|
135
211
|
signUp(req: SignUpRequest): Promise<AuraResponse<LoginResponse>>;
|
|
136
212
|
signInWithPassword(req: SignInRequest): Promise<AuraResponse<LoginResponse>>;
|
|
213
|
+
/**
|
|
214
|
+
* Démarre un flux OAuth : renvoie toujours `{ url }` (et redirige en plus le navigateur
|
|
215
|
+
* si un `window` existe).
|
|
216
|
+
*
|
|
217
|
+
* ### `options.queryParams` — contrat (N22)
|
|
218
|
+
*
|
|
219
|
+
* Les clés listées par {@link OAUTH_FORWARDABLE_QUERY_PARAMS} — `prompt`, `login_hint`,
|
|
220
|
+
* `display`, `ui_locales`, `max_age`, `acr_values`, `claims_locales`, `access_type`,
|
|
221
|
+
* `include_granted_scopes`, `hd` — sont **réellement transmises au provider**, jusque
|
|
222
|
+
* dans l'URL d'autorisation.
|
|
223
|
+
*
|
|
224
|
+
* Toute autre clé est **refusée** : la méthode renvoie
|
|
225
|
+
* `error.code === 'invalid_oauth_query_param'` et n'amorce aucune redirection. Rien
|
|
226
|
+
* n'est jamais accepté puis jeté en silence. Sont notamment refusés :
|
|
227
|
+
* - les paramètres du protocole (`state`, `nonce`, `client_id`, `response_type`,
|
|
228
|
+
* `scope`, `code_challenge`…) — ils sont calculés par le serveur ;
|
|
229
|
+
* - les paramètres construits par cette méthode (`redirect_uri`, `scopes`) — passez par
|
|
230
|
+
* `redirectTo`, `scopes` ou `flowType` ;
|
|
231
|
+
* - `project_id` : le projet est porté par l'URL du client, jamais par un paramètre ;
|
|
232
|
+
* - les variantes de casse (`Prompt`, `State`) et les clés inconnues.
|
|
233
|
+
*
|
|
234
|
+
* L'autorité est le **backend** (`OAUTH_FORWARDABLE_PARAMS` de
|
|
235
|
+
* `services/aura-auth/src/handlers/oauth.rs`), qui répond `400` sur les mêmes règles :
|
|
236
|
+
* l'endpoint de démarrage est public et appelable sans SDK. Ce filtre-ci n'est que son
|
|
237
|
+
* miroir, pour échouer avant la redirection ; un test de parité interdit qu'ils divergent.
|
|
238
|
+
*
|
|
239
|
+
* Les **valeurs**, elles, ne sont validées que par le backend (non vide, sans caractère
|
|
240
|
+
* de contrôle, 512 caractères au plus, jamais deux fois la même clé) — un manquement
|
|
241
|
+
* donne un `400` au démarrage du flux, pas une erreur de cette méthode.
|
|
242
|
+
*/
|
|
137
243
|
signInWithOAuth(provider: string, options?: OAuthSignInOptions): Promise<AuraResponse<{
|
|
138
244
|
url: string;
|
|
139
245
|
}>>;
|
|
@@ -163,7 +269,17 @@ declare class AuthService extends BaseService {
|
|
|
163
269
|
user: User | null;
|
|
164
270
|
}>;
|
|
165
271
|
setSession(accessToken: string, refreshToken: string): Promise<AuraResponse<User>>;
|
|
166
|
-
|
|
272
|
+
/**
|
|
273
|
+
* Échange le code d'autorisation PKCE contre une session.
|
|
274
|
+
*
|
|
275
|
+
* Renvoie un `LoginResponse`, PAS un `TokenPair` : si l'utilisateur a le MFA actif, le
|
|
276
|
+
* backend répond `{ mfa_required: true, mfa_token }` (gate « C1-bis » de
|
|
277
|
+
* `POST /oauth/pkce`) au lieu d'une paire de jetons. Dans ce cas AUCUNE session n'est
|
|
278
|
+
* enregistrée et `MFA_CHALLENGE` est émis avec le `mfaToken` : l'application demande le
|
|
279
|
+
* code TOTP puis appelle `mfaVerify({ mfa_token, code })`. Discriminez avec
|
|
280
|
+
* {@link isMfaChallenge}.
|
|
281
|
+
*/
|
|
282
|
+
exchangeCodeForSession(authCode: string, codeVerifier?: string): Promise<AuraResponse<LoginResponse>>;
|
|
167
283
|
/**
|
|
168
284
|
* Cœur de l'échange PKCE. `successEvent` détermine l'événement émis en cas de
|
|
169
285
|
* succès : `SIGNED_IN` (connexion normale) ou `PASSWORD_RECOVERY` (callback de
|
|
@@ -232,11 +348,9 @@ declare class AuthService extends BaseService {
|
|
|
232
348
|
message: string;
|
|
233
349
|
}>>;
|
|
234
350
|
/**
|
|
235
|
-
*
|
|
236
|
-
* Route vers l'endpoint
|
|
237
|
-
*
|
|
238
|
-
* VÉRITÉ UNIQUE : les méthodes historiques (`verifyEmail`, `verifySmsOtp`, …)
|
|
239
|
-
* délèguent désormais ici.
|
|
351
|
+
* Point d'entrée UNIQUE de la vérification OTP (parité `verifyOtp` de `@supabase/auth-js`).
|
|
352
|
+
* Route vers l'endpoint correct selon `params.type`, en conservant l'effet de bord
|
|
353
|
+
* (sauvegarde de session + émission d'événement).
|
|
240
354
|
*
|
|
241
355
|
* Mapping :
|
|
242
356
|
* - `signup` → POST /verify-email `{ token }` → SIGNED_IN
|
|
@@ -249,9 +363,11 @@ declare class AuthService extends BaseService {
|
|
|
249
363
|
* Divergences documentées :
|
|
250
364
|
* - `recovery` EXIGE `password` (le backend fusionne consommation du token +
|
|
251
365
|
* changement de mot de passe) → `AuraError('missing_password')` sans appel réseau sinon.
|
|
252
|
-
* - `invite
|
|
253
|
-
*
|
|
254
|
-
*
|
|
366
|
+
* - F4 : `invite` et `phone_change` ont été RETIRÉS de la surface. Ils n'ont jamais eu
|
|
367
|
+
* d'endpoint de vérification côté backend et ne pouvaient que rendre
|
|
368
|
+
* `otp_type_unsupported` ; le `default` ci-dessous couvre désormais toute valeur
|
|
369
|
+
* inconnue reçue d'un appelant JavaScript non typé.
|
|
370
|
+
* - `email_change` renvoie un `User` (pas une `TokenPair`) et émet `USER_UPDATED`.
|
|
255
371
|
*/
|
|
256
372
|
verifyOtp(params: VerifyEmailChangeOtpParams): Promise<AuraResponse<User>>;
|
|
257
373
|
verifyOtp(params: Exclude<VerifyOtpParams, VerifyEmailChangeOtpParams>): Promise<AuraResponse<TokenPair>>;
|
|
@@ -260,21 +376,15 @@ declare class AuthService extends BaseService {
|
|
|
260
376
|
* l'endpoint, puis (succès) sauvegarde la session et émet `SIGNED_IN`.
|
|
261
377
|
*/
|
|
262
378
|
private _verifyToTokenPair;
|
|
263
|
-
/** Rétrocompat : délègue à `verifyOtp({ type: 'signup' })` (POST /verify-email). */
|
|
264
|
-
verifyEmail(token: string): Promise<AuraResponse<TokenPair>>;
|
|
265
379
|
resendVerificationEmail(email?: string): Promise<AuraResponse<{
|
|
266
380
|
message: string;
|
|
267
381
|
}>>;
|
|
268
382
|
signInWithEmailOtp(email: string): Promise<AuraResponse<{
|
|
269
383
|
message: string;
|
|
270
384
|
}>>;
|
|
271
|
-
/** Rétrocompat : délègue à `verifyOtp({ type: 'email' })` (POST /email-otp/verify). */
|
|
272
|
-
verifyEmailOtp(email: string, code: string): Promise<AuraResponse<TokenPair>>;
|
|
273
385
|
signInWithSmsOtp(phone: string): Promise<AuraResponse<{
|
|
274
386
|
message: string;
|
|
275
387
|
}>>;
|
|
276
|
-
/** Rétrocompat : délègue à `verifyOtp({ type: 'sms' })` (POST /sms/verify). */
|
|
277
|
-
verifySmsOtp(phone: string, code: string): Promise<AuraResponse<TokenPair>>;
|
|
278
388
|
listIdentities(): Promise<AuraResponse<IdentityInfo[]>>;
|
|
279
389
|
linkIdentity(provider: string): Promise<AuraResponse<{
|
|
280
390
|
url: string;
|
|
@@ -283,16 +393,18 @@ declare class AuthService extends BaseService {
|
|
|
283
393
|
unlinkIdentity(identityId: string): Promise<AuraResponse<{
|
|
284
394
|
message: string;
|
|
285
395
|
}>>;
|
|
286
|
-
/**
|
|
287
|
-
* Rétrocompat : délègue à `verifyOtp({ type: 'email_change' })`.
|
|
288
|
-
* CHANGEMENT ASSUMÉ (parité) : émet désormais `USER_UPDATED` (auparavant aucun
|
|
289
|
-
* événement) — voir CHANGELOG.
|
|
290
|
-
*/
|
|
291
|
-
confirmEmailChange(token: string): Promise<AuraResponse<User>>;
|
|
292
396
|
regenerateRecoveryCodes(code: string): Promise<AuraResponse<{
|
|
293
397
|
recovery_codes: string[];
|
|
294
398
|
}>>;
|
|
295
|
-
|
|
399
|
+
/**
|
|
400
|
+
* Échange un ID token de provider (Google/Apple, mobile natif) contre une session.
|
|
401
|
+
*
|
|
402
|
+
* Renvoie un `LoginResponse`, PAS un `TokenPair` : comme partout ailleurs, un utilisateur
|
|
403
|
+
* avec MFA actif reçoit `{ mfa_required: true, mfa_token }` et AUCUNE session n'est
|
|
404
|
+
* enregistrée — `MFA_CHALLENGE` est émis, à relever par `mfaVerify`. Discriminez avec
|
|
405
|
+
* {@link isMfaChallenge}.
|
|
406
|
+
*/
|
|
407
|
+
signInWithIdToken(provider: string, idToken: string, accessToken?: string): Promise<AuraResponse<LoginResponse>>;
|
|
296
408
|
/** GoTrue parity : GET /settings — config publique du projet (pas d'auth requise). */
|
|
297
409
|
getSettings(): Promise<AuraResponse<{
|
|
298
410
|
disable_signup: boolean;
|
|
@@ -325,46 +437,6 @@ declare class AuthService extends BaseService {
|
|
|
325
437
|
verifyMagicLink(token: string): Promise<AuraResponse<TokenPair>>;
|
|
326
438
|
}
|
|
327
439
|
|
|
328
|
-
declare class AuthAdminService extends BaseService {
|
|
329
|
-
private get prefix();
|
|
330
|
-
listUsers(params?: {
|
|
331
|
-
limit?: number;
|
|
332
|
-
offset?: number;
|
|
333
|
-
search?: string;
|
|
334
|
-
}): Promise<AuraResponse<AdminUser[]>>;
|
|
335
|
-
getUser(userId: string): Promise<AuraResponse<AdminUser>>;
|
|
336
|
-
createUser(data: AdminCreateUserRequest): Promise<AuraResponse<AdminUser>>;
|
|
337
|
-
updateUser(userId: string, data: AdminUpdateUserRequest): Promise<AuraResponse<AdminUser>>;
|
|
338
|
-
deleteUser(userId: string): Promise<AuraResponse<null>>;
|
|
339
|
-
banUser(userId: string): Promise<AuraResponse<null>>;
|
|
340
|
-
unbanUser(userId: string): Promise<AuraResponse<null>>;
|
|
341
|
-
generateLink(userId: string, type: GenerateLinkType): Promise<AuraResponse<GenerateLinkResult>>;
|
|
342
|
-
getUserStats(): Promise<AuraResponse<UserStats>>;
|
|
343
|
-
listUserIdentities(userId: string): Promise<AuraResponse<IdentityInfo[]>>;
|
|
344
|
-
listSessions(params?: {
|
|
345
|
-
userId?: string;
|
|
346
|
-
limit?: number;
|
|
347
|
-
offset?: number;
|
|
348
|
-
}): Promise<AuraResponse<AdminSessionInfo[]>>;
|
|
349
|
-
revokeSession(sessionId: string): Promise<AuraResponse<null>>;
|
|
350
|
-
getAuditLog(params?: {
|
|
351
|
-
userId?: string;
|
|
352
|
-
limit?: number;
|
|
353
|
-
offset?: number;
|
|
354
|
-
}): Promise<AuraResponse<AuditLogEntry[]>>;
|
|
355
|
-
getSettings(): Promise<AuraResponse<AuthSettings>>;
|
|
356
|
-
updateSettings(data: Partial<AuthSettings>): Promise<AuraResponse<AuthSettings>>;
|
|
357
|
-
listEmailTemplates(): Promise<AuraResponse<Record<string, unknown>[]>>;
|
|
358
|
-
getEmailTemplate(type: string): Promise<AuraResponse<Record<string, unknown>>>;
|
|
359
|
-
updateEmailTemplate(type: string, data: EmailTemplateUpdate): Promise<AuraResponse<Record<string, unknown>>>;
|
|
360
|
-
deleteEmailTemplate(type: string): Promise<AuraResponse<{
|
|
361
|
-
message: string;
|
|
362
|
-
}>>;
|
|
363
|
-
testEmailTemplate(type: string, body: {
|
|
364
|
-
to_email: string;
|
|
365
|
-
}): Promise<AuraResponse<null>>;
|
|
366
|
-
}
|
|
367
|
-
|
|
368
440
|
interface SessionManagerOptions {
|
|
369
441
|
channelName: string;
|
|
370
442
|
enabled: boolean;
|
|
@@ -394,4 +466,4 @@ declare class SessionManager {
|
|
|
394
466
|
private _stopInterval;
|
|
395
467
|
}
|
|
396
468
|
|
|
397
|
-
export { AuthAdminService, AuthService, type EmailOtpType, type MobileOtpType, SessionManager, type SessionManagerOptions, type VerifyEmailChangeOtpParams, type VerifyEmailOtpParams, type
|
|
469
|
+
export { AuthAdminService, AuthService, type EmailOtpType, type MobileOtpType, SessionManager, type SessionManagerOptions, type VerifyEmailChangeOtpParams, type VerifyEmailOtpParams, type VerifyMagiclinkOtpParams, type VerifyOtpParams, type VerifyRecoveryOtpParams, type VerifySignupOtpParams, type VerifySmsOtpParams, isMfaChallenge };
|