@marcoappio/marco-config 2.0.409 → 2.0.410

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 (38) hide show
  1. package/dist/instantDB/instant.perms.d.ts +140 -0
  2. package/dist/instantDB/instant.perms.d.ts.map +1 -0
  3. package/dist/instantDB/instant.perms.js +139 -0
  4. package/dist/instantDB/instant.schema.d.ts +336 -0
  5. package/dist/instantDB/instant.schema.d.ts.map +1 -0
  6. package/dist/instantDB/instant.schema.js +174 -0
  7. package/dist/schemas/emailAccount.d.ts +1 -1
  8. package/dist/schemas/emailAccount.d.ts.map +1 -1
  9. package/dist/schemas/emailAccount.js +2 -9
  10. package/dist/schemas/index.d.ts +2 -2
  11. package/dist/schemas/labels.d.ts +1 -1
  12. package/dist/schemas/labels.d.ts.map +1 -1
  13. package/dist/schemas/labels.js +2 -1
  14. package/dist/types/DraftRecipientType.d.ts +3 -0
  15. package/dist/types/DraftRecipientType.d.ts.map +1 -0
  16. package/dist/types/DraftRecipientType.js +1 -0
  17. package/dist/types/DraftStatus.d.ts +3 -0
  18. package/dist/types/DraftStatus.d.ts.map +1 -0
  19. package/dist/types/DraftStatus.js +1 -0
  20. package/dist/types/DraftType.d.ts +3 -0
  21. package/dist/types/DraftType.d.ts.map +1 -0
  22. package/dist/types/DraftType.js +1 -0
  23. package/dist/types/ImapConnectionStatus.d.ts +3 -0
  24. package/dist/types/ImapConnectionStatus.d.ts.map +1 -0
  25. package/dist/types/ImapConnectionStatus.js +9 -0
  26. package/dist/types/LabelSpecialUse.d.ts +3 -0
  27. package/dist/types/LabelSpecialUse.d.ts.map +1 -0
  28. package/dist/types/LabelSpecialUse.js +1 -0
  29. package/dist/types/MessageAttachmentStatus.d.ts +3 -0
  30. package/dist/types/MessageAttachmentStatus.d.ts.map +1 -0
  31. package/dist/types/MessageAttachmentStatus.js +6 -0
  32. package/dist/types/MessageRecipientType.d.ts +3 -0
  33. package/dist/types/MessageRecipientType.d.ts.map +1 -0
  34. package/dist/types/MessageRecipientType.js +1 -0
  35. package/dist/types/index.d.ts +7 -0
  36. package/dist/types/index.d.ts.map +1 -1
  37. package/dist/types/index.js +7 -0
  38. package/package.json +2 -1
