@turinhub/tale-js-sdk 1.3.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +90 -13
  2. package/dist/acl/index.d.ts +62 -49
  3. package/dist/acl/index.js +262 -67
  4. package/dist/acl/types.d.ts +63 -98
  5. package/dist/app/index.d.ts +10 -0
  6. package/dist/app/index.js +198 -0
  7. package/dist/app/types.d.ts +101 -0
  8. package/dist/app/types.js +1 -0
  9. package/dist/app-token/index.d.ts +7 -0
  10. package/dist/app-token/index.js +58 -0
  11. package/dist/app-token/types.d.ts +25 -0
  12. package/dist/app-token/types.js +1 -0
  13. package/dist/attachment/index.d.ts +17 -0
  14. package/dist/attachment/index.js +247 -0
  15. package/dist/attachment/types.d.ts +82 -0
  16. package/dist/attachment/types.js +1 -0
  17. package/dist/attachment-type/index.d.ts +15 -0
  18. package/dist/attachment-type/index.js +203 -0
  19. package/dist/attachment-type/types.d.ts +60 -0
  20. package/dist/attachment-type/types.js +1 -0
  21. package/dist/auth/index.d.ts +21 -21
  22. package/dist/auth/index.js +66 -66
  23. package/dist/auth/types.d.ts +51 -51
  24. package/dist/cms/file.d.ts +88 -70
  25. package/dist/cms/file.js +228 -77
  26. package/dist/cms/folder.d.ts +9 -9
  27. package/dist/cms/folder.js +18 -18
  28. package/dist/cms/types.d.ts +58 -38
  29. package/dist/common/http.d.ts +17 -0
  30. package/dist/common/http.js +141 -0
  31. package/dist/common/types.d.ts +58 -63
  32. package/dist/index.d.ts +6 -1
  33. package/dist/index.js +4 -0
  34. package/dist/rbac/index.d.ts +37 -42
  35. package/dist/rbac/index.js +96 -98
  36. package/dist/rbac/types.d.ts +38 -40
  37. package/dist/status.d.ts +11 -11
  38. package/dist/status.js +30 -3
  39. package/dist/task/index.d.ts +15 -147
  40. package/dist/task/index.js +170 -161
  41. package/dist/task/types.d.ts +57 -81
  42. package/dist/task-type/index.d.ts +7 -7
  43. package/dist/task-type/index.js +12 -12
  44. package/dist/task-type/types.d.ts +18 -34
  45. package/dist/token.d.ts +3 -3
  46. package/dist/token.js +4 -4
  47. package/dist/user/index.d.ts +28 -29
  48. package/dist/user/index.js +69 -74
  49. package/dist/user/types.d.ts +32 -33
  50. package/dist/user-attribute/index.d.ts +4 -7
  51. package/dist/user-attribute/index.js +19 -22
  52. package/dist/user-attribute/types.d.ts +29 -29
  53. package/dist/user-group/index.d.ts +4 -223
  54. package/dist/user-group/index.js +61 -479
  55. package/dist/user-group/types.d.ts +1 -1
  56. package/package.json +1 -1
@@ -35,11 +35,11 @@ export type { LoginRequest, LoginOptions, LoginWithSmsOptions, VerifySmsOptions,
35
35
  * username: 'johndoe',
36
36
  * password: 'secure_password_123'
37
37
  * }, {
38
- * include_rbac: true, // Include roles and privileges (SDK default: false)
39
- * include_user_groups: true, // Include user groups (SDK default: false)
40
- * include_login_methods: true, // Include login methods (SDK default: false)
41
- * include_attributes: true, // Include user attributes (SDK default: false)
42
- * include_acl: true // Include ACL records (SDK default: false)
38
+ * includeRbac: true, // Include roles and privileges (SDK default: false)
39
+ * includeUserGroups: true, // Include user groups (SDK default: false)
40
+ * includeLoginMethods: true, // Include login methods (SDK default: false)
41
+ * includeAttributes: true, // Include user attributes (SDK default: false)
42
+ * includeAcl: true // Include ACL records (SDK default: false)
43
43
  * });
