@vestcards/server-types 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/apps/server/src/app.d.ts +402 -22
  2. package/dist/apps/server/src/config/env.d.ts +3 -2
  3. package/dist/apps/server/src/modules/auth/index.d.ts +35 -4
  4. package/dist/apps/server/src/modules/auth/lib.d.ts +18 -7
  5. package/dist/apps/server/src/modules/auth/permissions/completed-profile.d.ts +1 -0
  6. package/dist/apps/server/src/modules/auth/permissions/entitlements.d.ts +1 -1
  7. package/dist/apps/server/src/modules/auth/permissions/permissions.d.ts +2 -66
  8. package/dist/apps/server/src/modules/card/index.d.ts +71 -5
  9. package/dist/apps/server/src/modules/card/model.d.ts +4 -0
  10. package/dist/apps/server/src/modules/card/service.d.ts +2 -0
  11. package/dist/apps/server/src/modules/deck/index.d.ts +41 -9
  12. package/dist/apps/server/src/modules/deck/model.d.ts +5 -3
  13. package/dist/apps/server/src/modules/library/index.d.ts +55 -5
  14. package/dist/apps/server/src/modules/library/service.d.ts +4 -0
  15. package/dist/apps/server/src/modules/study/index.d.ts +87 -8
  16. package/dist/apps/server/src/modules/study/lib/fsrs.d.ts +1 -1
  17. package/dist/apps/server/src/modules/study/model.d.ts +7 -1
  18. package/dist/apps/server/src/modules/study/service.d.ts +22 -1
  19. package/dist/apps/server/src/modules/topic/index.d.ts +38 -7
  20. package/dist/apps/server/src/modules/user/index.d.ts +108 -5
  21. package/dist/apps/server/src/modules/user/model.d.ts +8 -0
  22. package/dist/apps/server/src/modules/user/service.d.ts +15 -0
  23. package/dist/apps/server/src/tests/helpers/auth-helpers.d.ts +1 -1
  24. package/dist/apps/server/src/tests/helpers/fixtures.d.ts +33 -2
  25. package/dist/apps/server/src/utils/select.d.ts +1 -1
  26. package/dist/packages/db-core/src/db.d.ts +4 -0
  27. package/dist/packages/db-core/src/index.d.ts +4 -0
  28. package/dist/{apps/server/src/db → packages/db-core/src}/schema/auth.d.ts +26 -9
  29. package/dist/packages/db-core/src/schema/blog.d.ts +219 -0
  30. package/dist/{apps/server/src/db → packages/db-core/src}/schema/entity.d.ts +2 -2
  31. package/dist/{apps/server/src/db → packages/db-core/src}/schema/index.d.ts +3 -0
  32. package/dist/packages/db-core/src/schema/organization.d.ts +158 -0
  33. package/dist/{apps/server/src/db → packages/db-core/src}/schema/payment.d.ts +18 -1
  34. package/dist/packages/db-core/src/schema/studyPlan.d.ts +511 -0
  35. package/dist/{apps/server/src/db → packages/db-core/src}/utils.d.ts +1 -0
  36. package/dist/packages/db-core/src/views/deck.d.ts +79 -0
  37. package/dist/packages/shared/src/eden.d.ts +43 -0
  38. package/dist/packages/shared/src/index.d.ts +1 -0
  39. package/dist/packages/shared/src/theme/data-colors.d.ts +2 -0
  40. package/dist/packages/shared/src/theme/index.d.ts +3 -0
  41. package/dist/packages/shared/src/theme/tokens/border.d.ts +11 -0
  42. package/dist/packages/shared/src/theme/tokens/colors.d.ts +356 -0
  43. package/dist/packages/shared/src/theme/utils.d.ts +7 -0
  44. package/dist/packages/shared/src/types/blog.d.ts +8 -0
  45. package/dist/packages/shared/src/types/deck.d.ts +2 -1
  46. package/dist/packages/shared/src/types/fsrs.d.ts +9 -8
  47. package/dist/packages/shared/src/types/index.d.ts +3 -0
  48. package/dist/packages/shared/src/types/permissions.d.ts +108 -0
  49. package/dist/packages/shared/src/types/studyPlan.d.ts +5 -0
  50. package/dist/packages/shared/src/types/subject.d.ts +19 -2
  51. package/package.json +1 -1
  52. package/dist/apps/server/src/db/index.d.ts +0 -6
  53. package/dist/apps/server/src/db/migrate.d.ts +0 -1
  54. package/dist/apps/server/src/db/types.d.ts +0 -2
  55. package/dist/apps/server/src/utils/uuid.d.ts +0 -1
  56. /package/dist/{apps/server/src/db → packages/db-core/src}/schema/data.d.ts +0 -0
  57. /package/dist/{apps/server/src/db → packages/db-core/src}/schema/deck.d.ts +0 -0
  58. /package/dist/{apps/server/src/db → packages/db-core/src}/schema/marketing.d.ts +0 -0