@@ -0,0 +1,140 @@
1
+ declare const rules: {
2
+ $users: {
3
+ allow: {
4
+ view: string;
5
+ };
6
+ bind: string[];
7
+ };
8
+ accountMailCounts: {
9
+ allow: {
10
+ view: string;
11
+ };
12
+ bind: string[];
13
+ };
14
+ accountSettings: {
15
+ allow: {
16
+ update: string;
17
+ view: string;
18
+ };
19
+ bind: string[];
20
+ };
21
+ accounts: {
22
+ allow: {
23
+ create: string;
24
+ delete: string;
25
+ update: string;
26
+ view: string;
27
+ };
28
+ bind: string[];
29
+ };
30
+ aliases: {
31
+ allow: {
32
+ create: string;
33
+ delete: string;
34
+ update: string;
35
+ view: string;
36
+ };
37
+ bind: string[];
38
+ };
39
+ contacts: {
40
+ allow: {
41
+ view: string;
42
+ };
43
+ bind: string[];
44
+ };
45
+ draftAttachments: {
46
+ allow: {
47
+ create: string;
48
+ delete: string;
49
+ update: string;
50
+ view: string;
51
+ };
52
+ bind: string[];
53
+ };
54
+ draftRecipients: {
55
+ allow: {
56
+ create: string;
57
+ delete: string;
58
+ update: string;
59
+ view: string;
60
+ };
61
+ bind: string[];
62
+ };
63
+ drafts: {
64
+ allow: {
65
+ create: string;
66
+ delete: string;
67
+ update: string;
68
+ view: string;
69
+ };
70
+ bind: string[];
71
+ };
72
+ labels: {
73
+ allow: {
74
+ view: string;
75
+ };
76
+ bind: string[];
77
+ };
78
+ messageAttachments: {
79
+ allow: {
80
+ view: string;
81
+ };
82
+ bind: string[];
83
+ };
84
+ messageLabels: {
85
+ allow: {
86
+ create: string;
87
+ delete: string;
88
+ update: string;
89
+ view: string;
90
+ };
91
+ bind: string[];
92
+ };
93
+ messageRecipients: {
94
+ allow: {
95
+ view: string;
96
+ };
97
+ bind: string[];
98
+ };
99
+ messages: {
100
+ allow: {
101
+ view: string;
102
+ };
103
+ bind: string[];
104
+ };
105
+ threadBagOfWords: {
106
+ allow: {
107
+ view: string;
108
+ };
109
+ bind: string[];
110
+ };
111
+ threads: {
112
+ allow: {
113
+ create: string;
114
+ delete: string;
115
+ update: string;
116
+ view: string;
117
+ };
118
+ bind: string[];
119
+ };
120
+ userPushNotificationToken: {
121
+ allow: {
122
+ create: string;
123
+ delete: string;
124
+ update: string;
125
+ view: string;
126
+ };
127
+ bind: string[];
128
+ };
129
+ userSettings: {
130
+ allow: {
131
+ create: string;
132
+ delete: string;
133
+ update: string;
134
+ view: string;
135
+ };
136
+ bind: string[];
137
+ };
138
+ };
139
+ export default rules;
140
+ //# sourceMappingURL=instant.perms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instant.perms.d.ts","sourceRoot":"","sources":["../../src/instantDB/instant.perms.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyIa,CAAA;AAExB,eAAe,KAAK,CAAA"}
@@ -0,0 +1,139 @@
1
+ const rules = {
2
+ $users: {
3
+ allow: {
4
+ view: 'isOwner',
5
+ },
6
+ bind: ['isOwner', 'data.id == auth.id'],
7
+ },
8
+ accountMailCounts: {
9
+ allow: {
10
+ view: 'isOwner',
11
+ },
12
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
13
+ },
14
+ accountSettings: {
15
+ allow: {
16
+ update: 'isOwner',
17
+ view: 'isOwner',
18
+ },
19
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
20
+ },
21
+ accounts: {
22
+ allow: {
23
+ create: 'isOwner',
24
+ delete: 'isOwner',
25
+ update: 'isOwner',
26
+ view: 'isOwner',
27
+ },
28
+ bind: ['isOwner', 'data.user.id == auth.id'],
29
+ },
30
+ aliases: {
31
+ allow: {
32
+ create: 'isOwner',
33
+ delete: 'isOwner',
34
+ update: 'isOwner',
35
+ view: 'isOwner',
36
+ },
37
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
38
+ },
39
+ contacts: {
40
+ allow: {
41
+ view: 'isOwner',
42
+ },
43
+ bind: ['isOwner', 'data.user.id == auth.id'],
44
+ },
45
+ draftAttachments: {
46
+ allow: {
47
+ create: 'isOwner',
48
+ delete: 'isOwner',
49
+ update: 'isOwner',
50
+ view: 'isOwner',
51
+ },
52
+ bind: ['isOwner', 'data.draft.account.user.id == auth.id'],
53
+ },
54
+ draftRecipients: {
55
+ allow: {
56
+ create: 'isOwner',
57
+ delete: 'isOwner',
58
+ update: 'isOwner',
59
+ view: 'isOwner',
60
+ },
61
+ bind: ['isOwner', 'data.draft.account.user.id == auth.id'],
62
+ },
63
+ drafts: {
64
+ allow: {
65
+ create: 'isOwner',
66
+ delete: 'isOwner',
67
+ update: 'isOwner',
68
+ view: 'isOwner',
69
+ },
70
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
71
+ },
72
+ labels: {
73
+ allow: {
74
+ view: 'isOwner',
75
+ },
76
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
77
+ },
78
+ messageAttachments: {
79
+ allow: {
80
+ view: 'isOwner',
81
+ },
82
+ bind: ['isOwner', 'data.message.thread.account.user.id == auth.id'],
83
+ },
84
+ messageLabels: {
85
+ allow: {
86
+ create: 'isOwner',
87
+ delete: 'isOwner',
88
+ update: 'isOwner',
89
+ view: 'isOwner',
90
+ },
91
+ bind: ['isOwner', 'data.message.thread.account.user.id == auth.id'],
92
+ },
93
+ messageRecipients: {
94
+ allow: {
95
+ view: 'isOwner',
96
+ },
97
+ bind: ['isOwner', 'data.message.thread.account.user.id == auth.id'],
98
+ },
99
+ messages: {
100
+ allow: {
101
+ view: 'isOwner',
102
+ },
103
+ bind: ['isOwner', 'data.thread.account.user.id == auth.id'],
104
+ },
105
+ threadBagOfWords: {
106
+ allow: {
107
+ view: 'isOwner',
108
+ },
109
+ bind: ['isOwner', 'data.thread.account.user.id == auth.id'],
110
+ },
111
+ threads: {
112
+ allow: {
113
+ create: 'isOwner',
114
+ delete: 'isOwner',
115
+ update: 'isOwner',
116
+ view: 'isOwner',
117
+ },
118
+ bind: ['isOwner', 'data.account.user.id == auth.id'],
119
+ },
120
+ userPushNotificationToken: {
121
+ allow: {
122
+ create: 'isOwner',
123
+ delete: 'isOwner',
124
+ update: 'isOwner',
125
+ view: 'isOwner',
126
+ },
127
+ bind: ['isOwner', 'data.userSettings.user.id == auth.id'],
128
+ },
129
+ userSettings: {
130
+ allow: {
131
+ create: 'isOwner',
132
+ delete: 'isOwner',
133
+ update: 'isOwner',
134
+ view: 'isOwner',
135
+ },
136
+ bind: ['isOwner', 'data.user.id == auth.id'],
137
+ },
138
+ };
139
+ export default rules;
@@ -0,0 +1,336 @@
1
+ import type { DraftRecipientType, DraftStatus, DraftType, ImapConnectionStatus, LabelSpecialUse, MessageAttachmentStatus, MessageRecipientType } from '../types';
2
+ declare const schema: import("@instantdb/core").InstantSchemaDef<import("@instantdb/core").EntitiesWithLinks<{
3
+ $users: import("@instantdb/core").EntityDef<{
4
+ email: import("@instantdb/core").DataAttrDef<string, true, true>;
5
+ }, {}, void>;
6
+ accountMailCounts: import("@instantdb/core").EntityDef<{
7
+ processed: import("@instantdb/core").DataAttrDef<number, true, true>;
8
+ total: import("@instantdb/core").DataAttrDef<number, true, true>;
9
+ }, {}, void>;
10
+ accountSettings: import("@instantdb/core").EntityDef<{
11
+ color: import("@instantdb/core").DataAttrDef<string, true, false>;
12
+ name: import("@instantdb/core").DataAttrDef<string, false, false>;
13
+ }, {}, void>;
14
+ accounts: import("@instantdb/core").EntityDef<{
15
+ imapConnectionStatus: import("@instantdb/core").DataAttrDef<string, true, true>;
16
+ }, {}, void>;
17
+ aliases: import("@instantdb/core").EntityDef<{
18
+ emailAddress: import("@instantdb/core").DataAttrDef<string, true, true>;
19
+ isPrimary: import("@instantdb/core").DataAttrDef<boolean, true, true>;
20
+ name: import("@instantdb/core").DataAttrDef<string, false, false>;
21
+ }, {}, void>;
22
+ contacts: import("@instantdb/core").EntityDef<{
23
+ emailAddress: import("@instantdb/core").DataAttrDef<string, true, true>;
24
+ name: import("@instantdb/core").DataAttrDef<string, false, false>;
25
+ }, {}, void>;
26
+ draftAttachments: import("@instantdb/core").EntityDef<{
27
+ failed: import("@instantdb/core").DataAttrDef<boolean, true, false>;
28
+ fileName: import("@instantdb/core").DataAttrDef<string, true, false>;
29
+ mimeType: import("@instantdb/core").DataAttrDef<string, true, false>;
30
+ totalChunks: import("@instantdb/core").DataAttrDef<number, true, false>;
31
+ totalSize: import("@instantdb/core").DataAttrDef<number, true, false>;
32
+ uploadedChunks: import("@instantdb/core").DataAttrDef<number, true, false>;
33
+ }, {}, void>;
34
+ draftRecipients: import("@instantdb/core").EntityDef<{
35
+ emailAddress: import("@instantdb/core").DataAttrDef<string, true, true>;
36
+ recipientType: import("@instantdb/core").DataAttrDef<string, true, true>;
37
+ }, {}, void>;
38
+ drafts: import("@instantdb/core").EntityDef<{
39
+ bodyContent: import("@instantdb/core").DataAttrDef<string, true, false>;
40
+ bodySubject: import("@instantdb/core").DataAttrDef<string, false, false>;
41
+ emailAccountId: import("@instantdb/core").DataAttrDef<string, true, true>;
42
+ error: import("@instantdb/core").DataAttrDef<string, false, false>;
43
+ from: import("@instantdb/core").DataAttrDef<string, true, true>;
44
+ fromName: import("@instantdb/core").DataAttrDef<string, false, false>;
45
+ referencedMessageId: import("@instantdb/core").DataAttrDef<string, false, true>;
46
+ scheduledFor: import("@instantdb/core").DataAttrDef<number, false, true>;
47
+ status: import("@instantdb/core").DataAttrDef<string, true, true>;
48
+ type: import("@instantdb/core").DataAttrDef<string, true, true>;
49
+ updatedAt: import("@instantdb/core").DataAttrDef<number, true, true>;
50
+ }, {}, void>;
51
+ labels: import("@instantdb/core").EntityDef<{
52
+ labelId: import("@instantdb/core").DataAttrDef<string, true, true>;
53
+ path: import("@instantdb/core").DataAttrDef<string, true, true>;
54
+ specialUse: import("@instantdb/core").DataAttrDef<string, false, true>;
55
+ }, {}, void>;
56
+ messageAttachments: import("@instantdb/core").EntityDef<{
57
+ attachmentId: import("@instantdb/core").DataAttrDef<string, true, true>;
58
+ fileName: import("@instantdb/core").DataAttrDef<string, true, false>;
59
+ mimeType: import("@instantdb/core").DataAttrDef<string, true, false>;
60
+ size: import("@instantdb/core").DataAttrDef<number, true, false>;
61
+ status: import("@instantdb/core").DataAttrDef<string, true, true>;
62
+ }, {}, void>;
63
+ messageLabels: import("@instantdb/core").EntityDef<{
64
+ labelId: import("@instantdb/core").DataAttrDef<string, true, true>;
65
+ }, {}, void>;
66
+ messageRecipients: import("@instantdb/core").EntityDef<{
67
+ emailAddress: import("@instantdb/core").DataAttrDef<string, true, true>;
68
+ name: import("@instantdb/core").DataAttrDef<string, false, false>;
69
+ recipientType: import("@instantdb/core").DataAttrDef<string, true, true>;
70
+ }, {}, void>;
71
+ messages: import("@instantdb/core").EntityDef<{
72
+ envelopeDate: import("@instantdb/core").DataAttrDef<number, true, true>;
73
+ envelopeSubject: import("@instantdb/core").DataAttrDef<string, false, false>;
74
+ fromEmailAddress: import("@instantdb/core").DataAttrDef<string, true, true>;
75
+ fromName: import("@instantdb/core").DataAttrDef<string, false, false>;
76
+ messageId: import("@instantdb/core").DataAttrDef<string, true, true>;
77
+ previewText: import("@instantdb/core").DataAttrDef<string, true, false>;
78
+ }, {}, void>;
79
+ threadBagOfWords: import("@instantdb/core").EntityDef<{
80
+ word: import("@instantdb/core").DataAttrDef<string, true, true>;
81
+ }, {}, void>;
82
+ threads: import("@instantdb/core").EntityDef<{
83
+ emailAccountId: import("@instantdb/core").DataAttrDef<string, true, true>;
84
+ flagged: import("@instantdb/core").DataAttrDef<boolean, true, true>;
85
+ labelIds: import("@instantdb/core").DataAttrDef<any, true, false>;
86
+ latestMessageDate: import("@instantdb/core").DataAttrDef<number, true, true>;
87
+ messageIds: import("@instantdb/core").DataAttrDef<any, true, false>;
88
+ participants: import("@instantdb/core").DataAttrDef<any, true, false>;
89
+ seen: import("@instantdb/core").DataAttrDef<boolean, true, true>;
90
+ }, {}, void>;
91
+ userPushNotificationToken: import("@instantdb/core").EntityDef<{
92
+ createdAt: import("@instantdb/core").DataAttrDef<number, true, true>;
93
+ token: import("@instantdb/core").DataAttrDef<string, true, true>;
94
+ }, {}, void>;
95
+ userSettings: import("@instantdb/core").EntityDef<{
96
+ name: import("@instantdb/core").DataAttrDef<string, false, false>;
97
+ profilePicture: import("@instantdb/core").DataAttrDef<string, false, false>;
98
+ undoSendEnabled: import("@instantdb/core").DataAttrDef<boolean, true, false>;
99
+ }, {}, void>;
100
+ }, {
101
+ readonly accountAliases: {
102
+ readonly forward: {
103
+ readonly has: "one";
104
+ readonly label: "account";
105
+ readonly on: "aliases";
106
+ };
107
+ readonly reverse: {
108
+ readonly has: "many";
109
+ readonly label: "aliases";
110
+ readonly on: "accounts";
111
+ };
112
+ };
113
+ readonly accountLabels: {
114
+ readonly forward: {
115
+ readonly has: "one";
116
+ readonly label: "account";
117
+ readonly on: "labels";
118
+ };
119
+ readonly reverse: {
120
+ readonly has: "many";
121
+ readonly label: "labels";
122
+ readonly on: "accounts";
123
+ };
124
+ };
125
+ readonly accountMailCountsLink: {
126
+ readonly forward: {
127
+ readonly has: "one";
128
+ readonly label: "account";
129
+ readonly on: "accountMailCounts";
130
+ };
131
+ readonly reverse: {
132
+ readonly has: "one";
133
+ readonly label: "mailCounts";
134
+ readonly on: "accounts";
135
+ };
136
+ };
137
+ readonly accountSettingsLink: {
138
+ readonly forward: {
139
+ readonly has: "one";
140
+ readonly label: "account";
141
+ readonly on: "accountSettings";
142
+ };
143
+ readonly reverse: {
144
+ readonly has: "one";
145
+ readonly label: "settings";
146
+ readonly on: "accounts";
147
+ };
148
+ };
149
+ readonly draftAccount: {
150
+ readonly forward: {
151
+ readonly has: "one";
152
+ readonly label: "account";
153
+ readonly on: "drafts";
154
+ };
155
+ readonly reverse: {
156
+ readonly has: "many";
157
+ readonly label: "drafts";
158
+ readonly on: "accounts";
159
+ };
160
+ };
161
+ readonly draftAttachmentLinks: {
162
+ readonly forward: {
163
+ readonly has: "one";
164
+ readonly label: "draft";
165
+ readonly on: "draftAttachments";
166
+ };
167
+ readonly reverse: {
168
+ readonly has: "many";
169
+ readonly label: "attachments";
170
+ readonly on: "drafts";
171
+ };
172
+ };
173
+ readonly draftRecipientLinks: {
174
+ readonly forward: {
175
+ readonly has: "one";
176
+ readonly label: "draft";
177
+ readonly on: "draftRecipients";
178
+ };
179
+ readonly reverse: {
180
+ readonly has: "many";
181
+ readonly label: "bodyRecipients";
182
+ readonly on: "drafts";
183
+ };
184
+ };
185
+ readonly messageAttachmentLinks: {
186
+ readonly forward: {
187
+ readonly has: "one";
188
+ readonly label: "message";
189
+ readonly on: "messageAttachments";
190
+ };
191
+ readonly reverse: {
192
+ readonly has: "many";
193
+ readonly label: "attachments";
194
+ readonly on: "messages";
195
+ };
196
+ };
197
+ readonly messageLabelLinks: {
198
+ readonly forward: {
199
+ readonly has: "one";
200
+ readonly label: "message";
201
+ readonly on: "messageLabels";
202
+ };
203
+ readonly reverse: {
204
+ readonly has: "many";
205
+ readonly label: "labelIds";
206
+ readonly on: "messages";
207
+ };
208
+ };
209
+ readonly messageRecipientLinks: {
210
+ readonly forward: {
211
+ readonly has: "one";
212
+ readonly label: "message";
213
+ readonly on: "messageRecipients";
214
+ };
215
+ readonly reverse: {
216
+ readonly has: "many";
217
+ readonly label: "recipients";
218
+ readonly on: "messages";
219
+ };
220
+ };
221
+ readonly threadAccount: {
222
+ readonly forward: {
223
+ readonly has: "one";
224
+ readonly label: "account";
225
+ readonly on: "threads";
226
+ };
227
+ readonly reverse: {
228
+ readonly has: "many";
229
+ readonly label: "threads";
230
+ readonly on: "accounts";
231
+ };
232
+ };
233
+ readonly threadBagOfWordsLinks: {
234
+ readonly forward: {
235
+ readonly has: "one";
236
+ readonly label: "thread";
237
+ readonly on: "threadBagOfWords";
238
+ };
239
+ readonly reverse: {
240
+ readonly has: "many";
241
+ readonly label: "bagOfWords";
242
+ readonly on: "threads";
243
+ };
244
+ };
245
+ readonly threadMessages: {
246
+ readonly forward: {
247
+ readonly has: "one";
248
+ readonly label: "thread";
249
+ readonly on: "messages";
250
+ };
251
+ readonly reverse: {
252
+ readonly has: "many";
253
+ readonly label: "messages";
254
+ readonly on: "threads";
255
+ };
256
+ };
257
+ readonly userAccounts: {
258
+ readonly forward: {
259
+ readonly has: "one";
260
+ readonly label: "user";
261
+ readonly on: "accounts";
262
+ };
263
+ readonly reverse: {
264
+ readonly has: "many";
265
+ readonly label: "accounts";
266
+ readonly on: "$users";
267
+ };
268
+ };
269
+ readonly userContacts: {
270
+ readonly forward: {
271
+ readonly has: "one";
272
+ readonly label: "user";
273
+ readonly on: "contacts";
274
+ };
275
+ readonly reverse: {
276
+ readonly has: "many";
277
+ readonly label: "contacts";
278
+ readonly on: "$users";
279
+ };
280
+ };
281
+ readonly userSettingsLink: {
282
+ readonly forward: {
283
+ readonly has: "one";
284
+ readonly label: "user";
285
+ readonly on: "userSettings";
286
+ };
287
+ readonly reverse: {
288
+ readonly has: "one";
289
+ readonly label: "settings";
290
+ readonly on: "$users";
291
+ };
292
+ };
293
+ readonly userSettingsPushTokens: {
294
+ readonly forward: {
295
+ readonly has: "one";
296
+ readonly label: "userSettings";
297
+ readonly on: "userPushNotificationToken";
298
+ };
299
+ readonly reverse: {
300
+ readonly has: "many";
301
+ readonly label: "pushNotificationTokens";
302
+ readonly on: "userSettings";
303
+ };
304
+ };
305
+ }>, import("@instantdb/core").LinksDef<any>, {}>;
306
+ type BaseAppSchema = typeof schema;
307
+ export type AppSchema = {
308
+ [K in keyof BaseAppSchema]: K extends 'entities' ? {
309
+ accounts: Omit<BaseAppSchema['entities']['accounts'], 'imapConnectionStatus'> & {
310
+ imapConnectionStatus: ImapConnectionStatus;
311
+ };
312
+ draftRecipients: Omit<BaseAppSchema['entities']['draftRecipients'], 'recipientType'> & {
313
+ recipientType: DraftRecipientType;
314
+ };
315
+ drafts: Omit<BaseAppSchema['entities']['drafts'], 'status' | 'type'> & {
316
+ status: DraftStatus;
317
+ type: DraftType;
318
+ };
319
+ labels: Omit<BaseAppSchema['entities']['labels'], 'specialUse'> & {
320
+ specialUse: LabelSpecialUse | null;
321
+ };
322
+ messageAttachments: Omit<BaseAppSchema['entities']['messageAttachments'], 'status'> & {
323
+ status: MessageAttachmentStatus;
324
+ };
325
+ messageRecipients: Omit<BaseAppSchema['entities']['messageRecipients'], 'recipientType'> & {
326
+ recipientType: MessageRecipientType;
327
+ };
328
+ threads: Omit<BaseAppSchema['entities']['threads'], 'labelIds' | 'messageIds' | 'participants'> & {
329
+ labelIds: string[];
330
+ messageIds: string[];
331
+ participants: string[];
332
+ };
333
+ } & Omit<BaseAppSchema['entities'], 'accounts' | 'draftRecipients' | 'drafts' | 'labels' | 'messageAttachments' | 'messageRecipients' | 'threads'> : BaseAppSchema[K];
334
+ };
335
+ export default schema;
336
+ //# sourceMappingURL=instant.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instant.schema.d.ts","sourceRoot":"","sources":["../../src/instantDB/instant.schema.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAE5B,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDA2KV,CAAA;AAEF,KAAK,aAAa,GAAG,OAAO,MAAM,CAAA;AAElC,MAAM,MAAM,SAAS,GAAG;KACrB,CAAC,IAAI,MAAM,aAAa,GAAG,CAAC,SAAS,UAAU,GAC5C;QACE,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC,GAAG;YAC9E,oBAAoB,EAAE,oBAAoB,CAAA;SAC3C,CAAA;QACD,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC,GAAG;YACrF,aAAa,EAAE,kBAAkB,CAAA;SAClC,CAAA;QACD,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG;YACrE,MAAM,EAAE,WAAW,CAAA;YACnB,IAAI,EAAE,SAAS,CAAA;SAChB,CAAA;QACD,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,GAAG;YAChE,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;SACnC,CAAA;QACD,kBAAkB,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,GAAG;YACpF,MAAM,EAAE,uBAAuB,CAAA;SAChC,CAAA;QACD,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,mBAAmB,CAAC,EAAE,eAAe,CAAC,GAAG;YACzF,aAAa,EAAE,oBAAoB,CAAA;SACpC,CAAA;QACD,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,cAAc,CAAC,GAAG;YAChG,QAAQ,EAAE,MAAM,EAAE,CAAA;YAClB,UAAU,EAAE,MAAM,EAAE,CAAA;YACpB,YAAY,EAAE,MAAM,EAAE,CAAA;SACvB,CAAA;KACF,GAAG,IAAI,CACN,aAAa,CAAC,UAAU,CAAC,EACzB,UAAU,GAAG,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,SAAS,CAC9G,GACD,aAAa,CAAC,CAAC,CAAC;CACrB,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,174 @@
1
+ import { i } from '@instantdb/admin';
2
+ const schema = i.schema({
3
+ entities: {
4
+ $users: i.entity({
5
+ email: i.string().unique().indexed(),
6
+ }),
7
+ accountMailCounts: i.entity({
8
+ processed: i.number().indexed(),
9
+ total: i.number().indexed(),
10
+ }),
11
+ accountSettings: i.entity({
12
+ color: i.string(),
13
+ name: i.string().optional(),
14
+ }),
15
+ accounts: i.entity({
16
+ imapConnectionStatus: i.string().indexed(),
17
+ }),
18
+ aliases: i.entity({
19
+ emailAddress: i.string().indexed(),
20
+ isPrimary: i.boolean().indexed(),
21
+ name: i.string().optional(),
22
+ }),
23
+ contacts: i.entity({
24
+ emailAddress: i.string().indexed(),
25
+ name: i.string().optional(),
26
+ }),
27
+ draftAttachments: i.entity({
28
+ failed: i.boolean(),
29
+ fileName: i.string(),
30
+ mimeType: i.string(),
31
+ totalChunks: i.number(),
32
+ totalSize: i.number(),
33
+ uploadedChunks: i.number(),
34
+ }),
35
+ draftRecipients: i.entity({
36
+ emailAddress: i.string().indexed(),
37
+ recipientType: i.string().indexed(),
38
+ }),
39
+ drafts: i.entity({
40
+ bodyContent: i.string(),
41
+ bodySubject: i.string().optional(),
42
+ emailAccountId: i.string().indexed(),
43
+ error: i.string().optional(),
44
+ from: i.string().indexed(),
45
+ fromName: i.string().optional(),
46
+ referencedMessageId: i.string().indexed().optional(),
47
+ scheduledFor: i.number().indexed().optional(),
48
+ status: i.string().indexed(),
49
+ type: i.string().indexed(),
50
+ updatedAt: i.number().indexed(),
51
+ }),
52
+ labels: i.entity({
53
+ labelId: i.string().indexed(),
54
+ path: i.string().indexed(),
55
+ specialUse: i.string().indexed().optional(),
56
+ }),
57
+ messageAttachments: i.entity({
58
+ attachmentId: i.string().indexed(),
59
+ fileName: i.string(),
60
+ mimeType: i.string(),
61
+ size: i.number(),
62
+ status: i.string().indexed(),
63
+ }),
64
+ messageLabels: i.entity({
65
+ labelId: i.string().indexed(),
66
+ }),
67
+ messageRecipients: i.entity({
68
+ emailAddress: i.string().indexed(),
69
+ name: i.string().optional(),
70
+ recipientType: i.string().indexed(),
71
+ }),
72
+ messages: i.entity({
73
+ envelopeDate: i.number().indexed(),
74
+ envelopeSubject: i.string().optional(),
75
+ fromEmailAddress: i.string().indexed(),
76
+ fromName: i.string().optional(),
77
+ messageId: i.string().indexed(),
78
+ previewText: i.string(),
79
+ }),
80
+ threadBagOfWords: i.entity({
81
+ word: i.string().indexed(),
82
+ }),
83
+ threads: i.entity({
84
+ emailAccountId: i.string().indexed(),
85
+ flagged: i.boolean().indexed(),
86
+ labelIds: i.json(),
87
+ latestMessageDate: i.number().indexed(),
88
+ messageIds: i.json(),
89
+ participants: i.json(),
90
+ seen: i.boolean().indexed(),
91
+ }),
92
+ userPushNotificationToken: i.entity({
93
+ createdAt: i.number().indexed(),
94
+ token: i.string().unique().indexed(),
95
+ }),
96
+ userSettings: i.entity({
97
+ name: i.string().optional(),
98
+ profilePicture: i.string().optional(),
99
+ undoSendEnabled: i.boolean(),
100
+ }),
101
+ },
102
+ links: {
103
+ accountAliases: {
104
+ forward: { has: 'one', label: 'account', on: 'aliases' },
105
+ reverse: { has: 'many', label: 'aliases', on: 'accounts' },
106
+ },
107
+ accountLabels: {
108
+ forward: { has: 'one', label: 'account', on: 'labels' },
109
+ reverse: { has: 'many', label: 'labels', on: 'accounts' },
110
+ },
111
+ accountMailCountsLink: {
112
+ forward: { has: 'one', label: 'account', on: 'accountMailCounts' },
113
+ reverse: { has: 'one', label: 'mailCounts', on: 'accounts' },
114
+ },
115
+ accountSettingsLink: {
116
+ forward: { has: 'one', label: 'account', on: 'accountSettings' },
117
+ reverse: { has: 'one', label: 'settings', on: 'accounts' },
118
+ },
119
+ draftAccount: {
120
+ forward: { has: 'one', label: 'account', on: 'drafts' },
121
+ reverse: { has: 'many', label: 'drafts', on: 'accounts' },
122
+ },
123
+ draftAttachmentLinks: {
124
+ forward: { has: 'one', label: 'draft', on: 'draftAttachments' },
125
+ reverse: { has: 'many', label: 'attachments', on: 'drafts' },
126
+ },
127
+ draftRecipientLinks: {
128
+ forward: { has: 'one', label: 'draft', on: 'draftRecipients' },
129
+ reverse: { has: 'many', label: 'bodyRecipients', on: 'drafts' },
130
+ },
131
+ messageAttachmentLinks: {
132
+ forward: { has: 'one', label: 'message', on: 'messageAttachments' },
133
+ reverse: { has: 'many', label: 'attachments', on: 'messages' },
134
+ },
135
+ messageLabelLinks: {
136
+ forward: { has: 'one', label: 'message', on: 'messageLabels' },
137
+ reverse: { has: 'many', label: 'labelIds', on: 'messages' },
138
+ },
139
+ messageRecipientLinks: {
140
+ forward: { has: 'one', label: 'message', on: 'messageRecipients' },
141
+ reverse: { has: 'many', label: 'recipients', on: 'messages' },
142
+ },
143
+ threadAccount: {
144
+ forward: { has: 'one', label: 'account', on: 'threads' },
145
+ reverse: { has: 'many', label: 'threads', on: 'accounts' },
146
+ },
147
+ threadBagOfWordsLinks: {
148
+ forward: { has: 'one', label: 'thread', on: 'threadBagOfWords' },
149
+ reverse: { has: 'many', label: 'bagOfWords', on: 'threads' },
150
+ },
151
+ threadMessages: {
152
+ forward: { has: 'one', label: 'thread', on: 'messages' },
153
+ reverse: { has: 'many', label: 'messages', on: 'threads' },
154
+ },
155
+ userAccounts: {
156
+ forward: { has: 'one', label: 'user', on: 'accounts' },
157
+ reverse: { has: 'many', label: 'accounts', on: '$users' },
158
+ },
159
+ userContacts: {
160
+ forward: { has: 'one', label: 'user', on: 'contacts' },
161
+ reverse: { has: 'many', label: 'contacts', on: '$users' },
162
+ },
163
+ userSettingsLink: {
164
+ forward: { has: 'one', label: 'user', on: 'userSettings' },
165
+ reverse: { has: 'one', label: 'settings', on: '$users' },
166
+ },
167
+ userSettingsPushTokens: {
168
+ forward: { has: 'one', label: 'userSettings', on: 'userPushNotificationToken' },
169
+ reverse: { has: 'many', label: 'pushNotificationTokens', on: 'userSettings' },
170
+ },
171
+ },
172
+ rooms: {},
173
+ });
174
+ export default schema;
@@ -17,6 +17,6 @@ export declare const emailAccount: {
17
17
  readonly provider: v.UnionSchema<[v.LiteralSchema<"GOOGLE", undefined>, v.LiteralSchema<"OUTLOOK", undefined>], undefined>;
18
18
  readonly user: v.NonOptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>, v.MaxLengthAction<string, number, undefined>]>, undefined>;
