@librechat/data-schemas 0.0.7 → 0.0.10

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 (76) hide show
  1. package/dist/index.cjs +2160 -4
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.es.js +2156 -7
  4. package/dist/index.es.js.map +1 -1
  5. package/dist/types/config/meiliLogger.d.ts +4 -0
  6. package/dist/types/config/parsers.d.ts +32 -0
  7. package/dist/types/config/winston.d.ts +4 -0
  8. package/dist/types/crypto/index.d.ts +3 -0
  9. package/dist/types/index.d.ts +8 -46
  10. package/dist/types/methods/index.d.ts +89 -0
  11. package/dist/types/methods/memory.d.ts +35 -0
  12. package/dist/types/methods/pluginAuth.d.ts +36 -0
  13. package/dist/types/methods/role.d.ts +35 -0
  14. package/dist/types/methods/session.d.ts +48 -0
  15. package/dist/types/methods/share.d.ts +38 -0
  16. package/dist/types/methods/share.test.d.ts +1 -0
  17. package/dist/types/methods/token.d.ts +34 -0
  18. package/dist/types/methods/user.d.ts +39 -0
  19. package/dist/types/methods/user.test.d.ts +1 -0
  20. package/dist/types/models/action.d.ts +30 -0
  21. package/dist/types/models/agent.d.ts +30 -0
  22. package/dist/types/models/assistant.d.ts +30 -0
  23. package/dist/types/models/balance.d.ts +30 -0
  24. package/dist/types/models/banner.d.ts +30 -0
  25. package/dist/types/models/conversationTag.d.ts +30 -0
  26. package/dist/types/models/convo.d.ts +30 -0
  27. package/dist/types/models/file.d.ts +30 -0
  28. package/dist/types/models/index.d.ts +54 -0
  29. package/dist/types/models/key.d.ts +30 -0
  30. package/dist/types/models/memory.d.ts +27 -0
  31. package/dist/types/models/message.d.ts +30 -0
  32. package/dist/types/models/pluginAuth.d.ts +30 -0
  33. package/dist/types/models/plugins/mongoMeili.d.ts +74 -0
  34. package/dist/types/models/preset.d.ts +30 -0
  35. package/dist/types/models/project.d.ts +30 -0
  36. package/dist/types/models/prompt.d.ts +30 -0
  37. package/dist/types/models/promptGroup.d.ts +30 -0
  38. package/dist/types/models/role.d.ts +30 -0
  39. package/dist/types/models/session.d.ts +30 -0
  40. package/dist/types/models/sharedLink.d.ts +30 -0
  41. package/dist/types/models/token.d.ts +30 -0
  42. package/dist/types/models/toolCall.d.ts +30 -0
  43. package/dist/types/models/transaction.d.ts +30 -0
  44. package/dist/types/models/user.d.ts +30 -0
  45. package/dist/types/schema/action.d.ts +2 -27
  46. package/dist/types/schema/agent.d.ts +4 -31
  47. package/dist/types/schema/assistant.d.ts +4 -16
  48. package/dist/types/schema/balance.d.ts +4 -12
  49. package/dist/types/schema/convo.d.ts +2 -49
  50. package/dist/types/schema/file.d.ts +2 -26
  51. package/dist/types/schema/index.d.ts +24 -0
  52. package/dist/types/schema/memory.d.ts +29 -0
  53. package/dist/types/schema/message.d.ts +2 -36
  54. package/dist/types/schema/pluginAuth.d.ts +2 -9
  55. package/dist/types/schema/role.d.ts +2 -5
  56. package/dist/types/schema/session.d.ts +2 -6
  57. package/dist/types/schema/token.d.ts +2 -11
  58. package/dist/types/schema/user.d.ts +5 -36
  59. package/dist/types/types/action.d.ts +52 -0
  60. package/dist/types/types/agent.d.ts +55 -0
  61. package/dist/types/types/assistant.d.ts +39 -0
  62. package/dist/types/types/balance.d.ts +35 -0
  63. package/dist/types/types/banner.d.ts +34 -0
  64. package/dist/types/types/convo.d.ts +74 -0
  65. package/dist/types/types/file.d.ts +51 -0
  66. package/dist/types/types/index.d.ts +42 -0
  67. package/dist/types/types/memory.d.ts +63 -0
  68. package/dist/types/types/message.d.ts +67 -0
  69. package/dist/types/types/pluginAuth.d.ts +59 -0
  70. package/dist/types/types/role.d.ts +30 -0
  71. package/dist/types/types/session.d.ts +61 -0
  72. package/dist/types/types/share.d.ts +82 -0
  73. package/dist/types/types/token.d.ts +62 -0
  74. package/dist/types/types/user.d.ts +94 -0
  75. package/package.json +14 -5
  76. package/README.md +0 -114
