@multiplayer-app/ai-agent-mongo 0.1.0-beta.1 → 0.1.0-beta.3

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 (178) hide show
  1. package/dist/cjs/__tests__/helpers.d.ts.map +1 -0
  2. package/dist/cjs/__tests__/helpers.js +82 -0
  3. package/dist/cjs/__tests__/helpers.js.map +1 -0
  4. package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.d.ts.map +1 -0
  5. package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.js +251 -0
  6. package/dist/cjs/__tests__/repositories/MongoAgentChatRepository.test.js.map +1 -0
  7. package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.d.ts.map +1 -0
  8. package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.js +313 -0
  9. package/dist/cjs/__tests__/repositories/MongoAgentMessageRepository.test.js.map +1 -0
  10. package/dist/cjs/__tests__/schemas/AgentChatSchema.test.d.ts.map +1 -0
  11. package/dist/cjs/__tests__/schemas/AgentChatSchema.test.js +122 -0
  12. package/dist/cjs/__tests__/schemas/AgentChatSchema.test.js.map +1 -0
  13. package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.d.ts.map +1 -0
  14. package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.js +295 -0
  15. package/dist/cjs/__tests__/schemas/AgentMessageSchema.test.js.map +1 -0
  16. package/dist/{__tests__ → cjs/__tests__}/setup.d.ts.map +1 -1
  17. package/dist/cjs/__tests__/setup.js +30 -0
  18. package/dist/cjs/__tests__/setup.js.map +1 -0
  19. package/dist/cjs/index.d.ts +10 -0
  20. package/dist/cjs/index.d.ts.map +1 -0
  21. package/dist/cjs/index.js +25 -0
  22. package/dist/cjs/index.js.map +1 -0
  23. package/dist/cjs/mongo/config.d.ts.map +1 -0
  24. package/dist/cjs/mongo/config.js +13 -0
  25. package/dist/cjs/mongo/config.js.map +1 -0
  26. package/dist/cjs/mongo/encryption.d.ts.map +1 -0
  27. package/dist/cjs/mongo/encryption.js +149 -0
  28. package/dist/cjs/mongo/encryption.js.map +1 -0
  29. package/dist/{mongo → cjs/mongo}/index.d.ts +2 -2
  30. package/dist/cjs/mongo/index.d.ts.map +1 -0
  31. package/dist/cjs/mongo/index.js +112 -0
  32. package/dist/cjs/mongo/index.js.map +1 -0
  33. package/dist/cjs/mongo/logger.d.ts.map +1 -0
  34. package/dist/cjs/mongo/logger.js +40 -0
  35. package/dist/cjs/mongo/logger.js.map +1 -0
  36. package/dist/cjs/repositories/MongoAgentChatRepository.d.ts.map +1 -0
  37. package/dist/cjs/repositories/MongoAgentChatRepository.js +239 -0
  38. package/dist/cjs/repositories/MongoAgentChatRepository.js.map +1 -0
  39. package/dist/cjs/repositories/MongoAgentMessageRepository.d.ts.map +1 -0
  40. package/dist/cjs/repositories/MongoAgentMessageRepository.js +144 -0
  41. package/dist/cjs/repositories/MongoAgentMessageRepository.js.map +1 -0
  42. package/dist/cjs/repositories/index.d.ts +3 -0
  43. package/dist/cjs/repositories/index.d.ts.map +1 -0
  44. package/dist/cjs/repositories/index.js +19 -0
  45. package/dist/cjs/repositories/index.js.map +1 -0
  46. package/dist/{schemas → cjs/schemas}/AgentChatSchema.d.ts +1 -1
  47. package/dist/cjs/schemas/AgentChatSchema.d.ts.map +1 -0
  48. package/dist/cjs/schemas/AgentChatSchema.js +29 -0
  49. package/dist/cjs/schemas/AgentChatSchema.js.map +1 -0
  50. package/dist/{schemas → cjs/schemas}/AgentMessageSchema.d.ts +1 -1
  51. package/dist/cjs/schemas/AgentMessageSchema.d.ts.map +1 -0
  52. package/dist/cjs/schemas/AgentMessageSchema.js +57 -0
  53. package/dist/cjs/schemas/AgentMessageSchema.js.map +1 -0
  54. package/dist/cjs/schemas/index.d.ts +3 -0
  55. package/dist/cjs/schemas/index.d.ts.map +1 -0
  56. package/dist/cjs/schemas/index.js +19 -0
  57. package/dist/cjs/schemas/index.js.map +1 -0
  58. package/dist/esm/__tests__/helpers.d.ts +22 -0
  59. package/dist/esm/__tests__/helpers.d.ts.map +1 -0
  60. package/dist/{__tests__ → esm/__tests__}/helpers.js +1 -1
  61. package/dist/esm/__tests__/helpers.js.map +1 -0
  62. package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.d.ts +2 -0
  63. package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.d.ts.map +1 -0
  64. package/dist/{__tests__ → esm/__tests__}/repositories/MongoAgentChatRepository.test.js +2 -2
  65. package/dist/esm/__tests__/repositories/MongoAgentChatRepository.test.js.map +1 -0
  66. package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.d.ts +2 -0
  67. package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.d.ts.map +1 -0
  68. package/dist/{__tests__ → esm/__tests__}/repositories/MongoAgentMessageRepository.test.js +3 -3
  69. package/dist/esm/__tests__/repositories/MongoAgentMessageRepository.test.js.map +1 -0
  70. package/dist/esm/__tests__/schemas/AgentChatSchema.test.d.ts +2 -0
  71. package/dist/esm/__tests__/schemas/AgentChatSchema.test.d.ts.map +1 -0
  72. package/dist/{__tests__ → esm/__tests__}/schemas/AgentChatSchema.test.js +1 -1
  73. package/dist/esm/__tests__/schemas/AgentChatSchema.test.js.map +1 -0
  74. package/dist/esm/__tests__/schemas/AgentMessageSchema.test.d.ts +2 -0
  75. package/dist/esm/__tests__/schemas/AgentMessageSchema.test.d.ts.map +1 -0
  76. package/dist/{__tests__ → esm/__tests__}/schemas/AgentMessageSchema.test.js +2 -2
  77. package/dist/esm/__tests__/schemas/AgentMessageSchema.test.js.map +1 -0
  78. package/dist/esm/__tests__/setup.d.ts +2 -0
  79. package/dist/esm/__tests__/setup.d.ts.map +1 -0
  80. package/dist/esm/__tests__/setup.js.map +1 -0
  81. package/dist/esm/index.d.ts +10 -0
  82. package/dist/esm/index.d.ts.map +1 -0
  83. package/dist/esm/index.js +11 -0
  84. package/dist/esm/index.js.map +1 -0
  85. package/dist/esm/mongo/config.d.ts +10 -0
  86. package/dist/esm/mongo/config.d.ts.map +1 -0
  87. package/dist/esm/mongo/config.js.map +1 -0
  88. package/dist/esm/mongo/encryption.d.ts +66 -0
  89. package/dist/esm/mongo/encryption.d.ts.map +1 -0
  90. package/dist/{mongo → esm/mongo}/encryption.js +2 -2
  91. package/dist/esm/mongo/encryption.js.map +1 -0
  92. package/dist/esm/mongo/index.d.ts +25 -0
  93. package/dist/esm/mongo/index.d.ts.map +1 -0
  94. package/dist/{mongo → esm/mongo}/index.js +3 -3
  95. package/dist/esm/mongo/index.js.map +1 -0
  96. package/dist/esm/mongo/logger.d.ts +31 -0
  97. package/dist/esm/mongo/logger.d.ts.map +1 -0
  98. package/dist/esm/mongo/logger.js.map +1 -0
  99. package/dist/esm/repositories/MongoAgentChatRepository.d.ts +37 -0
  100. package/dist/esm/repositories/MongoAgentChatRepository.d.ts.map +1 -0
  101. package/dist/{repositories → esm/repositories}/MongoAgentChatRepository.js +3 -3
  102. package/dist/esm/repositories/MongoAgentChatRepository.js.map +1 -0
  103. package/dist/esm/repositories/MongoAgentMessageRepository.d.ts +24 -0
  104. package/dist/esm/repositories/MongoAgentMessageRepository.d.ts.map +1 -0
  105. package/dist/{repositories → esm/repositories}/MongoAgentMessageRepository.js +1 -1
  106. package/dist/esm/repositories/MongoAgentMessageRepository.js.map +1 -0
  107. package/dist/esm/repositories/index.d.ts +3 -0
  108. package/dist/esm/repositories/index.d.ts.map +1 -0
  109. package/dist/esm/repositories/index.js +3 -0
  110. package/dist/esm/repositories/index.js.map +1 -0
  111. package/dist/esm/schemas/AgentChatSchema.d.ts +29 -0
  112. package/dist/esm/schemas/AgentChatSchema.d.ts.map +1 -0
  113. package/dist/{schemas → esm/schemas}/AgentChatSchema.js +1 -1
  114. package/dist/esm/schemas/AgentChatSchema.js.map +1 -0
  115. package/dist/esm/schemas/AgentMessageSchema.d.ts +30 -0
  116. package/dist/esm/schemas/AgentMessageSchema.d.ts.map +1 -0
  117. package/dist/{schemas → esm/schemas}/AgentMessageSchema.js +1 -1
  118. package/dist/esm/schemas/AgentMessageSchema.js.map +1 -0
  119. package/dist/esm/schemas/index.d.ts +3 -0
  120. package/dist/esm/schemas/index.d.ts.map +1 -0
  121. package/dist/esm/schemas/index.js +3 -0
  122. package/dist/esm/schemas/index.js.map +1 -0
  123. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  124. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  125. package/package.json +15 -6
  126. package/dist/__tests__/helpers.d.ts.map +0 -1
  127. package/dist/__tests__/helpers.js.map +0 -1
  128. package/dist/__tests__/repositories/MongoAgentChatRepository.test.d.ts.map +0 -1
  129. package/dist/__tests__/repositories/MongoAgentChatRepository.test.js.map +0 -1
  130. package/dist/__tests__/repositories/MongoAgentMessageRepository.test.d.ts.map +0 -1
  131. package/dist/__tests__/repositories/MongoAgentMessageRepository.test.js.map +0 -1
  132. package/dist/__tests__/schemas/AgentChatSchema.test.d.ts.map +0 -1
  133. package/dist/__tests__/schemas/AgentChatSchema.test.js.map +0 -1
  134. package/dist/__tests__/schemas/AgentMessageSchema.test.d.ts.map +0 -1
  135. package/dist/__tests__/schemas/AgentMessageSchema.test.js.map +0 -1
  136. package/dist/__tests__/setup.js.map +0 -1
  137. package/dist/index.d.ts +0 -9
  138. package/dist/index.d.ts.map +0 -1
  139. package/dist/index.js +0 -9
  140. package/dist/index.js.map +0 -1
  141. package/dist/mongo/config.d.ts.map +0 -1
  142. package/dist/mongo/config.js.map +0 -1
  143. package/dist/mongo/encryption.d.ts.map +0 -1
  144. package/dist/mongo/encryption.js.map +0 -1
  145. package/dist/mongo/index.d.ts.map +0 -1
  146. package/dist/mongo/index.js.map +0 -1
  147. package/dist/mongo/logger.d.ts.map +0 -1
  148. package/dist/mongo/logger.js.map +0 -1
  149. package/dist/repositories/MongoAgentChatRepository.d.ts.map +0 -1
  150. package/dist/repositories/MongoAgentChatRepository.js.map +0 -1
  151. package/dist/repositories/MongoAgentMessageRepository.d.ts.map +0 -1
  152. package/dist/repositories/MongoAgentMessageRepository.js.map +0 -1
  153. package/dist/repositories/index.d.ts +0 -3
  154. package/dist/repositories/index.d.ts.map +0 -1
  155. package/dist/repositories/index.js +0 -3
  156. package/dist/repositories/index.js.map +0 -1
  157. package/dist/schemas/AgentChatSchema.d.ts.map +0 -1
  158. package/dist/schemas/AgentChatSchema.js.map +0 -1
  159. package/dist/schemas/AgentMessageSchema.d.ts.map +0 -1
  160. package/dist/schemas/AgentMessageSchema.js.map +0 -1
  161. package/dist/schemas/index.d.ts +0 -3
  162. package/dist/schemas/index.d.ts.map +0 -1
  163. package/dist/schemas/index.js +0 -3
  164. package/dist/schemas/index.js.map +0 -1
  165. /package/dist/{__tests__ → cjs/__tests__}/helpers.d.ts +0 -0
  166. /package/dist/{__tests__ → cjs/__tests__}/repositories/MongoAgentChatRepository.test.d.ts +0 -0
  167. /package/dist/{__tests__ → cjs/__tests__}/repositories/MongoAgentMessageRepository.test.d.ts +0 -0
  168. /package/dist/{__tests__ → cjs/__tests__}/schemas/AgentChatSchema.test.d.ts +0 -0
  169. /package/dist/{__tests__ → cjs/__tests__}/schemas/AgentMessageSchema.test.d.ts +0 -0
  170. /package/dist/{__tests__ → cjs/__tests__}/setup.d.ts +0 -0
  171. /package/dist/{mongo → cjs/mongo}/config.d.ts +0 -0
  172. /package/dist/{mongo → cjs/mongo}/encryption.d.ts +0 -0
  173. /package/dist/{mongo → cjs/mongo}/logger.d.ts +0 -0
  174. /package/dist/{repositories → cjs/repositories}/MongoAgentChatRepository.d.ts +0 -0
  175. /package/dist/{repositories → cjs/repositories}/MongoAgentMessageRepository.d.ts +0 -0
  176. /package/dist/{__tests__ → esm/__tests__}/setup.js +0 -0
  177. /package/dist/{mongo → esm/mongo}/config.js +0 -0
  178. /package/dist/{mongo → esm/mongo}/logger.js +0 -0