19
19
  }, undefined>;
20
- imapConnectionStatus: () => v.UnionSchema<[v.LiteralSchema<"AWAITING_CONNECTION", undefined>, v.LiteralSchema<"CONNECTED", undefined>, v.LiteralSchema<"CONNECTION_FAILED_AUTHENTICATION_ERROR", undefined>, v.LiteralSchema<"CONNECTION_FAILED_CONNECTION_ERROR", undefined>, v.LiteralSchema<"CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR", undefined>, v.LiteralSchema<"CONNECTION_FAILED_QUOTA_ERROR", undefined>, v.LiteralSchema<"CONNECTION_FAILED_UNKNOWN_ERROR", undefined>], undefined>;
20
+ imapConnectionStatus: () => v.PicklistSchema<readonly ["AWAITING_CONNECTION", "CONNECTED", "CONNECTION_FAILED_AUTHENTICATION_ERROR", "CONNECTION_FAILED_CONNECTION_ERROR", "CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR", "CONNECTION_FAILED_QUOTA_ERROR", "CONNECTION_FAILED_UNKNOWN_ERROR"], undefined>;
21
21
  };
22
22
  //# sourceMappingURL=emailAccount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emailAccount.d.ts","sourceRoot":"","sources":["../../src/schemas/emailAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAQ5B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;CA8BxB,CAAA"}
