@shin1ohno/sage 0.8.8 → 0.9.1

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 (78) hide show
  1. package/README.md +31 -0
  2. package/dist/cli/http-server-with-config.d.ts +2 -0
  3. package/dist/cli/http-server-with-config.d.ts.map +1 -1
  4. package/dist/cli/http-server-with-config.js +70 -0
  5. package/dist/cli/http-server-with-config.js.map +1 -1
  6. package/dist/cli/main-entry.d.ts.map +1 -1
  7. package/dist/cli/main-entry.js +1 -0
  8. package/dist/cli/main-entry.js.map +1 -1
  9. package/dist/cli/parser.d.ts +2 -0
  10. package/dist/cli/parser.d.ts.map +1 -1
  11. package/dist/cli/parser.js +7 -0
  12. package/dist/cli/parser.js.map +1 -1
  13. package/dist/config/validation.d.ts +721 -0
  14. package/dist/config/validation.d.ts.map +1 -1
  15. package/dist/config/validation.js +203 -0
  16. package/dist/config/validation.js.map +1 -1
  17. package/dist/integrations/calendar-service.d.ts +14 -0
  18. package/dist/integrations/calendar-service.d.ts.map +1 -1
  19. package/dist/integrations/calendar-service.js.map +1 -1
  20. package/dist/integrations/calendar-source-manager.d.ts +86 -3
  21. package/dist/integrations/calendar-source-manager.d.ts.map +1 -1
  22. package/dist/integrations/calendar-source-manager.js +146 -15
  23. package/dist/integrations/calendar-source-manager.js.map +1 -1
  24. package/dist/integrations/google-calendar-service.d.ts +55 -3
  25. package/dist/integrations/google-calendar-service.d.ts.map +1 -1
  26. package/dist/integrations/google-calendar-service.js +213 -4
  27. package/dist/integrations/google-calendar-service.js.map +1 -1
  28. package/dist/oauth/encryption-service.d.ts +104 -0
  29. package/dist/oauth/encryption-service.d.ts.map +1 -0
  30. package/dist/oauth/encryption-service.js +271 -0
  31. package/dist/oauth/encryption-service.js.map +1 -0
  32. package/dist/oauth/file-mutex.d.ts +68 -0
  33. package/dist/oauth/file-mutex.d.ts.map +1 -0
  34. package/dist/oauth/file-mutex.js +140 -0
  35. package/dist/oauth/file-mutex.js.map +1 -0
  36. package/dist/oauth/google-oauth-handler.d.ts +8 -9
  37. package/dist/oauth/google-oauth-handler.d.ts.map +1 -1
  38. package/dist/oauth/google-oauth-handler.js +30 -65
  39. package/dist/oauth/google-oauth-handler.js.map +1 -1
  40. package/dist/oauth/index.d.ts +1 -0
  41. package/dist/oauth/index.d.ts.map +1 -1
  42. package/dist/oauth/index.js +2 -0
  43. package/dist/oauth/index.js.map +1 -1
  44. package/dist/oauth/oauth-server.d.ts +61 -1
  45. package/dist/oauth/oauth-server.d.ts.map +1 -1
  46. package/dist/oauth/oauth-server.js +181 -40
  47. package/dist/oauth/oauth-server.js.map +1 -1
  48. package/dist/oauth/persistent-client-store.d.ts +58 -0
  49. package/dist/oauth/persistent-client-store.d.ts.map +1 -0
  50. package/dist/oauth/persistent-client-store.js +187 -0
  51. package/dist/oauth/persistent-client-store.js.map +1 -0
  52. package/dist/oauth/persistent-refresh-token-store.d.ts +77 -0
  53. package/dist/oauth/persistent-refresh-token-store.d.ts.map +1 -0
  54. package/dist/oauth/persistent-refresh-token-store.js +225 -0
  55. package/dist/oauth/persistent-refresh-token-store.js.map +1 -0
  56. package/dist/oauth/persistent-session-store.d.ts +69 -0
  57. package/dist/oauth/persistent-session-store.d.ts.map +1 -0
  58. package/dist/oauth/persistent-session-store.js +154 -0
  59. package/dist/oauth/persistent-session-store.js.map +1 -0
  60. package/dist/oauth/session-store.d.ts +31 -0
  61. package/dist/oauth/session-store.d.ts.map +1 -0
  62. package/dist/oauth/session-store.js +47 -0
  63. package/dist/oauth/session-store.js.map +1 -0
  64. package/dist/services/working-cadence.d.ts +37 -1
  65. package/dist/services/working-cadence.d.ts.map +1 -1
  66. package/dist/services/working-cadence.js +151 -13
  67. package/dist/services/working-cadence.js.map +1 -1
  68. package/dist/tools/calendar/handlers.d.ts +82 -3
  69. package/dist/tools/calendar/handlers.d.ts.map +1 -1
  70. package/dist/tools/calendar/handlers.js +200 -16
  71. package/dist/tools/calendar/handlers.js.map +1 -1
  72. package/dist/types/google-calendar-types.d.ts +150 -3
  73. package/dist/types/google-calendar-types.d.ts.map +1 -1
  74. package/dist/types/google-calendar-types.js +79 -2
  75. package/dist/types/google-calendar-types.js.map +1 -1
  76. package/dist/types/task.d.ts +14 -0
  77. package/dist/types/task.d.ts.map +1 -1
  78. package/package.json +1 -1