@@ -0,0 +1,295 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const AgentMessageSchema_js_1 = require("../../schemas/AgentMessageSchema.js");
5
+ const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
6
+ const index_js_1 = require("../../mongo/index.js");
7
+ (0, vitest_1.describe)('AgentMessageSchema', () => {
8
+ const testChatId = new index_js_1.ObjectId().toString();
9
+ (0, vitest_1.describe)('validation', () => {
10
+ (0, vitest_1.it)('should create a valid message document', async () => {
11
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
12
+ chat: testChatId,
13
+ role: ai_agent_types_1.MessageRole.User,
14
+ content: 'Hello, world!',
15
+ });
16
+ const error = message.validateSync();
17
+ (0, vitest_1.expect)(error).toBeUndefined();
18
+ });
19
+ (0, vitest_1.it)('should require chat field', async () => {
20
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
21
+ role: ai_agent_types_1.MessageRole.User,
22
+ content: 'Hello',
23
+ });
24
+ const error = message.validateSync();
25
+ (0, vitest_1.expect)(error).toBeDefined();
26
+ (0, vitest_1.expect)(error === null || error === void 0 ? void 0 : error.errors.chat).toBeDefined();
27
+ });
28
+ (0, vitest_1.it)('should require role field', async () => {
29
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
30
+ chat: testChatId,
31
+ content: 'Hello',
32
+ });
33
+ const error = message.validateSync();
34
+ (0, vitest_1.expect)(error).toBeDefined();
35
+ (0, vitest_1.expect)(error === null || error === void 0 ? void 0 : error.errors.role).toBeDefined();
36
+ });
37
+ (0, vitest_1.it)('should require content field', async () => {
38
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
39
+ chat: testChatId,
40
+ role: ai_agent_types_1.MessageRole.User,
41
+ });
42
+ const error = message.validateSync();
43
+ (0, vitest_1.expect)(error).toBeDefined();
44
+ (0, vitest_1.expect)(error === null || error === void 0 ? void 0 : error.errors.content).toBeDefined();
45
+ });
46
+ (0, vitest_1.it)('should validate role enum values', async () => {
47
+ const validRoles = Object.values(ai_agent_types_1.MessageRole);
48
+ for (const role of validRoles) {
49
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
50
+ chat: testChatId,
51
+ role: role,
52
+ content: 'Test',
53
+ });
54
+ const error = message.validateSync();
55
+ (0, vitest_1.expect)(error).toBeUndefined();
56
+ }
57
+ });
58
+ (0, vitest_1.it)('should reject invalid role values', async () => {
59
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
60
+ chat: testChatId,
61
+ role: 'invalid-role',
62
+ content: 'Test',
63
+ });
64
+ const error = message.validateSync();
65
+ (0, vitest_1.expect)(error).toBeDefined();
66
+ (0, vitest_1.expect)(error === null || error === void 0 ? void 0 : error.errors.role).toBeDefined();
67
+ });
68
+ (0, vitest_1.it)('should allow optional toolCalls array', async () => {
69
+ var _a;
70
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
71
+ chat: testChatId,
72
+ role: ai_agent_types_1.MessageRole.Assistant,
73
+ content: 'I will use a tool',
74
+ toolCalls: [
75
+ {
76
+ name: 'test_tool',
77
+ input: { query: 'test' },
78
+ status: ai_agent_types_1.AgentToolCallStatus.Pending,
79
+ requiresConfirmation: false,
80
+ },
81
+ ],
82
+ });
83
+ const error = message.validateSync();
84
+ (0, vitest_1.expect)(error).toBeUndefined();
85
+ (0, vitest_1.expect)(message.toolCalls).toHaveLength(1);
86
+ (0, vitest_1.expect)((_a = message.toolCalls) === null || _a === void 0 ? void 0 : _a[0].name).toBe('test_tool');
87
+ });
88
+ (0, vitest_1.it)('should validate toolCall status enum', async () => {
89
+ const validStatuses = Object.values(ai_agent_types_1.AgentToolCallStatus);
90
+ for (const status of validStatuses) {
91
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
92
+ chat: testChatId,
93
+ role: ai_agent_types_1.MessageRole.Assistant,
94
+ content: 'Test',
95
+ toolCalls: [
96
+ {
97
+ name: 'test_tool',
98
+ input: {},
99
+ status: status,
100
+ requiresConfirmation: false,
101
+ },
102
+ ],
103
+ });
104
+ const error = message.validateSync();
105
+ (0, vitest_1.expect)(error).toBeUndefined();
106
+ }
107
+ });
108
+ (0, vitest_1.it)('should allow optional attachments array', async () => {
109
+ var _a;
110
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
111
+ chat: testChatId,
112
+ role: ai_agent_types_1.MessageRole.User,
113
+ content: 'Check this file',
114
+ attachments: [
115
+ {
116
+ id: 'attachment-1',
117
+ type: ai_agent_types_1.AgentAttachmentType.File,
118
+ name: 'test.txt',
119
+ url: 'https://example.com/test.txt',
120
+ mimeType: 'text/plain',
121
+ },
122
+ ],
123
+ });
124
+ const error = message.validateSync();
125
+ (0, vitest_1.expect)(error).toBeUndefined();
126
+ (0, vitest_1.expect)(message.attachments).toHaveLength(1);
127
+ (0, vitest_1.expect)((_a = message.attachments) === null || _a === void 0 ? void 0 : _a[0].type).toBe(ai_agent_types_1.AgentAttachmentType.File);
128
+ });
129
+ (0, vitest_1.it)('should validate attachment type enum', async () => {
130
+ const validTypes = Object.values(ai_agent_types_1.AgentAttachmentType);
131
+ for (const type of validTypes) {
132
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
133
+ chat: testChatId,
134
+ role: ai_agent_types_1.MessageRole.User,
135
+ content: 'Test',
136
+ attachments: [
137
+ {
138
+ id: 'attachment-1',
139
+ type: type,
140
+ name: 'test',
141
+ },
142
+ ],
143
+ });
144
+ const error = message.validateSync();
145
+ (0, vitest_1.expect)(error).toBeUndefined();
146
+ }
147
+ });
148
+ (0, vitest_1.it)('should allow optional annotations field', async () => {
149
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
150
+ chat: testChatId,
151
+ role: ai_agent_types_1.MessageRole.User,
152
+ content: 'Test',
153
+ annotations: { key: 'value', count: 42 },
154
+ });
155
+ const error = message.validateSync();
156
+ (0, vitest_1.expect)(error).toBeUndefined();
157
+ (0, vitest_1.expect)(message.annotations).toEqual({ key: 'value', count: 42 });
158
+ });
159
+ (0, vitest_1.it)('should automatically add timestamps', async () => {
160
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
161
+ chat: testChatId,
162
+ role: ai_agent_types_1.MessageRole.User,
163
+ content: 'Test',
164
+ });
165
+ const error = message.validateSync();
166
+ (0, vitest_1.expect)(error).toBeUndefined();
167
+ // Timestamps are added by mongoose when saving, but schema should allow them
168
+ (0, vitest_1.expect)(message.schema.paths.createdAt).toBeDefined();
169
+ (0, vitest_1.expect)(message.schema.paths.updatedAt).toBeDefined();
170
+ });
171
+ (0, vitest_1.it)('should allow empty toolCalls array', async () => {
172
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
173
+ chat: testChatId,
174
+ role: ai_agent_types_1.MessageRole.User,
175
+ content: 'Test',
176
+ toolCalls: [],
177
+ });
178
+ const error = message.validateSync();
179
+ (0, vitest_1.expect)(error).toBeUndefined();
180
+ (0, vitest_1.expect)(message.toolCalls).toEqual([]);
181
+ });
182
+ (0, vitest_1.it)('should allow empty attachments array', async () => {
183
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
184
+ chat: testChatId,
185
+ role: ai_agent_types_1.MessageRole.User,
186
+ content: 'Test',
187
+ attachments: [],
188
+ });
189
+ const error = message.validateSync();
190
+ (0, vitest_1.expect)(error).toBeUndefined();
191
+ (0, vitest_1.expect)(message.attachments).toEqual([]);
192
+ });
193
+ (0, vitest_1.it)('should validate toolCall required fields', async () => {
194
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
195
+ chat: testChatId,
196
+ role: ai_agent_types_1.MessageRole.Assistant,
197
+ content: 'Test',
198
+ toolCalls: [
199
+ {
200
+ // Missing required fields
201
+ },
202
+ ],
203
+ });
204
+ const error = message.validateSync();
205
+ (0, vitest_1.expect)(error).toBeDefined();
206
+ });
207
+ (0, vitest_1.it)('should validate attachment required fields', async () => {
208
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
209
+ chat: testChatId,
210
+ role: ai_agent_types_1.MessageRole.User,
211
+ content: 'Test',
212
+ attachments: [
213
+ {
214
+ // Missing required fields
215
+ },
216
+ ],
217
+ });
218
+ const error = message.validateSync();
219
+ (0, vitest_1.expect)(error).toBeDefined();
220
+ });
221
+ });
222
+ (0, vitest_1.describe)('indexes', () => {
223
+ (0, vitest_1.it)('should have index on chat field', async () => {
224
+ const indexes = AgentMessageSchema_js_1.AgentMessageModel.schema.indexes();
225
+ const chatIndex = indexes.find((idx) => idx[0] && typeof idx[0] === 'object' && 'chat' in idx[0]);
226
+ (0, vitest_1.expect)(chatIndex).toBeDefined();
227
+ });
228
+ });
229
+ (0, vitest_1.describe)('toolCall subdocument', () => {
230
+ (0, vitest_1.it)('should store toolCall output', async () => {
231
+ var _a;
232
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
233
+ chat: testChatId,
234
+ role: ai_agent_types_1.MessageRole.Assistant,
235
+ content: 'Test',
236
+ toolCalls: [
237
+ {
238
+ name: 'test_tool',
239
+ input: { query: 'test' },
240
+ status: ai_agent_types_1.AgentToolCallStatus.Succeeded,
241
+ output: { result: 'success' },
242
+ requiresConfirmation: false,
243
+ },
244
+ ],
245
+ });
246
+ const error = message.validateSync();
247
+ (0, vitest_1.expect)(error).toBeUndefined();
248
+ (0, vitest_1.expect)((_a = message.toolCalls) === null || _a === void 0 ? void 0 : _a[0].output).toEqual({ result: 'success' });
249
+ });
250
+ (0, vitest_1.it)('should store toolCall error', async () => {
251
+ var _a;
252
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
253
+ chat: testChatId,
254
+ role: ai_agent_types_1.MessageRole.Assistant,
255
+ content: 'Test',
256
+ toolCalls: [
257
+ {
258
+ name: 'test_tool',
259
+ input: { query: 'test' },
260
+ status: ai_agent_types_1.AgentToolCallStatus.Failed,
261
+ error: 'Tool execution failed',
262
+ requiresConfirmation: false,
263
+ },
264
+ ],
265
+ });
266
+ const error = message.validateSync();
267
+ (0, vitest_1.expect)(error).toBeUndefined();
268
+ (0, vitest_1.expect)((_a = message.toolCalls) === null || _a === void 0 ? void 0 : _a[0].error).toBe('Tool execution failed');
269
+ });
270
+ });
271
+ (0, vitest_1.describe)('attachment subdocument', () => {
272
+ (0, vitest_1.it)('should store attachment metadata', async () => {
273
+ var _a;
274
+ const message = new AgentMessageSchema_js_1.AgentMessageModel({
275
+ chat: testChatId,
276
+ role: ai_agent_types_1.MessageRole.User,
277
+ content: 'Test',
278
+ attachments: [
279
+ {
280
+ id: 'attachment-1',
281
+ type: ai_agent_types_1.AgentAttachmentType.File,
282
+ name: 'test.txt',
283
+ url: 'https://example.com/test.txt',
284
+ mimeType: 'text/plain',
285
+ metadata: { size: 1024, uploaded: true },
286
+ },
287
+ ],
288
+ });
289
+ const error = message.validateSync();
290
+ (0, vitest_1.expect)(error).toBeUndefined();
291
+ (0, vitest_1.expect)((_a = message.attachments) === null || _a === void 0 ? void 0 : _a[0].metadata).toEqual({ size: 1024, uploaded: true });
292
+ });
293
+ });
294
+ });
295
+ //# sourceMappingURL=AgentMessageSchema.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentMessageSchema.test.js","sourceRoot":"","sources":["../../../../src/__tests__/schemas/AgentMessageSchema.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/__tests__/setup.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/__tests__/setup.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const mongodb_memory_server_1 = require("mongodb-memory-server");
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ const vitest_1 = require("vitest");
9
+ let mongoServer;
10
+ (0, vitest_1.beforeAll)(async () => {
11
+ // Start in-memory MongoDB instance
12
+ mongoServer = await mongodb_memory_server_1.MongoMemoryServer.create();
13
+ const mongoUri = mongoServer.getUri();
14
+ // Set the MongoDB URI for the tests
15
+ process.env.MONGODB_URI = mongoUri;
16
+ process.env.MONGODB_ENCRYPTION_MASTER_KEY_PROVIDER = 'local';
17
+ // Connect mongoose to the in-memory database
18
+ await mongoose_1.default.connect(mongoUri);
19
+ });
20
+ (0, vitest_1.afterAll)(async () => {
21
+ // Clean up
22
+ if (mongoose_1.default.connection.readyState !== 0) {
23
+ await mongoose_1.default.connection.dropDatabase();
24
+ await mongoose_1.default.connection.close();
25
+ }
26
+ if (mongoServer) {
27
+ await mongoServer.stop();
28
+ }
29
+ });
30
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/__tests__/setup.ts"],"names":[],"mappings":";;;;;AAAA,iEAA0D;AAC1D,wDAAgC;AAChC,mCAA6C;AAE7C,IAAI,WAA8B,CAAC;AAEnC,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;IACnB,mCAAmC;IACnC,WAAW,GAAG,MAAM,yCAAiB,CAAC,MAAM,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IAEtC,oCAAoC;IACpC,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,QAAQ,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,sCAAsC,GAAG,OAAO,CAAC;IAE7D,6CAA6C;IAC7C,MAAM,kBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,KAAK,IAAI,EAAE;IAClB,WAAW;IACX,IAAI,kBAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,kBAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,kBAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * MongoDB implementations of abstract repositories and Mongoose schemas
3
+ * for Multiplayer AI agent services
4
+ */
5
+ export type { AgentChatDocument, AgentMessageDocument } from './schemas/index.js';
6
+ export { AgentChatSchema, AgentChatModel, AgentMessageSchema, AgentMessageModel } from './schemas/index.js';
7
+ export { MongoAgentChatRepository, MongoAgentMessageRepository } from './repositories/index.js';
8
+ export { default as mongo } from './mongo/index.js';
9
+ export { setLogger, type MongoLogger } from './mongo/logger.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * MongoDB implementations of abstract repositories and Mongoose schemas
4
+ * for Multiplayer AI agent services
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.setLogger = exports.mongo = exports.MongoAgentMessageRepository = exports.MongoAgentChatRepository = exports.AgentMessageModel = exports.AgentMessageSchema = exports.AgentChatModel = exports.AgentChatSchema = void 0;
11
+ var index_js_1 = require("./schemas/index.js");
12
+ Object.defineProperty(exports, "AgentChatSchema", { enumerable: true, get: function () { return index_js_1.AgentChatSchema; } });
13
+ Object.defineProperty(exports, "AgentChatModel", { enumerable: true, get: function () { return index_js_1.AgentChatModel; } });
14
+ Object.defineProperty(exports, "AgentMessageSchema", { enumerable: true, get: function () { return index_js_1.AgentMessageSchema; } });
15
+ Object.defineProperty(exports, "AgentMessageModel", { enumerable: true, get: function () { return index_js_1.AgentMessageModel; } });
16
+ // Repositories
17
+ var index_js_2 = require("./repositories/index.js");
18
+ Object.defineProperty(exports, "MongoAgentChatRepository", { enumerable: true, get: function () { return index_js_2.MongoAgentChatRepository; } });
19
+ Object.defineProperty(exports, "MongoAgentMessageRepository", { enumerable: true, get: function () { return index_js_2.MongoAgentMessageRepository; } });
20
+ // Mongo
21
+ var index_js_3 = require("./mongo/index.js");
22
+ Object.defineProperty(exports, "mongo", { enumerable: true, get: function () { return __importDefault(index_js_3).default; } });
23
+ var logger_js_1 = require("./mongo/logger.js");
24
+ Object.defineProperty(exports, "setLogger", { enumerable: true, get: function () { return logger_js_1.setLogger; } });
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAOH,+CAK4B;AAJ1B,2GAAA,eAAe,OAAA;AACf,0GAAA,cAAc,OAAA;AACd,8GAAA,kBAAkB,OAAA;AAClB,6GAAA,iBAAiB,OAAA;AAGnB,eAAe;AACf,oDAGiC;AAF/B,oHAAA,wBAAwB,OAAA;AACxB,uHAAA,2BAA2B,OAAA;AAG7B,QAAQ;AACR,6CAAoD;AAA3C,kHAAA,OAAO,OAAS;AACzB,+CAAgE;AAAvD,sGAAA,SAAS,OAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/mongo/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,QAAkE,CAAA;AAC1F,eAAO,MAAM,WAAW,SAAkD,CAAA;AAE1E,eAAO,MAAM,eAAe,QAAoD,CAAA;AAChF,eAAO,MAAM,oCAAoC,QAAmE,CAAA;AACpH,eAAO,MAAM,4CAA4C,QAA2E,CAAA;AACpI,eAAO,MAAM,2BAA2B,QAAwD,CAAA;AAChG,eAAO,MAAM,sCAAsC,QAAgE,CAAA;AAEnH,eAAO,MAAM,eAAe,oBAA8B,CAAA;AAC1D,eAAO,MAAM,UAAU,oBAAyB,CAAA"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AWS_REGION = exports.AWS_KMS_KEY_ARN = exports.MONGODB_ENCRYPTION_MASTER_KEY_PROVIDER = exports.MONGODB_ENCRYPTION_DEK_NAME = exports.MONGODB_ENCRYPTION_KEY_VAULT_COLLECTION_NAME = exports.MONGODB_ENCRYPTION_KEY_VAULT_DB_NAME = exports.MONGODB_DB_NAME = exports.MONGO_DEBUG = exports.MONGODB_URI = void 0;
4
+ exports.MONGODB_URI = process.env.MONGODB_URI || 'mongodb://localhost:27017/ai-agent';
5
+ exports.MONGO_DEBUG = (process.env.MONGO_DEBUG || 'false') === 'true';
6
+ exports.MONGODB_DB_NAME = exports.MONGODB_URI.split('/').slice(-1)[0].split('?')[0];
7
+ exports.MONGODB_ENCRYPTION_KEY_VAULT_DB_NAME = process.env.MONGODB_ENCRYPTION_KEY_VAULT_DB_NAME || 'encryption';
8
+ exports.MONGODB_ENCRYPTION_KEY_VAULT_COLLECTION_NAME = process.env.MONGODB_ENCRYPTION_KEY_VAULT_COLLECTION_NAME || '__keyVault';
9
+ exports.MONGODB_ENCRYPTION_DEK_NAME = process.env.MONGODB_ENCRYPTION_DEK_NAME || 'data-key';
10
+ exports.MONGODB_ENCRYPTION_MASTER_KEY_PROVIDER = process.env.MONGODB_ENCRYPTION_MASTER_KEY_PROVIDER || 'local';
11
+ exports.AWS_KMS_KEY_ARN = process.env.AWS_KMS_KEY_ARN;
12
+ exports.AWS_REGION = process.env.AWS_REGION;
13
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/mongo/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,oCAAoC,CAAA;AAC7E,QAAA,WAAW,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,KAAK,MAAM,CAAA;AAE7D,QAAA,eAAe,GAAG,mBAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACnE,QAAA,oCAAoC,GAAG,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,YAAY,CAAA;AACvG,QAAA,4CAA4C,GAAG,OAAO,CAAC,GAAG,CAAC,4CAA4C,IAAI,YAAY,CAAA;AACvH,QAAA,2BAA2B,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,UAAU,CAAA;AACnF,QAAA,sCAAsC,GAAG,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,OAAO,CAAA;AAEtG,QAAA,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAA;AAC7C,QAAA,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../../src/mongo/encryption.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,OAAO,GAAI,SAAI,mCAM3B,CAAA;AAED,eAAO,MAAM,OAAO,GAAI,SAAI,iBAAmC,CAAA;AAE/D,eAAO,MAAM,YAAY,EAAE,GAAQ,CAAA;AAuBnC,eAAO,MAAM,iBAAiB,QAA4F,CAAA;AAM1H,eAAO,MAAM,OAAO,wBAsBnB,CAAA;AAED,eAAO,MAAM,UAAU,qBAItB,CAAA;AAED,eAAO,MAAM,QAAQ,oBA4BpB,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,oBAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DrD,CAAA"}
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEncryptionSchemaMap = exports.getKeyId = exports.disconnect = exports.connect = exports.keyVaultNamespace = exports.kmsProviders = exports.decrypt = exports.encrypt = void 0;
4
+ const mongodb_1 = require("mongodb");
5
+ const logger_js_1 = require("./logger.js");
6
+ const config_js_1 = require("./config.js");
7
+ const logger = (0, logger_js_1.getLogger)();
8
+ let dataKeyId;
9
+ const MONGODB_URI_MASKED = config_js_1.MONGODB_URI === null || config_js_1.MONGODB_URI === void 0 ? void 0 : config_js_1.MONGODB_URI.replace(/:\/\/(.*):(.*)@/, '://***:***@');
10
+ const encryptionAlgorythm = 'AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic';
11
+ const encrypt = (data) => clientEncryption.encrypt(data, {
12
+ algorithm: encryptionAlgorythm,
13
+ keyId: dataKeyId,
14
+ });
15
+ exports.encrypt = encrypt;
16
+ const decrypt = (data) => clientEncryption.decrypt(data);
17
+ exports.decrypt = decrypt;
18
+ exports.kmsProviders = {};
19
+ let keyProvider;
20
+ let masterKey;
21
+ if (config_js_1.MONGODB_ENCRYPTION_MASTER_KEY_PROVIDER === 'local') {
22
+ keyProvider = 'local';
23
+ const arr = [];
24
+ for (let i = 0; i < 96; ++i) {
25
+ arr.push(i);
26
+ }
27
+ const key = Buffer.from(arr);
28
+ exports.kmsProviders.local = { key };
29
+ }
30
+ else {
31
+ exports.kmsProviders.aws = {};
32
+ keyProvider = 'aws';
33
+ masterKey = {
34
+ key: config_js_1.AWS_KMS_KEY_ARN,
35
+ region: config_js_1.AWS_REGION,
36
+ };
37
+ }
38
+ exports.keyVaultNamespace = `${config_js_1.MONGODB_ENCRYPTION_KEY_VAULT_DB_NAME}.${config_js_1.MONGODB_ENCRYPTION_KEY_VAULT_COLLECTION_NAME}`;
39
+ let unencryptedClient;
40
+ let clientEncryption;
41
+ const connect = async () => {
42
+ if (!unencryptedClient) {
43
+ unencryptedClient = await new mongodb_1.MongoClient(config_js_1.MONGODB_URI).connect();
44
+ unencryptedClient.on('connectionReady', () => {
45
+ logger.info(`[MONGO] Unencrypted Client Connected to ${MONGODB_URI_MASKED}`);
46
+ });
47
+ unencryptedClient.on('connectionClosed', () => {
48
+ logger.info(`[MONGO] Unencrypted Client disconnected from ${MONGODB_URI_MASKED}`);
49
+ });
50
+ clientEncryption = new mongodb_1.ClientEncryption(unencryptedClient, {
51
+ kmsProviders: exports.kmsProviders,
52
+ keyVaultNamespace: exports.keyVaultNamespace,
53
+ });
54
+ }
55
+ return true;
56
+ };
57
+ exports.connect = connect;
58
+ const disconnect = async () => {
59
+ if (unencryptedClient) {
60
+ await unencryptedClient.close();
61
+ }
62
+ };
63
+ exports.disconnect = disconnect;
64
+ const getKeyId = async () => {
65
+ logger.info(`[MONGO] Using key provider: ${keyProvider}`);
66
+ dataKeyId = await unencryptedClient
67
+ .db(config_js_1.MONGODB_ENCRYPTION_KEY_VAULT_DB_NAME)
68
+ .collection(config_js_1.MONGODB_ENCRYPTION_KEY_VAULT_COLLECTION_NAME)
69
+ .findOne({
70
+ keyAltNames: config_js_1.MONGODB_ENCRYPTION_DEK_NAME,
71
+ 'masterKey.provider': keyProvider,
72
+ });
73
+ if (dataKeyId === null) {
74
+ logger.info('[MONGO] Creating new DEK');
75
+ dataKeyId = await clientEncryption
76
+ .createDataKey(keyProvider, {
77
+ keyAltNames: [config_js_1.MONGODB_ENCRYPTION_DEK_NAME],
78
+ masterKey,
79
+ });
80
+ }
81
+ else {
82
+ logger.info('[MONGO] Found existing DEK');
83
+ dataKeyId = dataKeyId._id;
84
+ }
85
+ return dataKeyId;
86
+ };
87
+ exports.getKeyId = getKeyId;
88
+ const getEncryptionSchemaMap = (encryptionKeyId) => {
89
+ const schemaMap = {
90
+ [`${config_js_1.MONGODB_DB_NAME}.integrations`]: {
91
+ bsonType: 'object',
92
+ properties: {
93
+ metadata: {
94
+ bsonType: 'object',
95
+ properties: {
96
+ accessToken: {
97
+ encrypt: {
98
+ bsonType: 'string',
99
+ keyId: [encryptionKeyId],
100
+ algorithm: encryptionAlgorythm,
101
+ },
102
+ },
103
+ refreshToken: {
104
+ encrypt: {
105
+ bsonType: 'string',
106
+ keyId: [encryptionKeyId],
107
+ algorithm: encryptionAlgorythm,
108
+ },
109
+ },
110
+ apiKey: {
111
+ encrypt: {
112
+ bsonType: 'string',
113
+ keyId: [encryptionKeyId],
114
+ algorithm: encryptionAlgorythm,
115
+ },
116
+ },
117
+ },
118
+ },
119
+ },
120
+ },
121
+ [`${config_js_1.MONGODB_DB_NAME}.workspace-users`]: {
122
+ bsonType: 'object',
123
+ properties: {
124
+ googleWorkspaceToken: {
125
+ bsonType: 'object',
126
+ properties: {
127
+ access_token: {
128
+ encrypt: {
129
+ bsonType: 'string',
130
+ keyId: [encryptionKeyId],
131
+ algorithm: encryptionAlgorythm,
132
+ },
133
+ },
134
+ refresh_token: {
135
+ encrypt: {
136
+ bsonType: 'string',
137
+ keyId: [encryptionKeyId],
138
+ algorithm: encryptionAlgorythm,
139
+ },
140
+ },
141
+ },
142
+ },
143
+ },
144
+ },
145
+ };
146
+ return schemaMap;
147
+ };
148
+ exports.getEncryptionSchemaMap = getEncryptionSchemaMap;
149
+ //# sourceMappingURL=encryption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../../src/mongo/encryption.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import Mongoose from 'mongoose';
2
- import * as _Config from './config';
3
- import * as _encryption from './encryption';
2
+ import * as _Config from './config.js';
3
+ import * as _encryption from './encryption.js';
4
4
  export declare const encryption: typeof _encryption;
5
5
  export declare const mongoose: typeof Mongoose;
6
6
  export declare const ObjectId: typeof Mongoose.Types.ObjectId;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mongo/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAA4B,MAAM,UAAU,CAAA;AAEnD,OAAO,KAAK,OAAO,MAAM,aAAa,CAAA;AACtC,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAA;AAI9C,eAAO,MAAM,UAAU,oBAAc,CAAA;AAIrC,eAAO,MAAM,QAAQ,iBAAW,CAAA;AAEhC,eAAO,MAAM,QAAQ,gCAA0B,CAAA;AAE/C,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;AAE9C,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAA;AAElC,eAAO,MAAM,MAAM,wBAAkB,CAAA;AAErC,eAAO,MAAM,KAAK,2CAAiB,CAAA;AAEnC,eAAO,MAAM,MAAM,gBAAU,CAAA;AAmD7B,eAAO,MAAM,SAAS,eAA6C,CAAA;;;;;;;;;;;AAUnE,wBASC"}