44
44
  * ```
45
45
  *
@@ -49,11 +49,11 @@ export type { LoginRequest, LoginOptions, LoginWithSmsOptions, VerifySmsOptions,
49
49
  * @note By default, all include parameters are set to false for better performance.
50
50
  * Explicitly set them to true if you need the additional data.
51
51
  *
52
- * @param options.include_rbac Include roles and privileges; default false
53
- * @param options.include_login_methods Include user login methods; default false
54
- * @param options.include_user_groups Include user groups; default false
55
- * @param options.include_attributes Include user attributes; default false
56
- * @param options.include_acl Include ACL records; default false
52
+ * @param options.includeRbac Include roles and privileges; default false
53
+ * @param options.includeLoginMethods Include user login methods; default false
54
+ * @param options.includeUserGroups Include user groups; default false
55
+ * @param options.includeAttributes Include user attributes; default false
56
+ * @param options.includeAcl Include ACL records; default false
57
57
  */
58
58
  export declare function login(credentials: LoginRequest, options?: LoginOptions): Promise<LoginResponse>;
59
59
  /**
@@ -98,7 +98,7 @@ export declare function validateToken(token: string, options?: {
98
98
  *
99
99
  * try {
100
100
  * const result = await loginWithSms('+8613800138000');
101
- * console.log('SMS sent:', result.sms_id);
101
+ * console.log('SMS sent:', result.smsId);
102
102
  * console.log('Type:', result.type); // 'login' or 'register'
103
103
  * } catch (error) {
104
104
  * console.error('SMS sending failed:', error.message);
@@ -109,7 +109,7 @@ export declare function loginWithSms(phone: string, options?: LoginWithSmsOption
109
109
  /**
110
110
  * Verifies SMS code and authenticates user (login or register).
111
111
  *
112
- * @param request - SMS verification request with sms_id, code, and optional user data
112
+ * @param request - SMS verification request with smsId, code, and optional user data
113
113
  * @param options - Optional configuration for the request
114
114
  * @returns Promise resolving to login response with user info and token
115
115
  * @throws {ConfigurationError} When required environment variables are missing
@@ -122,11 +122,11 @@ export declare function loginWithSms(phone: string, options?: LoginWithSmsOption
122
122
  *
123
123
  * try {
124
124
  * const result = await verifySmsCode({
125
- * sms_id: 'uuid-here',
126
- * sms_type: 'login',
127
- * verification_code: '123456'
125
+ * smsId: 'uuid-here',
126
+ * smsType: 'login',
127
+ * verificationCode: '123456'
128
128
  * });
129
- * console.log('Login successful:', result.user.user_id);
129
+ * console.log('Login successful:', result.user.userId);
130
130
  * console.log('User token:', result.token.token);
131
131
  * } catch (error) {
132
132
  * console.error('SMS verification failed:', error.message);
@@ -150,13 +150,13 @@ export declare function verifySmsCode(request: VerifySmsRequest, options?: Verif
150
150
  *
151
151
  * try {
152
152
  * const result = await registerWithSms({
153
- * sms_id: 'uuid-here',
154
- * sms_type: 'register',
155
- * verification_code: '123456',
153
+ * smsId: 'uuid-here',
154
+ * smsType: 'register',
155
+ * verificationCode: '123456',
156
156
  * username: 'newuser',
157
- * password_encrypted: 'encrypted_password'
157
+ * passwordEncrypted: 'encrypted_password'
158
158
  * });
159
- * console.log('Registration successful:', result.user.user_id);
159
+ * console.log('Registration successful:', result.user.userId);
160
160
  * console.log('User token:', result.token.token);
161
161
  * } catch (error) {
162
162
  * console.error('Registration failed:', error.message);
@@ -35,11 +35,11 @@ import { ApiError, ConfigurationError, NetworkError } from "../errors.js";
35
35
  * username: 'johndoe',
36
36
  * password: 'secure_password_123'
37
37
  * }, {
38
- * include_rbac: true, // Include roles and privileges (SDK default: false)
39
- * include_user_groups: true, // Include user groups (SDK default: false)
40
- * include_login_methods: true, // Include login methods (SDK default: false)
41
- * include_attributes: true, // Include user attributes (SDK default: false)
42
- * include_acl: true // Include ACL records (SDK default: false)
38
+ * includeRbac: true, // Include roles and privileges (SDK default: false)
39
+ * includeUserGroups: true, // Include user groups (SDK default: false)
40
+ * includeLoginMethods: true, // Include login methods (SDK default: false)
41
+ * includeAttributes: true, // Include user attributes (SDK default: false)
42
+ * includeAcl: true // Include ACL records (SDK default: false)
43
43
  * });
44
44
  * ```