1
+ {"version":3,"file":"emailAccount.d.ts","sourceRoot":"","sources":["../../src/schemas/emailAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAU5B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;CAqBxB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import * as v from 'valibot';
2
+ import { IMAP_CONNECTION_STATUSES } from '../types';
2
3
  import { number } from './number';
3
4
  import { oauth } from './oauth';
4
5
  import { string } from './string';
@@ -21,13 +22,5 @@ export const emailAccount = {
21
22
  provider: oauth.provider(),
22
23
  user: string.required(),
23
24
  }),
24
- imapConnectionStatus: () => v.union([
25
- v.literal('AWAITING_CONNECTION'),
26
- v.literal('CONNECTED'),
27
- v.literal('CONNECTION_FAILED_AUTHENTICATION_ERROR'),
28
- v.literal('CONNECTION_FAILED_CONNECTION_ERROR'),
29
- v.literal('CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR'),
30
- v.literal('CONNECTION_FAILED_QUOTA_ERROR'),
31
- v.literal('CONNECTION_FAILED_UNKNOWN_ERROR'),
32
- ]),
25
+ imapConnectionStatus: () => v.picklist(IMAP_CONNECTION_STATUSES),
33
26
  };
@@ -46,10 +46,10 @@ export declare const marcoSchemas: {
46
46
  readonly provider: import("valibot").UnionSchema<[import("valibot").LiteralSchema<"GOOGLE", undefined>, import("valibot").LiteralSchema<"OUTLOOK", undefined>], undefined>;
47
47
  readonly user: import("valibot").NonOptionalSchema<import("valibot").SchemaWithPipe<readonly [import("valibot").StringSchema<undefined>, import("valibot").NonEmptyAction<string, undefined>, import("valibot").MaxLengthAction<string, number, undefined>]>, undefined>;
48
48
  }, undefined>;