@@ -0,0 +1,356 @@
1
+ declare const colors: {
2
+ readonly transparent: "transparent";
3
+ readonly current: "currentColor";
4
+ readonly brand: {
5
+ readonly DEFAULT: "#FF7824";
6
+ };
7
+ readonly primary: {
8
+ readonly 1: string;
9
+ readonly 2: string;
10
+ readonly 3: string;
11
+ readonly 4: string;
12
+ readonly 5: string;
13
+ readonly 6: string;
14
+ readonly 7: string;
15
+ readonly 8: string;
16
+ readonly 9: string;
17
+ readonly 10: string;
18
+ readonly 11: string;
19
+ readonly 12: string;
20
+ readonly a1: string;
21
+ readonly a2: string;
22
+ readonly a10: string;
23
+ readonly a4: string;
24
+ readonly a5: string;
25
+ readonly a3: string;
26
+ readonly a6: string;
27
+ readonly a7: string;
28
+ readonly a8: string;
29
+ readonly a9: string;
30
+ readonly a11: string;
31
+ readonly a12: string;
32
+ readonly DEFAULT: string;
33
+ readonly hover: string;
34
+ readonly dark: string;
35
+ readonly light: string;
36
+ readonly lightness: string;
37
+ };
38
+ readonly secondary: {
39
+ readonly 1: string;
40
+ readonly 2: string;
41
+ readonly 3: string;
42
+ readonly 4: string;
43
+ readonly 5: string;
44
+ readonly 6: string;
45
+ readonly 7: string;
46
+ readonly 8: string;
47
+ readonly 9: string;
48
+ readonly 10: string;
49
+ readonly 11: string;
50
+ readonly 12: string;
51
+ readonly a1: string;
52
+ readonly a2: string;
53
+ readonly a10: string;
54
+ readonly a4: string;
55
+ readonly a5: string;
56
+ readonly a3: string;
57
+ readonly a6: string;
58
+ readonly a7: string;
59
+ readonly a8: string;
60
+ readonly a9: string;
61
+ readonly a11: string;
62
+ readonly a12: string;
63
+ readonly DEFAULT: string;
64
+ readonly hover: string;
65
+ readonly dark: string;
66
+ readonly light: string;
67
+ readonly lightness: string;
68
+ };
69
+ readonly tertiary: {
70
+ readonly 1: string;
71
+ readonly 2: string;
72
+ readonly 3: string;
73
+ readonly 4: string;
74
+ readonly 5: string;
75
+ readonly 6: string;
76
+ readonly 7: string;
77
+ readonly 8: string;
78
+ readonly 9: string;
79
+ readonly 10: string;
80
+ readonly 11: string;
81
+ readonly 12: string;
82
+ readonly a1: string;
83
+ readonly a2: string;
84
+ readonly a10: string;
85
+ readonly a4: string;
86
+ readonly a5: string;
87
+ readonly a3: string;
88
+ readonly a6: string;
89
+ readonly a7: string;
90
+ readonly a8: string;
91
+ readonly a9: string;
92
+ readonly a11: string;
93
+ readonly a12: string;
94
+ readonly DEFAULT: string;
95
+ readonly hover: string;
96
+ readonly dark: string;
97
+ readonly light: string;
98
+ readonly lightness: string;
99
+ };
100
+ readonly quaternary: {
101
+ readonly 1: string;
102
+ readonly 2: string;
103
+ readonly 3: string;
104
+ readonly 4: string;
105
+ readonly 5: string;
106
+ readonly 6: string;
107
+ readonly 7: string;
108
+ readonly 8: string;
109
+ readonly 9: string;
110
+ readonly 10: string;
111
+ readonly 11: string;
112
+ readonly 12: string;
113
+ readonly a1: string;
114
+ readonly a2: string;
115
+ readonly a10: string;
116
+ readonly a4: string;
117
+ readonly a5: string;
118
+ readonly a3: string;
119
+ readonly a6: string;
120
+ readonly a7: string;
121
+ readonly a8: string;
122
+ readonly a9: string;
123
+ readonly a11: string;
124
+ readonly a12: string;
125
+ readonly DEFAULT: string;
126
+ readonly hover: string;
127
+ readonly dark: string;
128
+ readonly light: string;
129
+ readonly lightness: string;
130
+ };
131
+ readonly quinary: {
132
+ readonly 1: string;
133
+ readonly 2: string;
134
+ readonly 3: string;
135
+ readonly 4: string;
136
+ readonly 5: string;
137
+ readonly 6: string;
138
+ readonly 7: string;
139
+ readonly 8: string;
140
+ readonly 9: string;
141
+ readonly 10: string;
142
+ readonly 11: string;
143
+ readonly 12: string;
144
+ readonly a1: string;
145
+ readonly a2: string;
146
+ readonly a10: string;
147
+ readonly a4: string;
148
+ readonly a5: string;
149
+ readonly a3: string;
150
+ readonly a6: string;
151
+ readonly a7: string;
152
+ readonly a8: string;
153
+ readonly a9: string;
154
+ readonly a11: string;
155
+ readonly a12: string;
156
+ readonly DEFAULT: string;
157
+ readonly hover: string;
158
+ readonly dark: string;
159
+ readonly light: string;
160
+ readonly lightness: string;
161
+ };
162
+ readonly gray: {
163
+ readonly 1: string;
164
+ readonly 2: string;
165
+ readonly 3: string;
166
+ readonly 4: string;
167
+ readonly 5: string;
168
+ readonly 6: string;
169
+ readonly 7: string;
170
+ readonly 8: string;
171
+ readonly 9: string;
172
+ readonly 10: string;
173
+ readonly 11: string;
174
+ readonly 12: string;
175
+ readonly a1: string;
176
+ readonly a2: string;
177
+ readonly a10: string;
178
+ readonly a4: string;
179
+ readonly a5: string;
180
+ readonly a3: string;
181
+ readonly a6: string;
182
+ readonly a7: string;
183
+ readonly a8: string;
184
+ readonly a9: string;
185
+ readonly a11: string;
186
+ readonly a12: string;
187
+ readonly DEFAULT: string;
188
+ readonly hover: string;
189
+ readonly dark: string;
190
+ readonly light: string;
191
+ readonly lightness: string;
192
+ };
193
+ readonly success: {
194
+ readonly 1: string;
195
+ readonly 2: string;
196
+ readonly 3: string;
197
+ readonly 4: string;
198
+ readonly 5: string;
199
+ readonly 6: string;
200
+ readonly 7: string;
201
+ readonly 8: string;
202
+ readonly 9: string;
203
+ readonly 10: string;
204
+ readonly 11: string;
205
+ readonly 12: string;
206
+ readonly a1: string;
207
+ readonly a2: string;
208
+ readonly a10: string;
209
+ readonly a4: string;
210
+ readonly a5: string;
211
+ readonly a3: string;
212
+ readonly a6: string;
213
+ readonly a7: string;
214
+ readonly a8: string;
215
+ readonly a9: string;
216
+ readonly a11: string;
217
+ readonly a12: string;
218
+ readonly DEFAULT: string;
219
+ readonly hover: string;
220
+ readonly dark: string;
221
+ readonly light: string;
222
+ readonly lightness: string;
223
+ };
224
+ readonly warning: {
225
+ readonly 1: string;
226
+ readonly 2: string;
227
+ readonly 3: string;
228
+ readonly 4: string;
229
+ readonly 5: string;
230
+ readonly 6: string;
231
+ readonly 7: string;
232
+ readonly 8: string;
233
+ readonly 9: string;
234
+ readonly 10: string;
235
+ readonly 11: string;
236
+ readonly 12: string;
237
+ readonly a1: string;
238
+ readonly a2: string;
239
+ readonly a10: string;
240
+ readonly a4: string;
241
+ readonly a5: string;
242
+ readonly a3: string;
243
+ readonly a6: string;
244
+ readonly a7: string;
245
+ readonly a8: string;
246
+ readonly a9: string;
247
+ readonly a11: string;
248
+ readonly a12: string;
249
+ readonly DEFAULT: string;
250
+ readonly hover: string;
251
+ readonly dark: string;
252
+ readonly light: string;
253
+ readonly lightness: string;
254
+ };
255
+ readonly danger: {
256
+ readonly 1: string;
257
+ readonly 2: string;
258
+ readonly 3: string;
259
+ readonly 4: string;
260
+ readonly 5: string;
261
+ readonly 6: string;
262
+ readonly 7: string;
263
+ readonly 8: string;
264
+ readonly 9: string;
265
+ readonly 10: string;
266
+ readonly 11: string;
267
+ readonly 12: string;
268
+ readonly a1: string;
269
+ readonly a2: string;
270
+ readonly a10: string;
271
+ readonly a4: string;
272
+ readonly a5: string;
273
+ readonly a3: string;
274
+ readonly a6: string;
275
+ readonly a7: string;
276
+ readonly a8: string;
277
+ readonly a9: string;
278
+ readonly a11: string;
279
+ readonly a12: string;
280
+ readonly DEFAULT: string;
281
+ readonly hover: string;
282
+ readonly dark: string;
283
+ readonly light: string;
284
+ readonly lightness: string;
285
+ };
286
+ readonly black: {
287
+ readonly DEFAULT: "#000000";
288
+ readonly a1: "rgba(0, 0, 0, 0.05)";
289
+ readonly a2: "rgba(0, 0, 0, 0.1)";
290
+ readonly a3: "rgba(0, 0, 0, 0.15)";
291
+ readonly a4: "rgba(0, 0, 0, 0.2)";
292
+ readonly a5: "rgba(0, 0, 0, 0.3)";
293
+ readonly a6: "rgba(0, 0, 0, 0.4)";
294
+ readonly a7: "rgba(0, 0, 0, 0.5)";
295
+ readonly a8: "rgba(0, 0, 0, 0.6)";
296
+ readonly a9: "rgba(0, 0, 0, 0.7)";
297
+ readonly a10: "rgba(0, 0, 0, 0.8)";
298
+ readonly a11: "rgba(0, 0, 0, 0.9)";
299
+ readonly a12: "rgba(0, 0, 0, 0.95)";
300
+ };
301
+ readonly white: {
302
+ readonly DEFAULT: "#FFFFFF";
303
+ readonly a1: "rgba(255, 255, 255, 0.05)";
304
+ readonly a2: "rgba(255, 255, 255, 0.1)";
305
+ readonly a3: "rgba(255, 255, 255, 0.15)";
306
+ readonly a4: "rgba(255, 255, 255, 0.2)";
307
+ readonly a5: "rgba(255, 255, 255, 0.3)";
308
+ readonly a6: "rgba(255, 255, 255, 0.4)";
309
+ readonly a7: "rgba(255, 255, 255, 0.5)";
310
+ readonly a8: "rgba(255, 255, 255, 0.6)";
311
+ readonly a9: "rgba(255, 255, 255, 0.7)";
312
+ readonly a10: "rgba(255, 255, 255, 0.8)";
313
+ readonly a11: "rgba(255, 255, 255, 0.9)";
314
+ readonly a12: "rgba(255, 255, 255, 0.95)";
315
+ };
316
+ readonly data: {
317
+ readonly 1: "#1d4aff";
318
+ readonly 2: "#621da6";
319
+ readonly 3: "#42827e";
320
+ readonly 4: "#ce0e74";
321
+ readonly 5: "#f14f58";
322
+ readonly 6: "#7c440e";
323
+ readonly 7: "#529a0a";
324
+ readonly 8: "#0476fb";
325
+ readonly 9: "#fe729e";
326
+ readonly 10: "#35416b";
327
+ readonly 11: "#41cbc4";
328
+ readonly 12: "#b64b02";
329
+ readonly 13: "#e4a604";
330
+ readonly 14: "#a56eff";
331
+ readonly 15: "#30d5c8";
332
+ };
333
+ readonly foreground: string;
334
+ readonly background: string;
335
+ readonly ring: string;
336
+ readonly muted: {
337
+ readonly DEFAULT: string;
338
+ readonly foreground: string;
339
+ };
340
+ readonly border: string;
341
+ readonly input: string;
342
+ readonly accent: string;
343
+ readonly sidebar: {
344
+ readonly DEFAULT: string;
345
+ readonly foreground: string;
346
+ readonly accent: "white";
347
+ readonly 'accent-foreground': string;
348
+ readonly border: string;
349
+ readonly ring: string;
350
+ };
351
+ readonly popover: {
352
+ readonly DEFAULT: "#FFFFFF";
353
+ readonly foreground: string;
354
+ };
355
+ };
356
+ export default colors;
@@ -0,0 +1,7 @@
1
+ export declare function hashColor(str: string): "primary" | "secondary" | "tertiary" | "quaternary" | "quinary";
2
+ export declare const getColorValue: (color: string, code: string) => string;
3
+ type ScaleIndex = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
4
+ type ScaleKeys = `${ScaleIndex}` | `a${ScaleIndex}` | 'DEFAULT' | 'hover' | 'dark' | 'light' | 'lightness';
5
+ export type Scale = Record<ScaleKeys, string>;
6
+ export declare function generateScale(name: string): Scale;
7
+ export {};
@@ -0,0 +1,8 @@
1
+ export declare enum BlogPostStatus {
2
+ Draft = "draft",
3
+ Published = "published"
4
+ }
5
+ export type BlogPostQuestion = {
6
+ question: string;
7
+ answer: string;
8
+ };
@@ -23,10 +23,10 @@ export interface ICard {
23
23
  }