@@ -0,0 +1,63 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import type { Types, Document } from 'mongoose';
27
+ export interface IMemoryEntry extends Document {
28
+ userId: Types.ObjectId;
29
+ key: string;
30
+ value: string;
31
+ tokenCount?: number;
32
+ updated_at?: Date;
33
+ }
34
+ export interface IMemoryEntryLean {
35
+ _id: Types.ObjectId;
36
+ userId: Types.ObjectId;
37
+ key: string;
38
+ value: string;
39
+ tokenCount?: number;
40
+ updated_at?: Date;
41
+ __v?: number;
42
+ }
43
+ export interface SetMemoryParams {
44
+ userId: string | Types.ObjectId;
45
+ key: string;
46
+ value: string;
47
+ tokenCount?: number;
48
+ }
49
+ export interface DeleteMemoryParams {
50
+ userId: string | Types.ObjectId;
51
+ key: string;
52
+ }
53
+ export interface GetFormattedMemoriesParams {
54
+ userId: string | Types.ObjectId;
55
+ }
56
+ export interface MemoryResult {
57
+ ok: boolean;
58
+ }
59
+ export interface FormattedMemoriesResult {
60
+ withKeys: string;
61
+ withoutKeys: string;
62
+ totalTokens?: number;
63
+ }
@@ -0,0 +1,67 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import type { Document } from 'mongoose';
27
+ import type { TFeedbackRating, TFeedbackTag } from 'librechat-data-provider';
28
+ export interface IMessage extends Document {
29
+ messageId: string;
30
+ conversationId: string;
31
+ user: string;
32
+ model?: string;
33
+ endpoint?: string;
34
+ conversationSignature?: string;
35
+ clientId?: string;
36
+ invocationId?: number;
37
+ parentMessageId?: string;
38
+ tokenCount?: number;
39
+ summaryTokenCount?: number;
40
+ sender?: string;
41
+ text?: string;
42
+ summary?: string;
43
+ isCreatedByUser: boolean;
44
+ unfinished?: boolean;
45
+ error?: boolean;
46
+ finish_reason?: string;
47
+ feedback?: {
48
+ rating: TFeedbackRating;
49
+ tag: TFeedbackTag | undefined;
50
+ text?: string;
51
+ };
52
+ _meiliIndex?: boolean;
53
+ files?: unknown[];
54
+ plugin?: {
55
+ latest?: string;
56
+ inputs?: unknown[];
57
+ outputs?: string;
58
+ };
59
+ plugins?: unknown[];
60
+ content?: unknown[];
61
+ thread_id?: string;
62
+ iconURL?: string;
63
+ attachments?: unknown[];
64
+ expiredAt?: Date;
65
+ createdAt?: Date;
66
+ updatedAt?: Date;
67
+ }
@@ -0,0 +1,59 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import type { Document } from 'mongoose';
27
+ export interface IPluginAuth extends Document {
28
+ authField: string;
29
+ value: string;
30
+ userId: string;
31
+ pluginKey?: string;
32
+ createdAt?: Date;
33
+ updatedAt?: Date;
34
+ }
35
+ export interface PluginAuthQuery {
36
+ userId: string;
37
+ authField?: string;
38
+ pluginKey?: string;
39
+ }
40
+ export interface FindPluginAuthParams {
41
+ userId: string;
42
+ authField: string;
43
+ }
44
+ export interface FindPluginAuthsByKeysParams {
45
+ userId: string;
46
+ pluginKeys: string[];
47
+ }
48
+ export interface UpdatePluginAuthParams {
49
+ userId: string;
50
+ authField: string;
51
+ pluginKey: string;
52
+ value: string;
53
+ }
54
+ export interface DeletePluginAuthParams {
55
+ userId: string;
56
+ authField?: string;
57
+ pluginKey?: string;
58
+ all?: boolean;
59
+ }
@@ -0,0 +1,30 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import { Document } from 'mongoose';
27
+ export interface IRole extends Document {
28
+ name: string;
29
+ permissions: {};
30
+ }
@@ -0,0 +1,61 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import type { Document, Types } from 'mongoose';
27
+ export interface ISession extends Document {
28
+ refreshTokenHash: string;
29
+ expiration: Date;
30
+ user: Types.ObjectId;
31
+ }
32
+ export interface CreateSessionOptions {
33
+ expiration?: Date;
34
+ }
35
+ export interface SessionSearchParams {
36
+ refreshToken?: string;
37
+ userId?: string;
38
+ sessionId?: string | {
39
+ sessionId: string;
40
+ };
41
+ }
42
+ export interface SessionQueryOptions {
43
+ lean?: boolean;
44
+ }
45
+ export interface DeleteSessionParams {
46
+ refreshToken?: string;
47
+ sessionId?: string;
48
+ }
49
+ export interface DeleteAllSessionsOptions {
50
+ excludeCurrentSession?: boolean;
51
+ currentSessionId?: string;
52
+ }
53
+ export interface SessionResult {
54
+ session: Partial<ISession>;
55
+ refreshToken: string;
56
+ }
57
+ export interface SignPayloadParams {
58
+ payload: Record<string, unknown>;
59
+ secret?: string;
60
+ expirationTime: number;
61
+ }
@@ -0,0 +1,82 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import type { Types } from 'mongoose';
27
+ import type { IMessage } from './message';
28
+ export interface ISharedLink {
29
+ _id?: Types.ObjectId;
30
+ conversationId: string;
31
+ title?: string;
32
+ user?: string;
33
+ messages?: Types.ObjectId[];
34
+ shareId?: string;
35
+ isPublic: boolean;
36
+ createdAt?: Date;
37
+ updatedAt?: Date;
38
+ }
39
+ export interface ShareServiceError extends Error {
40
+ code: string;
41
+ }
42
+ export interface SharedLinksResult {
43
+ links: Array<{
44
+ shareId: string;
45
+ title: string;
46
+ isPublic: boolean;
47
+ createdAt: Date;
48
+ conversationId: string;
49
+ }>;
50
+ nextCursor?: Date;
51
+ hasNextPage: boolean;
52
+ }
53
+ export interface SharedMessagesResult {
54
+ conversationId: string;
55
+ messages: Array<IMessage>;
56
+ shareId: string;
57
+ title?: string;
58
+ isPublic: boolean;
59
+ createdAt?: Date;
60
+ updatedAt?: Date;
61
+ }
62
+ export interface CreateShareResult {
63
+ shareId: string;
64
+ conversationId: string;
65
+ }
66
+ export interface UpdateShareResult {
67
+ shareId: string;
68
+ conversationId: string;
69
+ }
70
+ export interface DeleteShareResult {
71
+ success: boolean;
72
+ shareId: string;
73
+ message: string;
74
+ }
75
+ export interface GetShareLinkResult {
76
+ shareId: string | null;
77
+ success: boolean;
78
+ }
79
+ export interface DeleteAllSharesResult {
80
+ message: string;
81
+ deletedCount: number;
82
+ }
@@ -0,0 +1,62 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import { Document, Types } from 'mongoose';
27
+ export interface IToken extends Document {
28
+ userId: Types.ObjectId;
29
+ email?: string;
30
+ type?: string;
31
+ identifier?: string;
32
+ token: string;
33
+ createdAt: Date;
34
+ expiresAt: Date;
35
+ metadata?: Map<string, unknown>;
36
+ }
37
+ export interface TokenCreateData {
38
+ userId: Types.ObjectId | string;
39
+ email?: string;
40
+ type?: string;
41
+ identifier?: string;
42
+ token: string;
43
+ expiresIn: number;
44
+ metadata?: Map<string, unknown>;
45
+ }
46
+ export interface TokenQuery {
47
+ userId?: Types.ObjectId | string;
48
+ token?: string;
49
+ email?: string;
50
+ identifier?: string;
51
+ }
52
+ export interface TokenUpdateData {
53
+ email?: string;
54
+ type?: string;
55
+ identifier?: string;
56
+ token?: string;
57
+ expiresAt?: Date;
58
+ metadata?: Map<string, unknown>;
59
+ }
60
+ export interface TokenDeleteResult {
61
+ deletedCount?: number;
62
+ }
@@ -0,0 +1,94 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ /// <reference types="mongoose/types/inferrawdoctype" />
26
+ import { Document, Types } from 'mongoose';
27
+ export interface IUser extends Document {
28
+ name?: string;
29
+ username?: string;
30
+ email: string;
31
+ emailVerified: boolean;
32
+ password?: string;
33
+ avatar?: string;
34
+ provider: string;
35
+ role?: string;
36
+ googleId?: string;
37
+ facebookId?: string;
38
+ openidId?: string;
39
+ samlId?: string;
40
+ ldapId?: string;
41
+ githubId?: string;
42
+ discordId?: string;
43
+ appleId?: string;
44
+ plugins?: unknown[];
45
+ twoFactorEnabled?: boolean;
46
+ totpSecret?: string;
47
+ backupCodes?: Array<{
48
+ codeHash: string;
49
+ used: boolean;
50
+ usedAt?: Date | null;
51
+ }>;
52
+ refreshToken?: Array<{
53
+ refreshToken: string;
54
+ }>;
55
+ expiresAt?: Date;
56
+ termsAccepted?: boolean;
57
+ personalization?: {
58
+ memories?: boolean;
59
+ };
60
+ createdAt?: Date;
61
+ updatedAt?: Date;
62
+ }
63
+ export interface BalanceConfig {
64
+ enabled?: boolean;
65
+ startBalance?: number;
66
+ autoRefillEnabled?: boolean;
67
+ refillIntervalValue?: number;
68
+ refillIntervalUnit?: string;
69
+ refillAmount?: number;
70
+ }
71
+ export interface UserCreateData extends Partial<IUser> {
72
+ email: string;
73
+ }
74
+ export interface UserUpdateResult {
75
+ deletedCount: number;
76
+ message: string;
77
+ }
78
+ export interface UserSearchCriteria {
79
+ email?: string;
80
+ username?: string;
81
+ googleId?: string;
82
+ facebookId?: string;
83
+ openidId?: string;
84
+ samlId?: string;
85
+ ldapId?: string;
86
+ githubId?: string;
87
+ discordId?: string;
88
+ appleId?: string;
89
+ _id?: Types.ObjectId | string;
90
+ }
91
+ export interface UserQueryOptions {
92
+ fieldsToSelect?: string | string[] | null;
93
+ lean?: boolean;
94
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@librechat/data-schemas",
3
- "version": "0.0.7",
3
+ "version": "0.0.10",
4
4
  "description": "Mongoose schemas and models for LibreChat",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -48,8 +48,10 @@
48
48
  "@types/express": "^5.0.0",
49
49
  "@types/jest": "^29.5.2",
50
50
  "@types/node": "^20.3.0",
51
+ "@types/traverse": "^0.6.37",
51
52
  "jest": "^29.5.0",
52
53
  "jest-junit": "^16.0.0",
54
+ "mongodb-memory-server": "^10.1.4",
53
55
  "rimraf": "^5.0.1",
54
56
  "rollup": "^4.22.4",
55
57
  "rollup-plugin-generate-package-json": "^3.2.0",
@@ -58,11 +60,18 @@
58
60
  "ts-node": "^10.9.2",
59
61
  "typescript": "^5.0.4"
60
62
  },
61
- "dependencies": {
62
- "mongoose": "^8.12.1"
63
- },
64
63
  "peerDependencies": {
65
- "keyv": "^5.3.2"
64
+ "jsonwebtoken": "^9.0.2",
65
+ "keyv": "^5.3.2",
66
+ "klona": "^2.0.6",
67
+ "librechat-data-provider": "*",
68
+ "lodash": "^4.17.21",
69
+ "meilisearch": "^0.38.0",
70
+ "mongoose": "^8.12.1",
71
+ "nanoid": "^3.3.7",
72
+ "traverse": "^0.6.11",
73
+ "winston": "^3.17.0",
74
+ "winston-daily-rotate-file": "^5.0.0"
66
75
  },
67
76
  "publishConfig": {
68
77
  "registry": "https://registry.npmjs.org/",