49
- imapConnectionStatus: () => import("valibot").UnionSchema<[import("valibot").LiteralSchema<"AWAITING_CONNECTION", undefined>, import("valibot").LiteralSchema<"CONNECTED", undefined>, import("valibot").LiteralSchema<"CONNECTION_FAILED_AUTHENTICATION_ERROR", undefined>, import("valibot").LiteralSchema<"CONNECTION_FAILED_CONNECTION_ERROR", undefined>, import("valibot").LiteralSchema<"CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR", undefined>, import("valibot").LiteralSchema<"CONNECTION_FAILED_QUOTA_ERROR", undefined>, import("valibot").LiteralSchema<"CONNECTION_FAILED_UNKNOWN_ERROR", undefined>], undefined>;
49
+ imapConnectionStatus: () => import("valibot").PicklistSchema<readonly ["AWAITING_CONNECTION", "CONNECTED", "CONNECTION_FAILED_AUTHENTICATION_ERROR", "CONNECTION_FAILED_CONNECTION_ERROR", "CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR", "CONNECTION_FAILED_QUOTA_ERROR", "CONNECTION_FAILED_UNKNOWN_ERROR"], undefined>;
50
50
  };
51
51
  labels: {
52
- specialUse: () => import("valibot").UnionSchema<[import("valibot").LiteralSchema<"ARCHIVE", undefined>, import("valibot").LiteralSchema<"INBOX", undefined>, import("valibot").LiteralSchema<"SENT", undefined>, import("valibot").LiteralSchema<"SPAM", undefined>, import("valibot").LiteralSchema<"TRASH", undefined>], undefined>;
52
+ specialUse: () => import("valibot").PicklistSchema<readonly ["ARCHIVE", "INBOX", "SENT", "SPAM", "TRASH"], undefined>;
53
53
  };