@@ -127,4 +127,725 @@ export declare function validateCalendarSources(sources: unknown): {
127
127
  export type ValidatedCalendarSources = z.infer<typeof CalendarSourcesSchema>;
128
128
  export type ValidatedEventKitSourceConfig = z.infer<typeof EventKitSourceConfigSchema>;
129
129
  export type ValidatedGoogleCalendarSourceConfig = z.infer<typeof GoogleCalendarSourceConfigSchema>;
130
+ /**
131
+ * Auto Decline Mode Schema
132
+ * Shared enum for outOfOffice and focusTime events
133
+ * Requirement: 1, 2, 8.2
134
+ */
135
+ export declare const AutoDeclineModeSchema: z.ZodEnum<["declineNone", "declineAllConflictingInvitations", "declineOnlyNewConflictingInvitations"]>;
136
+ /**
137
+ * Out of Office Properties Schema
138
+ * Requirement: 1, 8.2
139
+ */
140
+ export declare const OutOfOfficePropertiesSchema: z.ZodObject<{
141
+ autoDeclineMode: z.ZodEnum<["declineNone", "declineAllConflictingInvitations", "declineOnlyNewConflictingInvitations"]>;
142
+ declineMessage: z.ZodOptional<z.ZodString>;
143
+ }, "strip", z.ZodTypeAny, {
144
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
145
+ declineMessage?: string | undefined;
146
+ }, {
147
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
148
+ declineMessage?: string | undefined;
149
+ }>;
150
+ /**
151
+ * Focus Time Properties Schema
152
+ * Requirement: 2, 8.2
153
+ */
154
+ export declare const FocusTimePropertiesSchema: z.ZodObject<{
155
+ autoDeclineMode: z.ZodEnum<["declineNone", "declineAllConflictingInvitations", "declineOnlyNewConflictingInvitations"]>;
156
+ declineMessage: z.ZodOptional<z.ZodString>;
157
+ chatStatus: z.ZodOptional<z.ZodEnum<["available", "doNotDisturb"]>>;
158
+ }, "strip", z.ZodTypeAny, {
159
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
160
+ declineMessage?: string | undefined;
161
+ chatStatus?: "available" | "doNotDisturb" | undefined;
162
+ }, {
163
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
164
+ declineMessage?: string | undefined;
165
+ chatStatus?: "available" | "doNotDisturb" | undefined;
166
+ }>;
167
+ /**
168
+ * Working Location Properties Schema
169
+ * Requirement: 3, 8.2
170
+ */
171
+ export declare const WorkingLocationPropertiesSchema: z.ZodEffects<z.ZodObject<{
172
+ type: z.ZodEnum<["homeOffice", "officeLocation", "customLocation"]>;
173
+ homeOffice: z.ZodOptional<z.ZodBoolean>;
174
+ customLocation: z.ZodOptional<z.ZodObject<{
175
+ label: z.ZodString;
176
+ }, "strip", z.ZodTypeAny, {
177
+ label: string;
178
+ }, {
179
+ label: string;
180
+ }>>;
181
+ officeLocation: z.ZodOptional<z.ZodObject<{
182
+ buildingId: z.ZodOptional<z.ZodString>;
183
+ floorId: z.ZodOptional<z.ZodString>;
184
+ floorSectionId: z.ZodOptional<z.ZodString>;
185
+ deskId: z.ZodOptional<z.ZodString>;
186
+ label: z.ZodOptional<z.ZodString>;
187
+ }, "strip", z.ZodTypeAny, {
188
+ label?: string | undefined;
189
+ buildingId?: string | undefined;
190
+ floorId?: string | undefined;
191
+ floorSectionId?: string | undefined;
192
+ deskId?: string | undefined;
193
+ }, {
194
+ label?: string | undefined;
195
+ buildingId?: string | undefined;
196
+ floorId?: string | undefined;
197
+ floorSectionId?: string | undefined;
198
+ deskId?: string | undefined;
199
+ }>>;
200
+ }, "strip", z.ZodTypeAny, {
201
+ type: "homeOffice" | "officeLocation" | "customLocation";
202
+ homeOffice?: boolean | undefined;
203
+ officeLocation?: {
204
+ label?: string | undefined;
205
+ buildingId?: string | undefined;
206
+ floorId?: string | undefined;
207
+ floorSectionId?: string | undefined;
208
+ deskId?: string | undefined;
209
+ } | undefined;
210
+ customLocation?: {
211
+ label: string;
212
+ } | undefined;
213
+ }, {
214
+ type: "homeOffice" | "officeLocation" | "customLocation";
215
+ homeOffice?: boolean | undefined;
216
+ officeLocation?: {
217
+ label?: string | undefined;
218
+ buildingId?: string | undefined;
219
+ floorId?: string | undefined;
220
+ floorSectionId?: string | undefined;
221
+ deskId?: string | undefined;
222
+ } | undefined;
223
+ customLocation?: {
224
+ label: string;
225
+ } | undefined;
226
+ }>, {
227
+ type: "homeOffice" | "officeLocation" | "customLocation";
228
+ homeOffice?: boolean | undefined;
229
+ officeLocation?: {
230
+ label?: string | undefined;
231
+ buildingId?: string | undefined;
232
+ floorId?: string | undefined;
233
+ floorSectionId?: string | undefined;
234
+ deskId?: string | undefined;
235
+ } | undefined;
236
+ customLocation?: {
237
+ label: string;
238
+ } | undefined;
239
+ }, {
240
+ type: "homeOffice" | "officeLocation" | "customLocation";
241
+ homeOffice?: boolean | undefined;
242
+ officeLocation?: {
243
+ label?: string | undefined;
244
+ buildingId?: string | undefined;
245
+ floorId?: string | undefined;
246
+ floorSectionId?: string | undefined;
247
+ deskId?: string | undefined;
248
+ } | undefined;
249
+ customLocation?: {
250
+ label: string;
251
+ } | undefined;
252
+ }>;
253
+ /**
254
+ * Birthday Properties Schema
255
+ * Requirement: 4, 8.2
256
+ */
257
+ export declare const BirthdayPropertiesSchema: z.ZodObject<{
258
+ type: z.ZodEnum<["birthday", "anniversary", "custom", "other", "self"]>;
259
+ customTypeName: z.ZodOptional<z.ZodString>;
260
+ contact: z.ZodOptional<z.ZodString>;
261
+ }, "strip", z.ZodTypeAny, {
262
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
263
+ customTypeName?: string | undefined;
264
+ contact?: string | undefined;
265
+ }, {
266
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
267
+ customTypeName?: string | undefined;
268
+ contact?: string | undefined;
269
+ }>;
270
+ /**
271
+ * Google Calendar Event Type Schema
272
+ * Requirement: 6.2
273
+ */
274
+ export declare const GoogleCalendarEventTypeSchema: z.ZodEnum<["default", "outOfOffice", "focusTime", "workingLocation", "birthday", "fromGmail"]>;
275
+ /**
276
+ * Type exports for event type schemas
277
+ */
278
+ export type ValidatedAutoDeclineMode = z.infer<typeof AutoDeclineModeSchema>;
279
+ export type ValidatedOutOfOfficeProperties = z.infer<typeof OutOfOfficePropertiesSchema>;
280
+ export type ValidatedFocusTimeProperties = z.infer<typeof FocusTimePropertiesSchema>;
281
+ export type ValidatedWorkingLocationProperties = z.infer<typeof WorkingLocationPropertiesSchema>;
282
+ export type ValidatedBirthdayProperties = z.infer<typeof BirthdayPropertiesSchema>;
283
+ export type ValidatedGoogleCalendarEventType = z.infer<typeof GoogleCalendarEventTypeSchema>;
284
+ /**
285
+ * Reminder Override Schema
286
+ * Validates individual reminder settings for events
287
+ */
288
+ export declare const ReminderOverrideSchema: z.ZodObject<{
289
+ method: z.ZodEnum<["email", "popup"]>;
290
+ minutes: z.ZodNumber;
291
+ }, "strip", z.ZodTypeAny, {
292
+ method: "email" | "popup";
293
+ minutes: number;
294
+ }, {
295
+ method: "email" | "popup";
296
+ minutes: number;
297
+ }>;
298
+ /**
299
+ * Reminders Schema
300
+ * Validates reminder configuration for events
301
+ */
302
+ export declare const RemindersSchema: z.ZodObject<{
303
+ useDefault: z.ZodBoolean;
304
+ overrides: z.ZodOptional<z.ZodArray<z.ZodObject<{
305
+ method: z.ZodEnum<["email", "popup"]>;
306
+ minutes: z.ZodNumber;
307
+ }, "strip", z.ZodTypeAny, {
308
+ method: "email" | "popup";
309
+ minutes: number;
310
+ }, {
311
+ method: "email" | "popup";
312
+ minutes: number;
313
+ }>, "many">>;
314
+ }, "strip", z.ZodTypeAny, {
315
+ useDefault: boolean;
316
+ overrides?: {
317
+ method: "email" | "popup";
318
+ minutes: number;
319
+ }[] | undefined;
320
+ }, {
321
+ useDefault: boolean;
322
+ overrides?: {
323
+ method: "email" | "popup";
324
+ minutes: number;
325
+ }[] | undefined;
326
+ }>;
327
+ /**
328
+ * Create Event Request Schema with Event Type Support
329
+ * Comprehensive validation for event creation requests including all event types
330
+ * Requirement: 4.4, 5.4, 6.4, 6.5, 8.2, 8.3
331
+ */
332
+ export declare const CreateEventRequestSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
333
+ title: z.ZodString;
334
+ start: z.ZodString;
335
+ end: z.ZodString;
336
+ isAllDay: z.ZodOptional<z.ZodBoolean>;
337
+ location: z.ZodOptional<z.ZodString>;
338
+ description: z.ZodOptional<z.ZodString>;
339
+ attendees: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
340
+ reminders: z.ZodOptional<z.ZodObject<{
341
+ useDefault: z.ZodBoolean;
342
+ overrides: z.ZodOptional<z.ZodArray<z.ZodObject<{
343
+ method: z.ZodEnum<["email", "popup"]>;
344
+ minutes: z.ZodNumber;
345
+ }, "strip", z.ZodTypeAny, {
346
+ method: "email" | "popup";
347
+ minutes: number;
348
+ }, {
349
+ method: "email" | "popup";
350
+ minutes: number;
351
+ }>, "many">>;
352
+ }, "strip", z.ZodTypeAny, {
353
+ useDefault: boolean;
354
+ overrides?: {
355
+ method: "email" | "popup";
356
+ minutes: number;
357
+ }[] | undefined;
358
+ }, {
359
+ useDefault: boolean;
360
+ overrides?: {
361
+ method: "email" | "popup";
362
+ minutes: number;
363
+ }[] | undefined;
364
+ }>>;
365
+ eventType: z.ZodOptional<z.ZodEnum<["default", "outOfOffice", "focusTime", "workingLocation", "birthday", "fromGmail"]>>;
366
+ outOfOfficeProperties: z.ZodOptional<z.ZodObject<{
367
+ autoDeclineMode: z.ZodEnum<["declineNone", "declineAllConflictingInvitations", "declineOnlyNewConflictingInvitations"]>;
368
+ declineMessage: z.ZodOptional<z.ZodString>;
369
+ }, "strip", z.ZodTypeAny, {
370
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
371
+ declineMessage?: string | undefined;
372
+ }, {
373
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
374
+ declineMessage?: string | undefined;
375
+ }>>;
376
+ focusTimeProperties: z.ZodOptional<z.ZodObject<{
377
+ autoDeclineMode: z.ZodEnum<["declineNone", "declineAllConflictingInvitations", "declineOnlyNewConflictingInvitations"]>;
378
+ declineMessage: z.ZodOptional<z.ZodString>;
379
+ chatStatus: z.ZodOptional<z.ZodEnum<["available", "doNotDisturb"]>>;
380
+ }, "strip", z.ZodTypeAny, {
381
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
382
+ declineMessage?: string | undefined;
383
+ chatStatus?: "available" | "doNotDisturb" | undefined;
384
+ }, {
385
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
386
+ declineMessage?: string | undefined;
387
+ chatStatus?: "available" | "doNotDisturb" | undefined;
388
+ }>>;
389
+ workingLocationProperties: z.ZodOptional<z.ZodEffects<z.ZodObject<{
390
+ type: z.ZodEnum<["homeOffice", "officeLocation", "customLocation"]>;
391
+ homeOffice: z.ZodOptional<z.ZodBoolean>;
392
+ customLocation: z.ZodOptional<z.ZodObject<{
393
+ label: z.ZodString;
394
+ }, "strip", z.ZodTypeAny, {
395
+ label: string;
396
+ }, {
397
+ label: string;
398
+ }>>;
399
+ officeLocation: z.ZodOptional<z.ZodObject<{
400
+ buildingId: z.ZodOptional<z.ZodString>;
401
+ floorId: z.ZodOptional<z.ZodString>;
402
+ floorSectionId: z.ZodOptional<z.ZodString>;
403
+ deskId: z.ZodOptional<z.ZodString>;
404
+ label: z.ZodOptional<z.ZodString>;
405
+ }, "strip", z.ZodTypeAny, {
406
+ label?: string | undefined;
407
+ buildingId?: string | undefined;
408
+ floorId?: string | undefined;
409
+ floorSectionId?: string | undefined;
410
+ deskId?: string | undefined;
411
+ }, {
412
+ label?: string | undefined;
413
+ buildingId?: string | undefined;
414
+ floorId?: string | undefined;
415
+ floorSectionId?: string | undefined;
416
+ deskId?: string | undefined;
417
+ }>>;
418
+ }, "strip", z.ZodTypeAny, {
419
+ type: "homeOffice" | "officeLocation" | "customLocation";
420
+ homeOffice?: boolean | undefined;
421
+ officeLocation?: {
422
+ label?: string | undefined;
423
+ buildingId?: string | undefined;
424
+ floorId?: string | undefined;
425
+ floorSectionId?: string | undefined;
426
+ deskId?: string | undefined;
427
+ } | undefined;
428
+ customLocation?: {
429
+ label: string;
430
+ } | undefined;
431
+ }, {
432
+ type: "homeOffice" | "officeLocation" | "customLocation";
433
+ homeOffice?: boolean | undefined;
434
+ officeLocation?: {
435
+ label?: string | undefined;
436
+ buildingId?: string | undefined;
437
+ floorId?: string | undefined;
438
+ floorSectionId?: string | undefined;
439
+ deskId?: string | undefined;
440
+ } | undefined;
441
+ customLocation?: {
442
+ label: string;
443
+ } | undefined;
444
+ }>, {
445
+ type: "homeOffice" | "officeLocation" | "customLocation";
446
+ homeOffice?: boolean | undefined;
447
+ officeLocation?: {
448
+ label?: string | undefined;
449
+ buildingId?: string | undefined;
450
+ floorId?: string | undefined;
451
+ floorSectionId?: string | undefined;
452
+ deskId?: string | undefined;
453
+ } | undefined;
454
+ customLocation?: {
455
+ label: string;
456
+ } | undefined;
457
+ }, {
458
+ type: "homeOffice" | "officeLocation" | "customLocation";
459
+ homeOffice?: boolean | undefined;
460
+ officeLocation?: {
461
+ label?: string | undefined;
462
+ buildingId?: string | undefined;
463
+ floorId?: string | undefined;
464
+ floorSectionId?: string | undefined;
465
+ deskId?: string | undefined;
466
+ } | undefined;
467
+ customLocation?: {
468
+ label: string;
469
+ } | undefined;
470
+ }>>;
471
+ birthdayProperties: z.ZodOptional<z.ZodObject<{
472
+ type: z.ZodEnum<["birthday", "anniversary", "custom", "other", "self"]>;
473
+ customTypeName: z.ZodOptional<z.ZodString>;
474
+ contact: z.ZodOptional<z.ZodString>;
475
+ }, "strip", z.ZodTypeAny, {
476
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
477
+ customTypeName?: string | undefined;
478
+ contact?: string | undefined;
479
+ }, {
480
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
481
+ customTypeName?: string | undefined;
482
+ contact?: string | undefined;
483
+ }>>;
484
+ }, "strip", z.ZodTypeAny, {
485
+ title: string;
486
+ start: string;
487
+ end: string;
488
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
489
+ isAllDay?: boolean | undefined;
490
+ location?: string | undefined;
491
+ description?: string | undefined;
492
+ attendees?: string[] | undefined;
493
+ reminders?: {
494
+ useDefault: boolean;
495
+ overrides?: {
496
+ method: "email" | "popup";
497
+ minutes: number;
498
+ }[] | undefined;
499
+ } | undefined;
500
+ outOfOfficeProperties?: {
501
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
502
+ declineMessage?: string | undefined;
503
+ } | undefined;
504
+ focusTimeProperties?: {
505
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
506
+ declineMessage?: string | undefined;
507
+ chatStatus?: "available" | "doNotDisturb" | undefined;
508
+ } | undefined;
509
+ workingLocationProperties?: {
510
+ type: "homeOffice" | "officeLocation" | "customLocation";
511
+ homeOffice?: boolean | undefined;
512
+ officeLocation?: {
513
+ label?: string | undefined;
514
+ buildingId?: string | undefined;
515
+ floorId?: string | undefined;
516
+ floorSectionId?: string | undefined;
517
+ deskId?: string | undefined;
518
+ } | undefined;
519
+ customLocation?: {
520
+ label: string;
521
+ } | undefined;
522
+ } | undefined;
523
+ birthdayProperties?: {
524
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
525
+ customTypeName?: string | undefined;
526
+ contact?: string | undefined;
527
+ } | undefined;
528
+ }, {
529
+ title: string;
530
+ start: string;
531
+ end: string;
532
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
533
+ isAllDay?: boolean | undefined;
534
+ location?: string | undefined;
535
+ description?: string | undefined;
536
+ attendees?: string[] | undefined;
537
+ reminders?: {
538
+ useDefault: boolean;
539
+ overrides?: {
540
+ method: "email" | "popup";
541
+ minutes: number;
542
+ }[] | undefined;
543
+ } | undefined;
544
+ outOfOfficeProperties?: {
545
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
546
+ declineMessage?: string | undefined;
547
+ } | undefined;
548
+ focusTimeProperties?: {
549
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
550
+ declineMessage?: string | undefined;
551
+ chatStatus?: "available" | "doNotDisturb" | undefined;
552
+ } | undefined;
553
+ workingLocationProperties?: {
554
+ type: "homeOffice" | "officeLocation" | "customLocation";
555
+ homeOffice?: boolean | undefined;
556
+ officeLocation?: {
557
+ label?: string | undefined;
558
+ buildingId?: string | undefined;
559
+ floorId?: string | undefined;
560
+ floorSectionId?: string | undefined;
561
+ deskId?: string | undefined;
562
+ } | undefined;
563
+ customLocation?: {
564
+ label: string;
565
+ } | undefined;
566
+ } | undefined;
567
+ birthdayProperties?: {
568
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
569
+ customTypeName?: string | undefined;
570
+ contact?: string | undefined;
571
+ } | undefined;
572
+ }>, {
573
+ title: string;
574
+ start: string;
575
+ end: string;
576
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
577
+ isAllDay?: boolean | undefined;
578
+ location?: string | undefined;
579
+ description?: string | undefined;
580
+ attendees?: string[] | undefined;
581
+ reminders?: {
582
+ useDefault: boolean;
583
+ overrides?: {
584
+ method: "email" | "popup";
585
+ minutes: number;
586
+ }[] | undefined;
587
+ } | undefined;
588
+ outOfOfficeProperties?: {
589
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
590
+ declineMessage?: string | undefined;
591
+ } | undefined;
592
+ focusTimeProperties?: {
593
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
594
+ declineMessage?: string | undefined;
595
+ chatStatus?: "available" | "doNotDisturb" | undefined;
596
+ } | undefined;
597
+ workingLocationProperties?: {
598
+ type: "homeOffice" | "officeLocation" | "customLocation";
599
+ homeOffice?: boolean | undefined;
600
+ officeLocation?: {
601
+ label?: string | undefined;
602
+ buildingId?: string | undefined;
603
+ floorId?: string | undefined;
604
+ floorSectionId?: string | undefined;
605
+ deskId?: string | undefined;
606
+ } | undefined;
607
+ customLocation?: {
608
+ label: string;
609
+ } | undefined;
610
+ } | undefined;
611
+ birthdayProperties?: {
612
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
613
+ customTypeName?: string | undefined;
614
+ contact?: string | undefined;
615
+ } | undefined;
616
+ }, {
617
+ title: string;
618
+ start: string;
619
+ end: string;
620
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
621
+ isAllDay?: boolean | undefined;
622
+ location?: string | undefined;
623
+ description?: string | undefined;
624
+ attendees?: string[] | undefined;
625
+ reminders?: {
626
+ useDefault: boolean;
627
+ overrides?: {
628
+ method: "email" | "popup";
629
+ minutes: number;
630
+ }[] | undefined;
631
+ } | undefined;
632
+ outOfOfficeProperties?: {
633
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
634
+ declineMessage?: string | undefined;
635
+ } | undefined;
636
+ focusTimeProperties?: {
637
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
638
+ declineMessage?: string | undefined;
639
+ chatStatus?: "available" | "doNotDisturb" | undefined;
640
+ } | undefined;
641
+ workingLocationProperties?: {
642
+ type: "homeOffice" | "officeLocation" | "customLocation";
643
+ homeOffice?: boolean | undefined;
644
+ officeLocation?: {
645
+ label?: string | undefined;
646
+ buildingId?: string | undefined;
647
+ floorId?: string | undefined;
648
+ floorSectionId?: string | undefined;
649
+ deskId?: string | undefined;
650
+ } | undefined;
651
+ customLocation?: {
652
+ label: string;
653
+ } | undefined;
654
+ } | undefined;
655
+ birthdayProperties?: {
656
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
657
+ customTypeName?: string | undefined;
658
+ contact?: string | undefined;
659
+ } | undefined;
660
+ }>, {
661
+ title: string;
662
+ start: string;
663
+ end: string;
664
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
665
+ isAllDay?: boolean | undefined;
666
+ location?: string | undefined;
667
+ description?: string | undefined;
668
+ attendees?: string[] | undefined;
669
+ reminders?: {
670
+ useDefault: boolean;
671
+ overrides?: {
672
+ method: "email" | "popup";
673
+ minutes: number;
674
+ }[] | undefined;
675
+ } | undefined;
676
+ outOfOfficeProperties?: {
677
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
678
+ declineMessage?: string | undefined;
679
+ } | undefined;
680
+ focusTimeProperties?: {
681
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
682
+ declineMessage?: string | undefined;
683
+ chatStatus?: "available" | "doNotDisturb" | undefined;
684
+ } | undefined;
685
+ workingLocationProperties?: {
686
+ type: "homeOffice" | "officeLocation" | "customLocation";
687
+ homeOffice?: boolean | undefined;
688
+ officeLocation?: {
689
+ label?: string | undefined;
690
+ buildingId?: string | undefined;
691
+ floorId?: string | undefined;
692
+ floorSectionId?: string | undefined;
693
+ deskId?: string | undefined;
694
+ } | undefined;
695
+ customLocation?: {
696
+ label: string;
697
+ } | undefined;
698
+ } | undefined;
699
+ birthdayProperties?: {
700
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
701
+ customTypeName?: string | undefined;
702
+ contact?: string | undefined;
703
+ } | undefined;
704
+ }, {
705
+ title: string;
706
+ start: string;
707
+ end: string;
708
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
709
+ isAllDay?: boolean | undefined;
710
+ location?: string | undefined;
711
+ description?: string | undefined;
712
+ attendees?: string[] | undefined;
713
+ reminders?: {
714
+ useDefault: boolean;
715
+ overrides?: {
716
+ method: "email" | "popup";
717
+ minutes: number;
718
+ }[] | undefined;
719
+ } | undefined;
720
+ outOfOfficeProperties?: {
721
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
722
+ declineMessage?: string | undefined;
723
+ } | undefined;
724
+ focusTimeProperties?: {
725
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
726
+ declineMessage?: string | undefined;
727
+ chatStatus?: "available" | "doNotDisturb" | undefined;
728
+ } | undefined;
729
+ workingLocationProperties?: {
730
+ type: "homeOffice" | "officeLocation" | "customLocation";
731
+ homeOffice?: boolean | undefined;
732
+ officeLocation?: {
733
+ label?: string | undefined;
734
+ buildingId?: string | undefined;
735
+ floorId?: string | undefined;
736
+ floorSectionId?: string | undefined;
737
+ deskId?: string | undefined;
738
+ } | undefined;
739
+ customLocation?: {
740
+ label: string;
741
+ } | undefined;
742
+ } | undefined;
743
+ birthdayProperties?: {
744
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
745
+ customTypeName?: string | undefined;
746
+ contact?: string | undefined;
747
+ } | undefined;
748
+ }>, {
749
+ title: string;
750
+ start: string;
751
+ end: string;
752
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
753
+ isAllDay?: boolean | undefined;
754
+ location?: string | undefined;
755
+ description?: string | undefined;
756
+ attendees?: string[] | undefined;
757
+ reminders?: {
758
+ useDefault: boolean;
759
+ overrides?: {
760
+ method: "email" | "popup";
761
+ minutes: number;
762
+ }[] | undefined;
763
+ } | undefined;
764
+ outOfOfficeProperties?: {
765
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
766
+ declineMessage?: string | undefined;
767
+ } | undefined;
768
+ focusTimeProperties?: {
769
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
770
+ declineMessage?: string | undefined;
771
+ chatStatus?: "available" | "doNotDisturb" | undefined;
772
+ } | undefined;
773
+ workingLocationProperties?: {
774
+ type: "homeOffice" | "officeLocation" | "customLocation";
775
+ homeOffice?: boolean | undefined;
776
+ officeLocation?: {
777
+ label?: string | undefined;
778
+ buildingId?: string | undefined;
779
+ floorId?: string | undefined;
780
+ floorSectionId?: string | undefined;
781
+ deskId?: string | undefined;
782
+ } | undefined;
783
+ customLocation?: {
784
+ label: string;
785
+ } | undefined;
786
+ } | undefined;
787
+ birthdayProperties?: {
788
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
789
+ customTypeName?: string | undefined;
790
+ contact?: string | undefined;
791
+ } | undefined;
792
+ }, {
793
+ title: string;
794
+ start: string;
795
+ end: string;
796
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
797
+ isAllDay?: boolean | undefined;
798
+ location?: string | undefined;
799
+ description?: string | undefined;
800
+ attendees?: string[] | undefined;
801
+ reminders?: {
802
+ useDefault: boolean;
803
+ overrides?: {
804
+ method: "email" | "popup";
805
+ minutes: number;
806
+ }[] | undefined;
807
+ } | undefined;
808
+ outOfOfficeProperties?: {
809
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
810
+ declineMessage?: string | undefined;
811
+ } | undefined;
812
+ focusTimeProperties?: {
813
+ autoDeclineMode: "declineNone" | "declineAllConflictingInvitations" | "declineOnlyNewConflictingInvitations";
814
+ declineMessage?: string | undefined;
815
+ chatStatus?: "available" | "doNotDisturb" | undefined;
816
+ } | undefined;
817
+ workingLocationProperties?: {
818
+ type: "homeOffice" | "officeLocation" | "customLocation";
819
+ homeOffice?: boolean | undefined;
820
+ officeLocation?: {
821
+ label?: string | undefined;
822
+ buildingId?: string | undefined;
823
+ floorId?: string | undefined;
824
+ floorSectionId?: string | undefined;
825
+ deskId?: string | undefined;
826
+ } | undefined;
827
+ customLocation?: {
828
+ label: string;
829
+ } | undefined;
830
+ } | undefined;
831
+ birthdayProperties?: {
832
+ type: "custom" | "birthday" | "anniversary" | "other" | "self";
833
+ customTypeName?: string | undefined;
834
+ contact?: string | undefined;
835
+ } | undefined;
836
+ }>;
837
+ /**
838
+ * Type export for validated create event request
839
+ */
840
+ export type ValidatedCreateEventRequest = z.infer<typeof CreateEventRequestSchema>;
841
+ /**
842
+ * Validate a create event request
843
+ * @param request - The event creation request to validate
844
+ * @returns Validation result with parsed data or error
845
+ */
846
+ export declare function validateCreateEventRequest(request: unknown): {
847
+ success: boolean;
848
+ data?: ValidatedCreateEventRequest;
849
+ error?: z.ZodError;
850
+ };
130
851
  //# sourceMappingURL=validation.d.ts.map