24
24
  export type EntityType = 'user' | 'organization' | 'official';
25
25
  export interface IOwnerInfo {
26
- type: EntityType;
27
26
  id: string;
28
27
  name: string;
29
28
  image: string | null;
29
+ type: EntityType;
30
30
  }
31
31
  export interface IDeck {
32
32
  id: string;
@@ -41,6 +41,7 @@ export interface IDeck {
41
41
  subject: Subject;
42
42
  topic?: string;
43
43
  topicIcon?: string | null;
44
+ ownerId: string;
44
45
  }
45
46
  export interface IDeckDetail extends IDeck {
46
47
  subject: Subject;
@@ -6,12 +6,13 @@ export declare enum ReviewState {
6
6
  }
7
7
  export declare const reviewStates: readonly ["New", "Learning", "Review", "Relearning"];
8
8
  export type ReviewStateType = keyof typeof ReviewState;
9
- export declare enum ReviewRating {
10
- Manual = "Manual",
11
- Again = "Again",
12
- Hard = "Hard",
13
- Good = "Good",
14
- Easy = "Easy"
15
- }
9
+ export declare const ReviewRating: {
10
+ readonly Manual: "Manual";
11
+ readonly Again: "Again";
12
+ readonly Hard: "Hard";
13
+ readonly Good: "Good";
14
+ readonly Easy: "Easy";
15
+ };
16
+ export type ReviewRating = (typeof ReviewRating)[keyof typeof ReviewRating];
16
17
  export declare const reviewRatings: readonly ["Manual", "Again", "Hard", "Good", "Easy"];
17
- export type ReviewRatingType = keyof typeof ReviewRating;
18
+ export type ReviewRatingType = ReviewRating;
@@ -1,6 +1,9 @@
1
+ export * from './blog';
1
2
  export * from './deck';
2
3
  export * from './fsrs';
4
+ export * from './permissions';
3
5
  export * from './study';
6
+ export * from './studyPlan';
4
7
  export * from './subject';
5
8
  export * from './topic';
6
9
  export * from './user';
@@ -0,0 +1,108 @@
1
+ import { Entitlement, UserRole } from './user';
2
+ export declare const PERMISSIONS: {
3
+ readonly DECK: {
4
+ readonly CREATE_OWN: "deck:create:own";
5
+ readonly CREATE_PUBLIC: "deck:create:public";
6
+ readonly READ_OWN: "deck:read:own";
7
+ readonly READ_OTHERS: "deck:read:others";
8
+ readonly READ_UNPUBLISHED: "deck:read:unpublished";
9
+ readonly READ_FREE: "deck:read:free";
10
+ readonly READ_PREMIUM: "deck:read:premium";
11
+ readonly READ_PRIVATE: "deck:read:private";
12
+ readonly UPDATE_OWN: "deck:update:own";
13
+ readonly UPDATE_PUBLIC: "deck:update:public";
14
+ readonly DELETE_OWN: "deck:delete:own";
15
+ readonly DELETE_PUBLIC: "deck:delete:public";
16
+ };
17
+ readonly CARD_DEMAND: {
18
+ readonly READ_ALL: "card-demand:read:*";
19
+ readonly CREATE: "card-demand:create";
20
+ readonly ACTION: "card-demand:action";
21
+ };
22
+ readonly USER: {
23
+ readonly UPDATE_OWN: "user:update:own";
24
+ readonly UPDATE_ALL: "user:update:*";
25
+ readonly DELETE_OWN: "user:delete:own";
26
+ readonly DELETE_ALL: "user:delete:*";
27
+ readonly READ_OWN: "user:read:own";
28
+ readonly READ_ALL: "user:read:*";
29
+ };
30
+ readonly STATS: {
31
+ readonly VIEW: "stats:view";
32
+ };
33
+ readonly MEMBERSHIP: {
34
+ readonly MANAGE: "membership:manage";
35
+ };
36
+ readonly PLAN: {
37
+ readonly CREATE: "plan:create";
38
+ readonly UPDATE: "plan:update";
39
+ readonly DELETE: "plan:delete";
40
+ };
41
+ readonly BLOGPOST: {
42
+ readonly CREATE: "blogpost:create";
43
+ readonly UPDATE: "blogpost:update";
44
+ readonly DELETE: "blogpost:delete";
45
+ };
46
+ readonly VESTY: {
47
+ readonly CHAT: "vesty:chat";
48
+ };
49
+ readonly STUDY: {
50
+ readonly READ: "study:read";
51
+ readonly WRITE: "study:write";
52
+ };
53
+ readonly LIBRARY: {
54
+ readonly READ: "library:read";
55
+ readonly WRITE: "library:write";
56
+ readonly WRITE_PREMIUM: "library:write:premium";
57
+ };
58
+ readonly ADMIN_PANEL: {
59
+ readonly VIEW: "admin-panel:view";
60
+ };
61
+ };
62
+ type ValueOf<T> = T[keyof T];
63
+ export type Permission = ValueOf<{
64
+ [K in keyof typeof PERMISSIONS]: ValueOf<(typeof PERMISSIONS)[K]>;
65
+ }>;
66
+ export declare const Permission: {
67
+ readonly DECK_CREATE_OWN: "deck:create:own";
68
+ readonly DECK_CREATE_PUBLIC: "deck:create:public";
69
+ readonly DECK_READ_OWN: "deck:read:own";
70
+ readonly DECK_READ_OTHERS: "deck:read:others";
71
+ readonly DECK_READ_UNPUBLISHED: "deck:read:unpublished";
72
+ readonly DECK_READ_FREE: "deck:read:free";
73
+ readonly DECK_READ_PREMIUM: "deck:read:premium";
74
+ readonly DECK_READ_PRIVATE: "deck:read:private";
75
+ readonly DECK_UPDATE_OWN: "deck:update:own";
76
+ readonly DECK_UPDATE_PUBLIC: "deck:update:public";
77
+ readonly DECK_DELETE_OWN: "deck:delete:own";
78
+ readonly DECK_DELETE_PUBLIC: "deck:delete:public";
79
+ readonly CARD_DEMAND_READ_ALL: "card-demand:read:*";
80
+ readonly CARD_DEMAND_CREATE: "card-demand:create";
81
+ readonly CARD_DEMAND_ACTION: "card-demand:action";
82
+ readonly USER_UPDATE_OWN: "user:update:own";
83
+ readonly USER_UPDATE_ALL: "user:update:*";
84
+ readonly USER_DELETE_OWN: "user:delete:own";
85
+ readonly USER_DELETE_ALL: "user:delete:*";
86
+ readonly USER_READ_OWN: "user:read:own";
87
+ readonly USER_READ_ALL: "user:read:*";
88
+ readonly STATS_VIEW: "stats:view";
89
+ readonly MEMBERSHIP_MANAGE: "membership:manage";
90
+ readonly PLAN_CREATE: "plan:create";
91
+ readonly PLAN_UPDATE: "plan:update";
92
+ readonly PLAN_DELETE: "plan:delete";
93
+ readonly BLOGPOST_CREATE: "blogpost:create";
94
+ readonly BLOGPOST_UPDATE: "blogpost:update";
95
+ readonly BLOGPOST_DELETE: "blogpost:delete";
96
+ readonly VESTY_CHAT: "vesty:chat";
97
+ readonly STUDY_READ: "study:read";
98
+ readonly STUDY_WRITE: "study:write";
99
+ readonly LIBRARY_READ: "library:read";
100
+ readonly LIBRARY_WRITE: "library:write";
101
+ readonly LIBRARY_WRITE_PREMIUM: "library:write:premium";
102
+ readonly ADMIN_PANEL_VIEW: "admin-panel:view";
103
+ };
104
+ export declare const ALL_PERMISSIONS: Permission[];
105
+ export declare const ROLE_PERMISSIONS: Record<UserRole, Permission[]>;
106
+ export declare const ENTITLEMENT_PERMISSIONS: Record<Entitlement, Permission[]>;
107
+ export declare const hasPermission: (required: Permission, userRole?: UserRole, userEntitlements?: Entitlement[]) => boolean;
108
+ export {};
@@ -0,0 +1,5 @@
1
+ export declare enum EntranceExamProgramStatus {
2
+ Published = "published",
3
+ Draft = "draft",
4
+ Archived = "archived"
5
+ }
@@ -2,7 +2,24 @@ import type { Subject } from './deck';
2
2
  export type SemanticColor = 'primary' | 'secondary' | 'tertiary' | 'quaternary' | 'quinary' | 'default';
3
3
  type SubjectWithDefault = Subject | 'default';
4
4
  export declare const SUBJECT_COLORS: Record<SubjectWithDefault, SemanticColor>;
5
- export declare const SUBJECT_ICONS: Record<SubjectWithDefault, string>;
6
- export declare const getSubjectIcon: (subject: string) => string;
5
+ export declare const SUBJECT_ICONS: {
6
+ readonly matemática: "radical";
7
+ readonly gramática: "spell-check";
8
+ readonly literatura: "book-open";
9
+ readonly biologia: "dna";
10
+ readonly química: "test-tube-diagonal";
11
+ readonly física: "atom";
12
+ readonly história: "scroll";
13
+ readonly geografia: "earth";
14
+ readonly filosofia: "brain";
15
+ readonly sociologia: "users-round";
16
+ readonly redação: "notebook-pen";
17
+ readonly artes: "palette";
18
+ readonly inglês: "languages";
19
+ readonly default: "graduation-cap";
20
+ };
21
+ type SubjectIcon = (typeof SUBJECT_ICONS)[SubjectWithDefault];
22
+ export declare const getSubjectIcon: (subject: string) => SubjectIcon;
7
23
  export declare const getSubjectColor: (subject: string) => SemanticColor;
24
+ export declare const getSubjectCSSColor: (subject: string) => string;
8
25
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vestcards/server-types",
3
- "version": "1.0.2",
3
+ "version": "1.1.0",
4
4
  "private": false,
5
5
  "types": "./dist/index.d.ts",
6
6
  "exports": {
@@ -1,6 +0,0 @@
1
- declare const db: import("drizzle-orm/node-postgres").NodePgDatabase<Record<string, never>> & {
2
- $client: any;
3
- };
4
- export { db };
5
- export * from './schema';
6
- export * from './types';
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export type { BillingType, OrganizationScopeRole, UserScopeRole } from '@vestcards/shared';
2
- export { Entitlement, MembershipStatus, OrganizationRole, UserRole } from '@vestcards/shared';
@@ -1 +0,0 @@
1
- export declare function generateId(): string;