54
54
  number: {
55
55
  minMax: (min: number, max: number) => import("valibot").NonOptionalSchema<import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").MinValueAction<number, number, undefined>, import("valibot").MaxValueAction<number, number, undefined>]>, undefined>;
@@ -1,5 +1,5 @@
1
1
  import * as v from 'valibot';
2
2
  export declare const labels: {
3
- specialUse: () => v.UnionSchema<[v.LiteralSchema<"ARCHIVE", undefined>, v.LiteralSchema<"INBOX", undefined>, v.LiteralSchema<"SENT", undefined>, v.LiteralSchema<"SPAM", undefined>, v.LiteralSchema<"TRASH", undefined>], undefined>;
3
+ specialUse: () => v.PicklistSchema<readonly ["ARCHIVE", "INBOX", "SENT", "SPAM", "TRASH"], undefined>;
4
4
  };
5
5
  //# sourceMappingURL=labels.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/schemas/labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,eAAO,MAAM,MAAM;;CAGlB,CAAA"}
1
+ {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/schemas/labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,MAAM;;CAElB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import * as v from 'valibot';
2
+ import { LABEL_SPECIAL_USES } from '../types';
2
3
  export const labels = {
3
- specialUse: () => v.union([v.literal('ARCHIVE'), v.literal('INBOX'), v.literal('SENT'), v.literal('SPAM'), v.literal('TRASH')]),
4
+ specialUse: () => v.picklist(LABEL_SPECIAL_USES),
4
5
  };
@@ -0,0 +1,3 @@
1
+ export declare const DRAFT_RECIPIENT_TYPES: readonly ["bcc", "cc", "to"];
2
+ export type DraftRecipientType = (typeof DRAFT_RECIPIENT_TYPES)[number];
3
+ //# sourceMappingURL=DraftRecipientType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DraftRecipientType.d.ts","sourceRoot":"","sources":["../../src/types/DraftRecipientType.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,8BAA+B,CAAA;AAEjE,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export const DRAFT_RECIPIENT_TYPES = ['bcc', 'cc', 'to'];
@@ -0,0 +1,3 @@
1
+ export declare const DRAFT_STATUSES: readonly ["DRAFT", "SEND_REQUESTED", "SEND_CONFIRMED", "SEND_FAILED"];
2
+ export type DraftStatus = (typeof DRAFT_STATUSES)[number];
3
+ //# sourceMappingURL=DraftStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DraftStatus.d.ts","sourceRoot":"","sources":["../../src/types/DraftStatus.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,uEAAwE,CAAA;AAEnG,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export const DRAFT_STATUSES = ['DRAFT', 'SEND_REQUESTED', 'SEND_CONFIRMED', 'SEND_FAILED'];
@@ -0,0 +1,3 @@
1
+ export declare const DRAFT_TYPES: readonly ["NEW", "REPLY", "FORWARD"];
2
+ export type DraftType = (typeof DRAFT_TYPES)[number];
3
+ //# sourceMappingURL=DraftType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DraftType.d.ts","sourceRoot":"","sources":["../../src/types/DraftType.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,sCAAuC,CAAA;AAE/D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export const DRAFT_TYPES = ['NEW', 'REPLY', 'FORWARD'];
@@ -0,0 +1,3 @@
1
+ export declare const IMAP_CONNECTION_STATUSES: readonly ["AWAITING_CONNECTION", "CONNECTED", "CONNECTION_FAILED_AUTHENTICATION_ERROR", "CONNECTION_FAILED_CONNECTION_ERROR", "CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR", "CONNECTION_FAILED_QUOTA_ERROR", "CONNECTION_FAILED_UNKNOWN_ERROR"];
2
+ export type ImapConnectionStatus = (typeof IMAP_CONNECTION_STATUSES)[number];
3
+ //# sourceMappingURL=ImapConnectionStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImapConnectionStatus.d.ts","sourceRoot":"","sources":["../../src/types/ImapConnectionStatus.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,6OAQ3B,CAAA;AAEV,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ export const IMAP_CONNECTION_STATUSES = [
2
+ 'AWAITING_CONNECTION',
3
+ 'CONNECTED',
4
+ 'CONNECTION_FAILED_AUTHENTICATION_ERROR',
5
+ 'CONNECTION_FAILED_CONNECTION_ERROR',
6
+ 'CONNECTION_FAILED_OAUTH_EXCHANGE_ERROR',
7
+ 'CONNECTION_FAILED_QUOTA_ERROR',
8
+ 'CONNECTION_FAILED_UNKNOWN_ERROR',
9
+ ];
@@ -0,0 +1,3 @@
1
+ export declare const LABEL_SPECIAL_USES: readonly ["ARCHIVE", "INBOX", "SENT", "SPAM", "TRASH"];
2
+ export type LabelSpecialUse = (typeof LABEL_SPECIAL_USES)[number];
3
+ //# sourceMappingURL=LabelSpecialUse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LabelSpecialUse.d.ts","sourceRoot":"","sources":["../../src/types/LabelSpecialUse.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,wDAAyD,CAAA;AAExF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export const LABEL_SPECIAL_USES = ['ARCHIVE', 'INBOX', 'SENT', 'SPAM', 'TRASH'];
@@ -0,0 +1,3 @@
1
+ export declare const MESSAGE_ATTACHMENT_STATUSES: readonly ["NOT_DOWNLOADED", "DOWNLOAD_REQUESTED", "DOWNLOADED", "DOWNLOAD_FAILED"];
2
+ export type MessageAttachmentStatus = (typeof MESSAGE_ATTACHMENT_STATUSES)[number];
3
+ //# sourceMappingURL=MessageAttachmentStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageAttachmentStatus.d.ts","sourceRoot":"","sources":["../../src/types/MessageAttachmentStatus.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,oFAK9B,CAAA;AAEV,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ export const MESSAGE_ATTACHMENT_STATUSES = [
2
+ 'NOT_DOWNLOADED',
3
+ 'DOWNLOAD_REQUESTED',
4
+ 'DOWNLOADED',
5
+ 'DOWNLOAD_FAILED',
6
+ ];
@@ -0,0 +1,3 @@
1
+ export declare const MESSAGE_RECIPIENT_TYPES: readonly ["bcc", "cc", "to", "replyTo"];
2
+ export type MessageRecipientType = (typeof MESSAGE_RECIPIENT_TYPES)[number];
3
+ //# sourceMappingURL=MessageRecipientType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageRecipientType.d.ts","sourceRoot":"","sources":["../../src/types/MessageRecipientType.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,yCAA0C,CAAA;AAE9E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export const MESSAGE_RECIPIENT_TYPES = ['bcc', 'cc', 'to', 'replyTo'];
@@ -1,3 +1,10 @@
1
+ export * from './DraftRecipientType';
2
+ export * from './DraftStatus';
3
+ export * from './DraftType';
1
4
  export * from './EmailProvider';