45
45
  *
@@ -49,11 +49,11 @@ import { ApiError, ConfigurationError, NetworkError } from "../errors.js";
49
49
  * @note By default, all include parameters are set to false for better performance.
50
50
  * Explicitly set them to true if you need the additional data.
51
51
  *
52
- * @param options.include_rbac Include roles and privileges; default false
53
- * @param options.include_login_methods Include user login methods; default false
54
- * @param options.include_user_groups Include user groups; default false
55
- * @param options.include_attributes Include user attributes; default false
56
- * @param options.include_acl Include ACL records; default false
52
+ * @param options.includeRbac Include roles and privileges; default false
53
+ * @param options.includeLoginMethods Include user login methods; default false
54
+ * @param options.includeUserGroups Include user groups; default false
55
+ * @param options.includeAttributes Include user attributes; default false
56
+ * @param options.includeAcl Include ACL records; default false
57
57
  */
58
58
  export async function login(credentials, options) {
59
59
  // Validate required fields
@@ -75,20 +75,20 @@ export async function login(credentials, options) {
75
75
  throw new ConfigurationError("Missing required environment variable: TALE_APP_KEY");
76
76
  }
77
77
  // Build URL with query parameters
78
- const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v1/login/username-password");
78
+ const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v2/login/username-password");
79
79
  // Add include parameters as query params (SDK defaults to false)
80
- url.searchParams.set("include_rbac", String(options?.include_rbac ?? false));
81
- url.searchParams.set("include_login_methods", String(options?.include_login_methods ?? false));
82
- url.searchParams.set("include_user_groups", String(options?.include_user_groups ?? false));
83
- url.searchParams.set("include_attributes", String(options?.include_attributes ?? false));
84
- url.searchParams.set("include_acl", String(options?.include_acl ?? false));
80
+ url.searchParams.set("includeRbac", String(options?.includeRbac ?? false));
81
+ url.searchParams.set("includeLoginMethods", String(options?.includeLoginMethods ?? false));
82
+ url.searchParams.set("includeUserGroups", String(options?.includeUserGroups ?? false));
83
+ url.searchParams.set("includeAttributes", String(options?.includeAttributes ?? false));
84
+ url.searchParams.set("includeAcl", String(options?.includeAcl ?? false));
85
85
  // Build request body
86
86
  const requestBody = {
87
87
  username: credentials.username.trim(),
88
88
  password: credentials.password,
89
- app_key: appKey,
90
- device_name: options?.device_name,
91
- device_fingerprint: options?.device_fingerprint,
89
+ appKey: appKey,
90
+ deviceName: options?.deviceName,
91
+ deviceFingerprint: options?.deviceFingerprint,
92
92
  scope: options?.scope || "",
93
93
  };
94
94
  let response;
@@ -125,7 +125,7 @@ export async function login(credentials, options) {
125
125
  throw new ApiError("Account is frozen or access forbidden", response.status, "9403");
126
126
  }
127
127
  if (response.status === 401) {
128
- throw new ApiError("Invalid app_key or authentication failed", response.status, "9401");
128
+ throw new ApiError("Invalid appKey or authentication failed", response.status, "9401");
129
129
  }
130
130
  if (!response.ok) {
131
131
  const errorMsg = typeof json === "object" &&
@@ -147,10 +147,10 @@ export async function login(credentials, options) {
147
147
  app: responseData.app,
148
148
  user: responseData.user,
149
149
  token: responseData.token,
150
- user_roles: responseData.user_roles || [],
151
- user_privileges: responseData.user_privileges || [],
152
- user_groups: responseData.user_groups || [],
153
- user_login_methods: responseData.user_login_methods || [],
150
+ userRoles: responseData.userRoles || [],
151
+ userPrivileges: responseData.userPrivileges || [],
152
+ userGroups: responseData.userGroups || [],
153
+ userLoginMethods: responseData.userLoginMethods || [],
154
154
  };
155
155
  return loginResponse;
156
156
  }
@@ -187,7 +187,7 @@ export async function validateToken(token, options) {
187
187
  if (!base) {
188
188
  throw new ConfigurationError("Missing required environment variable: TALE_BASE_URL");
189
189
  }
190
- const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v1/assert_token");
190
+ const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v2/assert-token");
191
191
  if (options?.scope) {
192
192
  url.searchParams.append("scope", options.scope);
193
193
  }
@@ -223,7 +223,7 @@ export async function validateToken(token, options) {
223
223
  *
224
224
  * try {
225
225
  * const result = await loginWithSms('+8613800138000');
226
- * console.log('SMS sent:', result.sms_id);
226
+ * console.log('SMS sent:', result.smsId);
227
227
  * console.log('Type:', result.type); // 'login' or 'register'
228
228
  * } catch (error) {
229
229
  * console.error('SMS sending failed:', error.message);
@@ -243,7 +243,7 @@ export async function loginWithSms(phone, options) {
243
243
  }
244
244
  // Use provided app token or get one from token service
245
245
  const authToken = options?.appToken ?? (await getAppToken());
246
- const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v1/sms/login_or_register");
246
+ const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v2/sms/login-or-register");
247
247
  url.searchParams.append("phone", phone.trim());
248
248
  let response;
249
249
  try {
@@ -289,21 +289,21 @@ export async function loginWithSms(phone, options) {
289
289
  // Handle response data structure - check if data is wrapped in a 'data' field
290
290
  const responseData = json.data || json;
291
291
  // Validate response structure
292
- if (!responseData || !responseData.sms_id || !responseData.type) {
292
+ if (!responseData || !responseData.smsId || !responseData.type) {
293
293
  throw new ApiError("Invalid SMS response: missing required data", response.status);
294
294
  }
295
295
  return {
296
- app_key: responseData.app_key,
296
+ appKey: responseData.appKey,
297
297
  phone: responseData.phone,
298
298
  type: responseData.type,
299
- sms_id: responseData.sms_id,
300
- expired_at: responseData.expired_at,
299
+ smsId: responseData.smsId,
300
+ expiredAt: responseData.expiredAt,
301
301
  };
302
302
  }
303
303
  /**
304
304
  * Verifies SMS code and authenticates user (login or register).
305
305
  *
306
- * @param request - SMS verification request with sms_id, code, and optional user data
306
+ * @param request - SMS verification request with smsId, code, and optional user data
307
307
  * @param options - Optional configuration for the request
308
308
  * @returns Promise resolving to login response with user info and token
309
309
  * @throws {ConfigurationError} When required environment variables are missing
@@ -316,11 +316,11 @@ export async function loginWithSms(phone, options) {
316
316
  *
317
317
  * try {
318
318
  * const result = await verifySmsCode({
319
- * sms_id: 'uuid-here',
320
- * sms_type: 'login',
321
- * verification_code: '123456'
319
+ * smsId: 'uuid-here',
320
+ * smsType: 'login',
321
+ * verificationCode: '123456'
322
322
  * });
323
- * console.log('Login successful:', result.user.user_id);
323
+ * console.log('Login successful:', result.user.userId);
324
324
  * console.log('User token:', result.token.token);
325
325
  * } catch (error) {
326
326
  * console.error('SMS verification failed:', error.message);
@@ -329,14 +329,14 @@ export async function loginWithSms(phone, options) {
329
329
  */
330
330
  export async function verifySmsCode(request, options) {
331
331
  // Validate required fields
332
- if (!request.sms_id || request.sms_id.trim() === "") {
333
- throw new ApiError("sms_id is required", 400, "9400");
332
+ if (!request.smsId || request.smsId.trim() === "") {
333
+ throw new ApiError("smsId is required", 400, "9400");
334
334
  }
335
- if (!request.sms_type || !["login", "register"].includes(request.sms_type)) {
336
- throw new ApiError('sms_type must be "login" or "register"', 400, "9400");
335
+ if (!request.smsType || !["login", "register"].includes(request.smsType)) {
336
+ throw new ApiError('smsType must be "login" or "register"', 400, "9400");
337
337
  }
338
- if (!request.verification_code || request.verification_code.trim() === "") {
339
- throw new ApiError("verification_code is required", 400, "9400");
338
+ if (!request.verificationCode || request.verificationCode.trim() === "") {
339
+ throw new ApiError("verificationCode is required", 400, "9400");
340
340
  }
341
341
  // Determine base URL
342
342
  const env = globalThis?.process?.env ?? import.meta?.env ?? undefined;
@@ -346,10 +346,10 @@ export async function verifySmsCode(request, options) {
346
346
  }
347
347
  // Use provided app token or get one from token service
348
348
  const authToken = options?.appToken ?? (await getAppToken(options));
349
- const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v1/sms/verify");
350
- url.searchParams.append("sms_id", request.sms_id.trim());
351
- url.searchParams.append("sms_type", request.sms_type);
352
- url.searchParams.append("verification_code", request.verification_code.trim());
349
+ const url = new URL(String(base).replace(/\/+$/, "") + "/auth/v2/sms/verify");
350
+ url.searchParams.append("smsId", request.smsId.trim());
351
+ url.searchParams.append("smsType", request.smsType);
352
+ url.searchParams.append("verificationCode", request.verificationCode.trim());
353
353
  let response;
354
354
  try {
355
355
  response = await globalThis.fetch(url.toString(), {
@@ -402,10 +402,10 @@ export async function verifySmsCode(request, options) {
402
402
  app: responseData.app,
403
403
  user: responseData.user,
404
404
  token: responseData.token,
405
- user_roles: responseData.user_roles || [],
406
- user_privileges: responseData.user_privileges || [],
407
- user_groups: responseData.user_groups || [],
408
- user_login_methods: responseData.user_login_methods || [],
405
+ userRoles: responseData.userRoles || [],
406
+ userPrivileges: responseData.userPrivileges || [],
407
+ userGroups: responseData.userGroups || [],
408
+ userLoginMethods: responseData.userLoginMethods || [],
409
409
  };
410
410
  return smsLoginResponse;
411
411
  }
@@ -425,13 +425,13 @@ export async function verifySmsCode(request, options) {
425
425
  *
426
426
  * try {
427
427
  * const result = await registerWithSms({
428
- * sms_id: 'uuid-here',
429
- * sms_type: 'register',
430
- * verification_code: '123456',
428
+ * smsId: 'uuid-here',
429
+ * smsType: 'register',
430
+ * verificationCode: '123456',
431
431
  * username: 'newuser',
432
- * password_encrypted: 'encrypted_password'
432
+ * passwordEncrypted: 'encrypted_password'
433
433
  * });
434
- * console.log('Registration successful:', result.user.user_id);
434
+ * console.log('Registration successful:', result.user.userId);
435
435
  * console.log('User token:', result.token.token);
436
436
  * } catch (error) {
437
437
  * console.error('Registration failed:', error.message);
@@ -440,8 +440,8 @@ export async function verifySmsCode(request, options) {
440
440
  */
441
441
  export async function registerWithSms(request, options) {
442
442
  // Validate required fields for registration
443
- if (request.sms_type !== "register") {
444
- throw new ApiError('sms_type must be "register" for registration', 400, "9400");
443
+ if (request.smsType !== "register") {
444
+ throw new ApiError('smsType must be "register" for registration', 400, "9400");
445
445
  }
446
446
  // Determine base URL
447
447
  const env = globalThis?.process?.env ?? import.meta?.env ?? undefined;
@@ -451,14 +451,14 @@ export async function registerWithSms(request, options) {
451
451
  }
452
452
  // Use provided app token or get one from token service
453
453
  const authToken = options?.appToken ?? (await getAppToken(options));
454
- const url = String(base).replace(/\/+$/, "") + "/auth/v1/sms/register/verify";
454
+ const url = String(base).replace(/\/+$/, "") + "/auth/v2/sms/register/verify";
455
455
  // Build request body
456
456
  const requestBody = {
457
- sms_id: request.sms_id.trim(),
458
- sms_type: request.sms_type,
459
- verification_code: request.verification_code.trim(),
457
+ smsId: request.smsId.trim(),
458
+ smsType: request.smsType,
459
+ verificationCode: request.verificationCode.trim(),
460
460
  username: request.username?.trim(),
461
- password_encrypted: request.password_encrypted,
461
+ passwordEncrypted: request.passwordEncrypted,
462
462
  };
463
463
  let response;
464
464
  try {
@@ -513,10 +513,10 @@ export async function registerWithSms(request, options) {
513
513
  app: responseData.app,
514
514
  user: responseData.user,
515
515
  token: responseData.token,
516
- user_roles: responseData.user_roles || [],
517
- user_privileges: responseData.user_privileges || [],
518
- user_groups: responseData.user_groups || [],
519
- user_login_methods: responseData.user_login_methods || [],
516
+ userRoles: responseData.userRoles || [],
517
+ userPrivileges: responseData.userPrivileges || [],
518
+ userGroups: responseData.userGroups || [],
519
+ userLoginMethods: responseData.userLoginMethods || [],
520
520
  };
521
521
  return registrationResponse;
522
522
  }
@@ -12,38 +12,38 @@ export interface AuthUser extends Omit<User, "remark"> {
12
12
  export interface UserToken {
13
13
  token: string;
14
14
  scope: string;
15
- device_name?: string;
16
- device_fingerprint?: string;
17
- granted_at: string;
18
- expired_at: string;
15
+ deviceName?: string;
16
+ deviceFingerprint?: string;
17
+ grantedAt: string;
18
+ expiredAt: string;
19
19
  }
20
20
  /**
21
21
  * Auth role (extends base Role with additional fields)
22
22
  */
23
23
  export interface AuthRole extends Role {
24
- assigned_at: string;
25
- expires_at?: string;
26
- is_active: boolean;
24
+ assignedAt: string;
25
+ expiresAt?: string;
26
+ isActive: boolean;
27
27
  }
28
28
  /**
29
29
  * Auth privilege (extends base Privilege with additional fields)
30
30
  */
31
31
  export interface AuthPrivilege extends Privilege {
32
- granted_directly: boolean;
33
- role_id?: string;
34
- assigned_at: string;
35
- expires_at?: string;
36
- is_active: boolean;
32
+ grantedDirectly: boolean;
33
+ roleId?: string;
34
+ assignedAt: string;
35
+ expiresAt?: string;
36
+ isActive: boolean;
37
37
  }
38
38
  /**
39
39
  * Auth user login method
40
40
  */
41
41
  export interface AuthUserLoginMethod {
42
- method_type: string;
42
+ methodType: string;
43
43
  identifier: string;
44
- is_active: boolean;
45
- created_at: string;
46
- last_used_at?: string;
44
+ isActive: boolean;
45
+ createdAt: string;
46
+ lastUsedAt?: string;
47
47
  }
48
48
  export interface LoginRequest {
49
49
  username: string;
@@ -51,77 +51,77 @@ export interface LoginRequest {
51
51
  }
52
52
  export interface LoginOptions {
53
53
  baseUrl?: string;
54
- device_name?: string;
55
- device_fingerprint?: string;
54
+ deviceName?: string;
55
+ deviceFingerprint?: string;
56
56
  scope?: string;
57
- include_rbac?: boolean;
58
- include_login_methods?: boolean;
59
- include_user_groups?: boolean;
60
- include_attributes?: boolean;
61
- include_acl?: boolean;
57
+ includeRbac?: boolean;
58
+ includeLoginMethods?: boolean;
59
+ includeUserGroups?: boolean;
60
+ includeAttributes?: boolean;
61
+ includeAcl?: boolean;
62
62
  }
63
63
  export interface LoginResponse {
64
64
  app: AppInfo;
65
65
  user: AuthUser;
66
66
  token: UserToken;
67
- user_roles: AuthRole[];
68
- user_privileges: AuthPrivilege[];
69
- user_groups: UserGroup[];
70
- user_login_methods: AuthUserLoginMethod[];
67
+ userRoles: AuthRole[];
68
+ userPrivileges: AuthPrivilege[];
69
+ userGroups: UserGroup[];
70
+ userLoginMethods: AuthUserLoginMethod[];
71
71
  }
72
72
  export interface LoginJson {
73
73
  app: AppInfo;
74
74
  user: AuthUser;
75
75
  token: UserToken;
76
- user_roles: AuthRole[];
77
- user_privileges: AuthPrivilege[];
78
- user_groups: UserGroup[];
79
- user_login_methods: AuthUserLoginMethod[];
76
+ userRoles: AuthRole[];
77
+ userPrivileges: AuthPrivilege[];
78
+ userGroups: UserGroup[];
79
+ userLoginMethods: AuthUserLoginMethod[];
80
80
  }
81
81
  export interface LoginWithSmsOptions {
82
82
  appToken?: string;
83
83
  }
84
84
  export interface VerifySmsOptions extends CommonOptions {
85
- device_name?: string;
86
- device_fingerprint?: string;
85
+ deviceName?: string;
86
+ deviceFingerprint?: string;
87
87
  scope?: string;
88
88
  }
89
89
  export interface SendSmsResponse {
90
- app_key: string;
90
+ appKey: string;
91
91
  phone: string;
92
92
  type: "login" | "register";
93
- sms_id: string;
94
- expired_at: string;
93
+ smsId: string;
94
+ expiredAt: string;
95
95
  }
96
96
  export interface SendSmsJson {
97
- app_key: string;
97
+ appKey: string;
98
98
  phone: string;
99
99
  type: "login" | "register";
100
- sms_id: string;
101
- expired_at: string;
100
+ smsId: string;
101
+ expiredAt: string;
102
102
  }
103
103
  export interface VerifySmsRequest {
104
- sms_id: string;
105
- sms_type: "login" | "register";
106
- verification_code: string;
104
+ smsId: string;
105
+ smsType: "login" | "register";
106
+ verificationCode: string;
107
107
  username?: string;
108
- password_encrypted?: string;
108
+ passwordEncrypted?: string;
109
109
  }
110
110
  export interface SmsLoginResponse {
111
111
  app: AppInfo;
112
112
  user: AuthUser;
113
113
  token: UserToken;
114
- user_roles: AuthRole[];
115
- user_privileges: AuthPrivilege[];
116
- user_groups: UserGroup[];
117
- user_login_methods: AuthUserLoginMethod[];
114
+ userRoles: AuthRole[];
115
+ userPrivileges: AuthPrivilege[];
116
+ userGroups: UserGroup[];
117
+ userLoginMethods: AuthUserLoginMethod[];
118
118
  }
119
119
  export interface SmsLoginJson {
120
120
  app: AppInfo;
121
121
  user: AuthUser;
122
122
  token: UserToken;
123
- user_roles: AuthRole[];
124
- user_privileges: AuthPrivilege[];
125
- user_groups: UserGroup[];
126
- user_login_methods: AuthUserLoginMethod[];
123
+ userRoles: AuthRole[];
124
+ userPrivileges: AuthPrivilege[];
125
+ userGroups: UserGroup[];
126
+ userLoginMethods: AuthUserLoginMethod[];
127
127
  }