2
5
  export * from './Endpoint';
6
+ export * from './ImapConnectionStatus';
7
+ export * from './LabelSpecialUse';
8
+ export * from './MessageAttachmentStatus';
9
+ export * from './MessageRecipientType';
3
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA;AAC1B,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA"}
@@ -1,2 +1,9 @@
1
+ export * from './DraftRecipientType';
2
+ export * from './DraftStatus';
3
+ export * from './DraftType';
1
4
  export * from './EmailProvider';
2
5
  export * from './Endpoint';
6
+ export * from './ImapConnectionStatus';
7
+ export * from './LabelSpecialUse';
8
+ export * from './MessageAttachmentStatus';
9
+ export * from './MessageRecipientType';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marcoappio/marco-config",
3
- "version": "2.0.409",
3
+ "version": "2.0.410",
4
4
  "author": "team@marcoapp.io",
5
5
  "main": "dist/index.js",
6
6
  "repository": "git@github.com:marcoappio/marco-config.git",
@@ -31,6 +31,7 @@
31
31
  "devDependencies": {
32
32
  "@auto-it/npm": "11.2.0",
33
33
  "@biomejs/biome": "2.3.0",
34
+ "@instantdb/admin": "0.22.41",
34
35
  "@types/bun": "1.3.0",
35
36
  "auto": "11.2.0",
36
37
  "tsc-alias": "1.8.16",