@read-frog/api-contract 0.22.0 → 0.24.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.
package/dist/index.d.ts CHANGED
@@ -87,6 +87,10 @@ export declare const HostedAiTierRestrictedDataSchema: z.ZodObject<{
87
87
  advance: "advance";
88
88
  normal: "normal";
89
89
  }>;
90
+ upgradeTo: z.ZodEnum<{
91
+ pro: "pro";
92
+ ultra: "ultra";
93
+ }>;
90
94
  }, z.core.$strict>;
91
95
  export declare const HostedAiQuotaExhaustedDataSchema: z.ZodObject<{
92
96
  modelTier: z.ZodEnum<{
@@ -97,6 +101,8 @@ export declare const HostedAiQuotaExhaustedDataSchema: z.ZodObject<{
97
101
  "custom-action-guest-daily-v1": "custom-action-guest-daily-v1";
98
102
  "custom-action-pro-daily-v1": "custom-action-pro-daily-v1";
99
103
  "custom-action-user-daily-v1": "custom-action-user-daily-v1";
104
+ "pro-weekly-v1": "pro-weekly-v1";
105
+ "pro-weekly-v2": "pro-weekly-v2";
100
106
  "ultra-weekly-v1": "ultra-weekly-v1";
101
107
  }>;
102
108
  usedPercent: z.ZodNumber;
@@ -125,6 +131,10 @@ export declare const PUBLIC_APP_ERROR_DEFS: {
125
131
  advance: "advance";
126
132
  normal: "normal";
127
133
  }>;
134
+ upgradeTo: z.ZodEnum<{
135
+ pro: "pro";
136
+ ultra: "ultra";
137
+ }>;
128
138
  }, z.core.$strict>;
129
139
  readonly message: "This Built-in AI tier is not available for this account";
130
140
  readonly status: 403;
@@ -139,6 +149,8 @@ export declare const PUBLIC_APP_ERROR_DEFS: {
139
149
  "custom-action-guest-daily-v1": "custom-action-guest-daily-v1";
140
150
  "custom-action-pro-daily-v1": "custom-action-pro-daily-v1";
141
151
  "custom-action-user-daily-v1": "custom-action-user-daily-v1";
152
+ "pro-weekly-v1": "pro-weekly-v1";
153
+ "pro-weekly-v2": "pro-weekly-v2";
142
154
  "ultra-weekly-v1": "ultra-weekly-v1";
143
155
  }>;
144
156
  usedPercent: z.ZodNumber;
@@ -255,6 +267,10 @@ export declare const PUBLIC_APP_ERROR_DEFS: {
255
267
  readonly message: "A subscription change is already scheduled";
256
268
  readonly status: 409;
257
269
  };
270
+ readonly BILLING_CHECKOUT_CONFLICT: {
271
+ readonly message: "Please start a new checkout from the pricing page";
272
+ readonly status: 409;
273
+ };
258
274
  readonly CARD_NOT_REVIEWABLE: {
259
275
  readonly message: "Card cannot be reviewed in its current state";
260
276
  readonly status: 409;
@@ -287,6 +303,22 @@ export declare const PUBLIC_APP_ERROR_DEFS: {
287
303
  readonly message: "Card status change is unavailable";
288
304
  readonly status: 409;
289
305
  };
306
+ readonly RESCHEDULE_PLAN_EXPIRED: {
307
+ readonly message: "The reschedule plan has expired; preview it again";
308
+ readonly status: 409;
309
+ };
310
+ readonly RESCHEDULE_STALE: {
311
+ readonly message: "Cards changed after the reschedule preview; preview it again";
312
+ readonly status: 409;
313
+ };
314
+ readonly RESCHEDULE_PREVIEW_TIMEOUT: {
315
+ readonly message: "Planning the reschedule took too long";
316
+ readonly status: 503;
317
+ };
318
+ readonly RESCHEDULE_DAILY_LIMIT_INVALID: {
319
+ readonly message: "The daily limit is outside the range a reschedule may suggest";
320
+ readonly status: 422;
321
+ };
290
322
  readonly NOTEBASE_VIEW_NOT_FOUND: {
291
323
  readonly message: "Notebase view not found";
292
324
  readonly status: 404;
@@ -344,6 +376,99 @@ export declare const PUBLIC_APP_ERROR_DEFS: {
344
376
  readonly message: "This email link is not valid";
345
377
  readonly status: 400;
346
378
  };
379
+ readonly PDF_TRANSLATION_UNAVAILABLE: {
380
+ readonly message: "PDF translation is not available right now";
381
+ readonly status: 503;
382
+ };
383
+ readonly PDF_TRANSLATION_NOT_FOUND: {
384
+ readonly message: "PDF translation not found";
385
+ readonly status: 404;
386
+ };
387
+ readonly PDF_TRANSLATION_UPLOAD_NOT_FOUND: {
388
+ readonly data: z.ZodObject<{
389
+ uploadId: z.ZodUUID;
390
+ jobId: z.ZodOptional<z.ZodUUID>;
391
+ }, z.core.$strict>;
392
+ readonly message: "PDF upload not found";
393
+ readonly status: 404;
394
+ };
395
+ readonly PDF_TRANSLATION_UPLOAD_EXPIRED: {
396
+ readonly data: z.ZodObject<{
397
+ uploadId: z.ZodUUID;
398
+ jobId: z.ZodOptional<z.ZodUUID>;
399
+ }, z.core.$strict>;
400
+ readonly message: "The PDF upload has expired; upload the file again";
401
+ readonly status: 410;
402
+ };
403
+ readonly PDF_TRANSLATION_UPLOAD_NOT_COMPLETED: {
404
+ readonly data: z.ZodObject<{
405
+ uploadId: z.ZodUUID;
406
+ jobId: z.ZodOptional<z.ZodUUID>;
407
+ }, z.core.$strict>;
408
+ readonly message: "The PDF upload has not been completed";
409
+ readonly status: 409;
410
+ };
411
+ readonly PDF_TRANSLATION_FILE_TOO_LARGE: {
412
+ readonly message: "The PDF exceeds the maximum allowed size";
413
+ readonly status: 413;
414
+ };
415
+ readonly PDF_TRANSLATION_INVALID_PDF: {
416
+ readonly data: z.ZodObject<{
417
+ uploadId: z.ZodUUID;
418
+ jobId: z.ZodOptional<z.ZodUUID>;
419
+ }, z.core.$strict>;
420
+ readonly message: "The file is not a readable PDF";
421
+ readonly status: 422;
422
+ };
423
+ readonly PDF_TRANSLATION_ALREADY_TRANSLATED: {
424
+ readonly data: z.ZodObject<{
425
+ uploadId: z.ZodUUID;
426
+ jobId: z.ZodOptional<z.ZodUUID>;
427
+ }, z.core.$strict>;
428
+ readonly message: "This PDF is already a translation; upload the original instead";
429
+ readonly status: 422;
430
+ };
431
+ readonly PDF_TRANSLATION_PAGE_LIMIT_EXCEEDED: {
432
+ readonly data: z.ZodObject<{
433
+ uploadId: z.ZodUUID;
434
+ jobId: z.ZodOptional<z.ZodUUID>;
435
+ }, z.core.$strict>;
436
+ readonly message: "The PDF has more pages than one translation allows";
437
+ readonly status: 422;
438
+ };
439
+ readonly PDF_TRANSLATION_QUEUE_FULL: {
440
+ readonly message: "Too many PDF translations are waiting; try again when some have finished";
441
+ readonly status: 409;
442
+ };
443
+ readonly PDF_TRANSLATION_IDEMPOTENCY_CONFLICT: {
444
+ readonly message: "This idempotency key was already used for a different PDF translation";
445
+ readonly status: 409;
446
+ };
447
+ readonly PDF_TRANSLATION_INSUFFICIENT_CREDIT: {
448
+ readonly data: z.ZodObject<{
449
+ estimatedCostNanoUsd: z.ZodNumber;
450
+ remainingNanoUsd: z.ZodNumber;
451
+ resetAt: z.ZodNullable<z.ZodISODateTime>;
452
+ }, z.core.$strict>;
453
+ readonly message: "Not enough Built-in AI credit left to translate this PDF";
454
+ readonly status: 429;
455
+ };
456
+ readonly PDF_TRANSLATION_NOT_CANCELLABLE: {
457
+ readonly message: "This PDF translation has already finished";
458
+ readonly status: 409;
459
+ };
460
+ readonly PDF_TRANSLATION_NOT_READY: {
461
+ readonly message: "The translated PDF is not available";
462
+ readonly status: 409;
463
+ };
464
+ readonly PDF_TRANSLATION_DOWNLOAD_RESTRICTED: {
465
+ readonly message: "Downloading a translated PDF needs a Pro or Ultra plan";
466
+ readonly status: 403;
467
+ };
468
+ readonly PDF_TRANSLATION_NOT_DELETABLE: {
469
+ readonly message: "Cancel this PDF translation before deleting it";
470
+ readonly status: 409;
471
+ };
347
472
  };
348
473
  export type PublicAppErrorCode = keyof typeof PUBLIC_APP_ERROR_DEFS;
349
474
  export type PublicAppErrorData<TCode extends PublicAppErrorCode> = (typeof PUBLIC_APP_ERROR_DEFS)[TCode] extends {
@@ -369,6 +494,10 @@ export declare function getPublicErrorDefinition<TCode extends PublicAppErrorCod
369
494
  advance: "advance";
370
495
  normal: "normal";
371
496
  }>;
497
+ upgradeTo: z.ZodEnum<{
498
+ pro: "pro";
499
+ ultra: "ultra";
500
+ }>;
372
501
  }, z.core.$strict>;
373
502
  readonly message: "This Built-in AI tier is not available for this account";
374
503
  readonly status: 403;
@@ -383,6 +512,8 @@ export declare function getPublicErrorDefinition<TCode extends PublicAppErrorCod
383
512
  "custom-action-guest-daily-v1": "custom-action-guest-daily-v1";
384
513
  "custom-action-pro-daily-v1": "custom-action-pro-daily-v1";
385
514
  "custom-action-user-daily-v1": "custom-action-user-daily-v1";
515
+ "pro-weekly-v1": "pro-weekly-v1";
516
+ "pro-weekly-v2": "pro-weekly-v2";
386
517
  "ultra-weekly-v1": "ultra-weekly-v1";
387
518
  }>;
388
519
  usedPercent: z.ZodNumber;
@@ -499,6 +630,10 @@ export declare function getPublicErrorDefinition<TCode extends PublicAppErrorCod
499
630
  readonly message: "A subscription change is already scheduled";
500
631
  readonly status: 409;
501
632
  };
633
+ readonly BILLING_CHECKOUT_CONFLICT: {
634
+ readonly message: "Please start a new checkout from the pricing page";
635
+ readonly status: 409;
636
+ };
502
637
  readonly CARD_NOT_REVIEWABLE: {
503
638
  readonly message: "Card cannot be reviewed in its current state";
504
639
  readonly status: 409;
@@ -531,6 +666,22 @@ export declare function getPublicErrorDefinition<TCode extends PublicAppErrorCod
531
666
  readonly message: "Card status change is unavailable";
532
667
  readonly status: 409;
533
668
  };
669
+ readonly RESCHEDULE_PLAN_EXPIRED: {
670
+ readonly message: "The reschedule plan has expired; preview it again";
671
+ readonly status: 409;
672
+ };
673
+ readonly RESCHEDULE_STALE: {
674
+ readonly message: "Cards changed after the reschedule preview; preview it again";
675
+ readonly status: 409;
676
+ };
677
+ readonly RESCHEDULE_PREVIEW_TIMEOUT: {
678
+ readonly message: "Planning the reschedule took too long";
679
+ readonly status: 503;
680
+ };
681
+ readonly RESCHEDULE_DAILY_LIMIT_INVALID: {
682
+ readonly message: "The daily limit is outside the range a reschedule may suggest";
683
+ readonly status: 422;
684
+ };
534
685
  readonly NOTEBASE_VIEW_NOT_FOUND: {
535
686
  readonly message: "Notebase view not found";
536
687
  readonly status: 404;
@@ -588,6 +739,99 @@ export declare function getPublicErrorDefinition<TCode extends PublicAppErrorCod
588
739
  readonly message: "This email link is not valid";
589
740
  readonly status: 400;
590
741
  };
742
+ readonly PDF_TRANSLATION_UNAVAILABLE: {
743
+ readonly message: "PDF translation is not available right now";
744
+ readonly status: 503;
745
+ };
746
+ readonly PDF_TRANSLATION_NOT_FOUND: {
747
+ readonly message: "PDF translation not found";
748
+ readonly status: 404;
749
+ };
750
+ readonly PDF_TRANSLATION_UPLOAD_NOT_FOUND: {
751
+ readonly data: z.ZodObject<{
752
+ uploadId: z.ZodUUID;
753
+ jobId: z.ZodOptional<z.ZodUUID>;
754
+ }, z.core.$strict>;
755
+ readonly message: "PDF upload not found";
756
+ readonly status: 404;
757
+ };
758
+ readonly PDF_TRANSLATION_UPLOAD_EXPIRED: {
759
+ readonly data: z.ZodObject<{
760
+ uploadId: z.ZodUUID;
761
+ jobId: z.ZodOptional<z.ZodUUID>;
762
+ }, z.core.$strict>;
763
+ readonly message: "The PDF upload has expired; upload the file again";
764
+ readonly status: 410;
765
+ };
766
+ readonly PDF_TRANSLATION_UPLOAD_NOT_COMPLETED: {
767
+ readonly data: z.ZodObject<{
768
+ uploadId: z.ZodUUID;
769
+ jobId: z.ZodOptional<z.ZodUUID>;
770
+ }, z.core.$strict>;
771
+ readonly message: "The PDF upload has not been completed";
772
+ readonly status: 409;
773
+ };
774
+ readonly PDF_TRANSLATION_FILE_TOO_LARGE: {
775
+ readonly message: "The PDF exceeds the maximum allowed size";
776
+ readonly status: 413;
777
+ };
778
+ readonly PDF_TRANSLATION_INVALID_PDF: {
779
+ readonly data: z.ZodObject<{
780
+ uploadId: z.ZodUUID;
781
+ jobId: z.ZodOptional<z.ZodUUID>;
782
+ }, z.core.$strict>;
783
+ readonly message: "The file is not a readable PDF";
784
+ readonly status: 422;
785
+ };
786
+ readonly PDF_TRANSLATION_ALREADY_TRANSLATED: {
787
+ readonly data: z.ZodObject<{
788
+ uploadId: z.ZodUUID;
789
+ jobId: z.ZodOptional<z.ZodUUID>;
790
+ }, z.core.$strict>;
791
+ readonly message: "This PDF is already a translation; upload the original instead";
792
+ readonly status: 422;
793
+ };
794
+ readonly PDF_TRANSLATION_PAGE_LIMIT_EXCEEDED: {
795
+ readonly data: z.ZodObject<{
796
+ uploadId: z.ZodUUID;
797
+ jobId: z.ZodOptional<z.ZodUUID>;
798
+ }, z.core.$strict>;
799
+ readonly message: "The PDF has more pages than one translation allows";
800
+ readonly status: 422;
801
+ };
802
+ readonly PDF_TRANSLATION_QUEUE_FULL: {
803
+ readonly message: "Too many PDF translations are waiting; try again when some have finished";
804
+ readonly status: 409;
805
+ };
806
+ readonly PDF_TRANSLATION_IDEMPOTENCY_CONFLICT: {
807
+ readonly message: "This idempotency key was already used for a different PDF translation";
808
+ readonly status: 409;
809
+ };
810
+ readonly PDF_TRANSLATION_INSUFFICIENT_CREDIT: {
811
+ readonly data: z.ZodObject<{
812
+ estimatedCostNanoUsd: z.ZodNumber;
813
+ remainingNanoUsd: z.ZodNumber;
814
+ resetAt: z.ZodNullable<z.ZodISODateTime>;
815
+ }, z.core.$strict>;
816
+ readonly message: "Not enough Built-in AI credit left to translate this PDF";
817
+ readonly status: 429;
818
+ };
819
+ readonly PDF_TRANSLATION_NOT_CANCELLABLE: {
820
+ readonly message: "This PDF translation has already finished";
821
+ readonly status: 409;
822
+ };
823
+ readonly PDF_TRANSLATION_NOT_READY: {
824
+ readonly message: "The translated PDF is not available";
825
+ readonly status: 409;
826
+ };
827
+ readonly PDF_TRANSLATION_DOWNLOAD_RESTRICTED: {
828
+ readonly message: "Downloading a translated PDF needs a Pro or Ultra plan";
829
+ readonly status: 403;
830
+ };
831
+ readonly PDF_TRANSLATION_NOT_DELETABLE: {
832
+ readonly message: "Cancel this PDF translation before deleting it";
833
+ readonly status: 409;
834
+ };
591
835
  }[TCode];
592
836
  export declare function pickPublicErrorMap<const TCodes extends readonly PublicAppErrorCode[]>(...codes: TCodes): Pick<ErrorMap, TCodes[number]>;
593
837
  //#endregion
@@ -783,6 +1027,77 @@ export declare const billingCreateCheckoutSessionInputSchema: z.ZodObject<{
783
1027
  pro: "pro";
784
1028
  ultra: "ultra";
785
1029
  }>>;
1030
+ requestId: z.ZodOptional<z.ZodUUID>;
1031
+ attribution: z.ZodOptional<z.ZodObject<{
1032
+ journeyId: z.ZodUUID;
1033
+ actual: z.ZodObject<{
1034
+ entry: z.ZodEnum<{
1035
+ billing_settings: "billing_settings";
1036
+ content_link: "content_link";
1037
+ direct: "direct";
1038
+ ebook_limit: "ebook_limit";
1039
+ ebook_upload_gate: "ebook_upload_gate";
1040
+ extension_notebase_limit: "extension_notebase_limit";
1041
+ extension_plan_badge: "extension_plan_badge";
1042
+ extension_quota_exhausted: "extension_quota_exhausted";
1043
+ extension_upgrade: "extension_upgrade";
1044
+ extension_video_quota: "extension_video_quota";
1045
+ featurebase_banner: "featurebase_banner";
1046
+ mcp_limit: "mcp_limit";
1047
+ notebase_header: "notebase_header";
1048
+ notebase_limit: "notebase_limit";
1049
+ pdf_download_gate: "pdf_download_gate";
1050
+ pdf_free_trial_card: "pdf_free_trial_card";
1051
+ pdf_trial_exhausted: "pdf_trial_exhausted";
1052
+ pdf_upgrade_notice: "pdf_upgrade_notice";
1053
+ pdf_watermark_preview: "pdf_watermark_preview";
1054
+ site_footer: "site_footer";
1055
+ site_nav: "site_nav";
1056
+ unknown: "unknown";
1057
+ }>;
1058
+ occurredAt: z.ZodISODateTime;
1059
+ campaign: z.ZodOptional<z.ZodString>;
1060
+ sourceRoute: z.ZodOptional<z.ZodString>;
1061
+ }, z.core.$strict>;
1062
+ lastNonDirect: z.ZodOptional<z.ZodObject<{
1063
+ entry: z.ZodEnum<{
1064
+ billing_settings: "billing_settings";
1065
+ content_link: "content_link";
1066
+ direct: "direct";
1067
+ ebook_limit: "ebook_limit";
1068
+ ebook_upload_gate: "ebook_upload_gate";
1069
+ extension_notebase_limit: "extension_notebase_limit";
1070
+ extension_plan_badge: "extension_plan_badge";
1071
+ extension_quota_exhausted: "extension_quota_exhausted";
1072
+ extension_upgrade: "extension_upgrade";
1073
+ extension_video_quota: "extension_video_quota";
1074
+ featurebase_banner: "featurebase_banner";
1075
+ mcp_limit: "mcp_limit";
1076
+ notebase_header: "notebase_header";
1077
+ notebase_limit: "notebase_limit";
1078
+ pdf_download_gate: "pdf_download_gate";
1079
+ pdf_free_trial_card: "pdf_free_trial_card";
1080
+ pdf_trial_exhausted: "pdf_trial_exhausted";
1081
+ pdf_upgrade_notice: "pdf_upgrade_notice";
1082
+ pdf_watermark_preview: "pdf_watermark_preview";
1083
+ site_footer: "site_footer";
1084
+ site_nav: "site_nav";
1085
+ unknown: "unknown";
1086
+ }>;
1087
+ occurredAt: z.ZodISODateTime;
1088
+ campaign: z.ZodOptional<z.ZodString>;
1089
+ sourceRoute: z.ZodOptional<z.ZodString>;
1090
+ }, z.core.$strict>>;
1091
+ acquisition: z.ZodOptional<z.ZodObject<{
1092
+ occurredAt: z.ZodISODateTime;
1093
+ utmSource: z.ZodOptional<z.ZodString>;
1094
+ utmMedium: z.ZodOptional<z.ZodString>;
1095
+ utmCampaign: z.ZodOptional<z.ZodString>;
1096
+ utmContent: z.ZodOptional<z.ZodString>;
1097
+ utmTerm: z.ZodOptional<z.ZodString>;
1098
+ referrerDomain: z.ZodOptional<z.ZodString>;
1099
+ }, z.core.$strict>>;
1100
+ }, z.core.$strict>>;
786
1101
  }, z.core.$strict>;
787
1102
  export type BillingCreateCheckoutSessionInput = z.infer<typeof billingCreateCheckoutSessionInputSchema>;
788
1103
  export declare const billingCreateCustomerPortalSessionInputSchema: z.ZodObject<{
@@ -1503,6 +1818,34 @@ export declare const emailCategoryStateSchema: z.ZodObject<{
1503
1818
  subscribed: z.ZodBoolean;
1504
1819
  }, z.core.$strict>;
1505
1820
  export type EmailCategoryState = z.infer<typeof emailCategoryStateSchema>;
1821
+ /**
1822
+ * The category whose emails a person can time: Practice reminders, seeded as
1823
+ * `practice` (packages/db's migration 0067). The settings page shows the
1824
+ * time under its switch.
1825
+ */
1826
+ export declare const PRACTICE_REMINDER_CATEGORY_KEY = "practice";
1827
+ /**
1828
+ * When practice reminders reach someone who never chose a time: 18:00 in
1829
+ * their own time zone. The page shows it as the choice until one is made;
1830
+ * Ribbit's reminder automation sets the same as its own time, for people
1831
+ * without one (docs/ribbit/phase-3-automations.md).
1832
+ */
1833
+ export declare const PRACTICE_REMINDER_DEFAULT_TIME = "18:00";
1834
+ /** A time of day on the hour, `HH:00`: Ribbit takes people into a schedule once an hour. */
1835
+ export declare const practiceReminderTimeSchema: z.ZodString;
1836
+ export type PracticeReminderTime = z.infer<typeof practiceReminderTimeSchema>;
1837
+ /** The times the page offers: every hour of the day. */
1838
+ export declare const PRACTICE_REMINDER_TIMES: readonly PracticeReminderTime[];
1839
+ /**
1840
+ * The reminders area of `user_preferences`, as the database holds it: what
1841
+ * is not there, or no longer reads, is the default. `practiceTime` is the
1842
+ * practice reminder's time of day, in the person's own zone; null until they
1843
+ * choose one.
1844
+ */
1845
+ export declare const remindersPreferencesSchema: z.ZodObject<{
1846
+ practiceTime: z.ZodDefault<z.ZodCatch<z.ZodNullable<z.ZodString>>>;
1847
+ }, z.core.$strip>;
1848
+ export type RemindersPreferences = z.infer<typeof remindersPreferencesSchema>;
1506
1849
  export declare const emailPreferencesStateSchema: z.ZodObject<{
1507
1850
  categories: z.ZodArray<z.ZodObject<{
1508
1851
  key: z.ZodString;
@@ -1513,6 +1856,7 @@ export declare const emailPreferencesStateSchema: z.ZodObject<{
1513
1856
  subscribed: z.ZodBoolean;
1514
1857
  }, z.core.$strict>>;
1515
1858
  unsubscribedAll: z.ZodBoolean;
1859
+ practiceReminderTime: z.ZodNullable<z.ZodString>;
1516
1860
  }, z.core.$strict>;
1517
1861
  export type EmailPreferencesState = z.infer<typeof emailPreferencesStateSchema>;
1518
1862
  /**
@@ -1529,6 +1873,7 @@ export declare const emailPreferencesByTokenStateSchema: z.ZodObject<{
1529
1873
  subscribed: z.ZodBoolean;
1530
1874
  }, z.core.$strict>>;
1531
1875
  unsubscribedAll: z.ZodBoolean;
1876
+ practiceReminderTime: z.ZodNullable<z.ZodString>;
1532
1877
  maskedEmail: z.ZodString;
1533
1878
  highlightCategory: z.ZodNullable<z.ZodString>;
1534
1879
  }, z.core.$strict>;
@@ -1550,6 +1895,7 @@ export type EmailPreferencesGetInput = z.infer<typeof emailPreferencesGetInputSc
1550
1895
  export declare const emailPreferencesUpdateInputSchema: z.ZodObject<{
1551
1896
  categories: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
1552
1897
  unsubscribedAll: z.ZodOptional<z.ZodBoolean>;
1898
+ practiceReminderTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1553
1899
  locale: z.ZodEnum<{
1554
1900
  en: "en";
1555
1901
  es: "es";
@@ -1581,6 +1927,7 @@ export type EmailPreferencesGetByTokenInput = z.infer<typeof emailPreferencesGet
1581
1927
  export declare const emailPreferencesUpdateByTokenInputSchema: z.ZodObject<{
1582
1928
  categories: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
1583
1929
  unsubscribedAll: z.ZodOptional<z.ZodBoolean>;
1930
+ practiceReminderTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1584
1931
  token: z.ZodString;
1585
1932
  locale: z.ZodEnum<{
1586
1933
  en: "en";
@@ -1650,6 +1997,7 @@ export declare const HostedAiFeatureSchema: z.ZodEnum<{
1650
1997
  languageDetection: "languageDetection";
1651
1998
  noteSuggestion: "noteSuggestion";
1652
1999
  pageTranslation: "pageTranslation";
2000
+ pdfTranslation: "pdfTranslation";
1653
2001
  selectionTranslation: "selectionTranslation";
1654
2002
  videoSubtitles: "videoSubtitles";
1655
2003
  }>;
@@ -1736,16 +2084,32 @@ export declare const HOSTED_AI_CLIENT_STREAM_PART_TYPES: readonly ["text-delta",
1736
2084
  * useful response rather than a validation error.
1737
2085
  */
1738
2086
  export declare const HostedAiStatusInputSchema: z.ZodObject<{}, z.core.$strip>;
2087
+ /**
2088
+ * `pro_required` means the Pro plan or any plan above it; `ultra_required`
2089
+ * means Ultra. Appended last, so a client that predates a value falls back on
2090
+ * its own default instead of misreading it.
2091
+ */
1739
2092
  export declare const HostedAiUnavailableReasonSchema: z.ZodEnum<{
1740
2093
  authentication_required: "authentication_required";
2094
+ pro_required: "pro_required";
1741
2095
  quota_exhausted: "quota_exhausted";
1742
2096
  service_unavailable: "service_unavailable";
1743
2097
  ultra_required: "ultra_required";
1744
2098
  }>;
2099
+ /**
2100
+ * The cheapest plan an account would need to buy for something it cannot use
2101
+ * now. Any plan above it works too, so `pro` reads as "Pro or Ultra".
2102
+ */
2103
+ export declare const HostedAiUpgradePlanSchema: z.ZodEnum<{
2104
+ pro: "pro";
2105
+ ultra: "ultra";
2106
+ }>;
1745
2107
  export declare const HostedAiCreditPolicyIdSchema: z.ZodEnum<{
1746
2108
  "custom-action-guest-daily-v1": "custom-action-guest-daily-v1";
1747
2109
  "custom-action-pro-daily-v1": "custom-action-pro-daily-v1";
1748
2110
  "custom-action-user-daily-v1": "custom-action-user-daily-v1";
2111
+ "pro-weekly-v1": "pro-weekly-v1";
2112
+ "pro-weekly-v2": "pro-weekly-v2";
1749
2113
  "ultra-weekly-v1": "ultra-weekly-v1";
1750
2114
  }>;
1751
2115
  export declare const HostedAiCreditPeriodKindSchema: z.ZodEnum<{
@@ -1799,6 +2163,7 @@ export declare const HostedAiRecurringCreditStatusSchema: z.ZodObject<{
1799
2163
  languageDetection: "languageDetection";
1800
2164
  noteSuggestion: "noteSuggestion";
1801
2165
  pageTranslation: "pageTranslation";
2166
+ pdfTranslation: "pdfTranslation";
1802
2167
  selectionTranslation: "selectionTranslation";
1803
2168
  videoSubtitles: "videoSubtitles";
1804
2169
  }>>;
@@ -1820,6 +2185,7 @@ export declare const HostedAiOneTimeCreditStatusSchema: z.ZodObject<{
1820
2185
  languageDetection: "languageDetection";
1821
2186
  noteSuggestion: "noteSuggestion";
1822
2187
  pageTranslation: "pageTranslation";
2188
+ pdfTranslation: "pdfTranslation";
1823
2189
  selectionTranslation: "selectionTranslation";
1824
2190
  videoSubtitles: "videoSubtitles";
1825
2191
  }>>;
@@ -1842,6 +2208,7 @@ export declare const HostedAiCreditPoolStatusSchema: z.ZodDiscriminatedUnion<[z.
1842
2208
  languageDetection: "languageDetection";
1843
2209
  noteSuggestion: "noteSuggestion";
1844
2210
  pageTranslation: "pageTranslation";
2211
+ pdfTranslation: "pdfTranslation";
1845
2212
  selectionTranslation: "selectionTranslation";
1846
2213
  videoSubtitles: "videoSubtitles";
1847
2214
  }>>;
@@ -1855,19 +2222,72 @@ export declare const HostedAiCreditPoolStatusSchema: z.ZodDiscriminatedUnion<[z.
1855
2222
  languageDetection: "languageDetection";
1856
2223
  noteSuggestion: "noteSuggestion";
1857
2224
  pageTranslation: "pageTranslation";
2225
+ pdfTranslation: "pdfTranslation";
1858
2226
  selectionTranslation: "selectionTranslation";
1859
2227
  videoSubtitles: "videoSubtitles";
1860
2228
  }>>;
1861
2229
  }, z.core.$strict>], "periodKind">;
2230
+ /** Feature-scoped credit display, separate from the legacy extension status shape. */
2231
+ export declare const HostedAiCreditPoolsInputSchema: z.ZodObject<{
2232
+ feature: z.ZodEnum<{
2233
+ customAction: "customAction";
2234
+ inputTranslation: "inputTranslation";
2235
+ languageDetection: "languageDetection";
2236
+ noteSuggestion: "noteSuggestion";
2237
+ pageTranslation: "pageTranslation";
2238
+ pdfTranslation: "pdfTranslation";
2239
+ selectionTranslation: "selectionTranslation";
2240
+ videoSubtitles: "videoSubtitles";
2241
+ }>;
2242
+ }, z.core.$strict>;
2243
+ export declare const HostedAiCreditPoolsOutputSchema: z.ZodObject<{
2244
+ pools: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2245
+ periodKind: z.ZodEnum<{
2246
+ daily: "daily";
2247
+ weekly: "weekly";
2248
+ }>;
2249
+ usedPercent: z.ZodNumber;
2250
+ resetAt: z.ZodNullable<z.ZodISODateTime>;
2251
+ features: z.ZodArray<z.ZodEnum<{
2252
+ customAction: "customAction";
2253
+ inputTranslation: "inputTranslation";
2254
+ languageDetection: "languageDetection";
2255
+ noteSuggestion: "noteSuggestion";
2256
+ pageTranslation: "pageTranslation";
2257
+ pdfTranslation: "pdfTranslation";
2258
+ selectionTranslation: "selectionTranslation";
2259
+ videoSubtitles: "videoSubtitles";
2260
+ }>>;
2261
+ }, z.core.$strict>, z.ZodObject<{
2262
+ periodKind: z.ZodLiteral<"once">;
2263
+ usedPercent: z.ZodNumber;
2264
+ expiresAt: z.ZodISODateTime;
2265
+ features: z.ZodArray<z.ZodEnum<{
2266
+ customAction: "customAction";
2267
+ inputTranslation: "inputTranslation";
2268
+ languageDetection: "languageDetection";
2269
+ noteSuggestion: "noteSuggestion";
2270
+ pageTranslation: "pageTranslation";
2271
+ pdfTranslation: "pdfTranslation";
2272
+ selectionTranslation: "selectionTranslation";
2273
+ videoSubtitles: "videoSubtitles";
2274
+ }>>;
2275
+ }, z.core.$strict>], "periodKind">>;
2276
+ }, z.core.$strict>;
1862
2277
  export declare const HostedAiTierStatusSchema: z.ZodObject<{
1863
2278
  accessAllowed: z.ZodBoolean;
1864
2279
  available: z.ZodBoolean;
1865
2280
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1866
2281
  authentication_required: "authentication_required";
2282
+ pro_required: "pro_required";
1867
2283
  quota_exhausted: "quota_exhausted";
1868
2284
  service_unavailable: "service_unavailable";
1869
2285
  ultra_required: "ultra_required";
1870
2286
  }>>;
2287
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2288
+ pro: "pro";
2289
+ ultra: "ultra";
2290
+ }>>;
1871
2291
  requiresUltra: z.ZodBoolean;
1872
2292
  modelRevision: z.ZodString;
1873
2293
  }, z.core.$strict>;
@@ -1877,10 +2297,15 @@ export declare const HostedAiFeatureStatusSchema: z.ZodObject<{
1877
2297
  available: z.ZodBoolean;
1878
2298
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1879
2299
  authentication_required: "authentication_required";
2300
+ pro_required: "pro_required";
1880
2301
  quota_exhausted: "quota_exhausted";
1881
2302
  service_unavailable: "service_unavailable";
1882
2303
  ultra_required: "ultra_required";
1883
2304
  }>>;
2305
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2306
+ pro: "pro";
2307
+ ultra: "ultra";
2308
+ }>>;
1884
2309
  requiresUltra: z.ZodBoolean;
1885
2310
  modelRevision: z.ZodString;
1886
2311
  }, z.core.$strict>;
@@ -1889,10 +2314,15 @@ export declare const HostedAiFeatureStatusSchema: z.ZodObject<{
1889
2314
  available: z.ZodBoolean;
1890
2315
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1891
2316
  authentication_required: "authentication_required";
2317
+ pro_required: "pro_required";
1892
2318
  quota_exhausted: "quota_exhausted";
1893
2319
  service_unavailable: "service_unavailable";
1894
2320
  ultra_required: "ultra_required";
1895
2321
  }>>;
2322
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2323
+ pro: "pro";
2324
+ ultra: "ultra";
2325
+ }>>;
1896
2326
  requiresUltra: z.ZodBoolean;
1897
2327
  modelRevision: z.ZodString;
1898
2328
  }, z.core.$strict>;
@@ -1911,6 +2341,7 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1911
2341
  languageDetection: "languageDetection";
1912
2342
  noteSuggestion: "noteSuggestion";
1913
2343
  pageTranslation: "pageTranslation";
2344
+ pdfTranslation: "pdfTranslation";
1914
2345
  selectionTranslation: "selectionTranslation";
1915
2346
  videoSubtitles: "videoSubtitles";
1916
2347
  }>>;
@@ -1928,6 +2359,7 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1928
2359
  languageDetection: "languageDetection";
1929
2360
  noteSuggestion: "noteSuggestion";
1930
2361
  pageTranslation: "pageTranslation";
2362
+ pdfTranslation: "pdfTranslation";
1931
2363
  selectionTranslation: "selectionTranslation";
1932
2364
  videoSubtitles: "videoSubtitles";
1933
2365
  }>>;
@@ -1941,6 +2373,7 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1941
2373
  languageDetection: "languageDetection";
1942
2374
  noteSuggestion: "noteSuggestion";
1943
2375
  pageTranslation: "pageTranslation";
2376
+ pdfTranslation: "pdfTranslation";
1944
2377
  selectionTranslation: "selectionTranslation";
1945
2378
  videoSubtitles: "videoSubtitles";
1946
2379
  }>>;
@@ -1952,10 +2385,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1952
2385
  available: z.ZodBoolean;
1953
2386
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1954
2387
  authentication_required: "authentication_required";
2388
+ pro_required: "pro_required";
1955
2389
  quota_exhausted: "quota_exhausted";
1956
2390
  service_unavailable: "service_unavailable";
1957
2391
  ultra_required: "ultra_required";
1958
2392
  }>>;
2393
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2394
+ pro: "pro";
2395
+ ultra: "ultra";
2396
+ }>>;
1959
2397
  requiresUltra: z.ZodBoolean;
1960
2398
  modelRevision: z.ZodString;
1961
2399
  }, z.core.$strict>;
@@ -1964,10 +2402,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1964
2402
  available: z.ZodBoolean;
1965
2403
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1966
2404
  authentication_required: "authentication_required";
2405
+ pro_required: "pro_required";
1967
2406
  quota_exhausted: "quota_exhausted";
1968
2407
  service_unavailable: "service_unavailable";
1969
2408
  ultra_required: "ultra_required";
1970
2409
  }>>;
2410
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2411
+ pro: "pro";
2412
+ ultra: "ultra";
2413
+ }>>;
1971
2414
  requiresUltra: z.ZodBoolean;
1972
2415
  modelRevision: z.ZodString;
1973
2416
  }, z.core.$strict>;
@@ -1978,10 +2421,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1978
2421
  available: z.ZodBoolean;
1979
2422
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1980
2423
  authentication_required: "authentication_required";
2424
+ pro_required: "pro_required";
1981
2425
  quota_exhausted: "quota_exhausted";
1982
2426
  service_unavailable: "service_unavailable";
1983
2427
  ultra_required: "ultra_required";
1984
2428
  }>>;
2429
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2430
+ pro: "pro";
2431
+ ultra: "ultra";
2432
+ }>>;
1985
2433
  requiresUltra: z.ZodBoolean;
1986
2434
  modelRevision: z.ZodString;
1987
2435
  }, z.core.$strict>;
@@ -1990,10 +2438,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
1990
2438
  available: z.ZodBoolean;
1991
2439
  unavailableReason: z.ZodNullable<z.ZodEnum<{
1992
2440
  authentication_required: "authentication_required";
2441
+ pro_required: "pro_required";
1993
2442
  quota_exhausted: "quota_exhausted";
1994
2443
  service_unavailable: "service_unavailable";
1995
2444
  ultra_required: "ultra_required";
1996
2445
  }>>;
2446
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2447
+ pro: "pro";
2448
+ ultra: "ultra";
2449
+ }>>;
1997
2450
  requiresUltra: z.ZodBoolean;
1998
2451
  modelRevision: z.ZodString;
1999
2452
  }, z.core.$strict>;
@@ -2004,10 +2457,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2004
2457
  available: z.ZodBoolean;
2005
2458
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2006
2459
  authentication_required: "authentication_required";
2460
+ pro_required: "pro_required";
2007
2461
  quota_exhausted: "quota_exhausted";
2008
2462
  service_unavailable: "service_unavailable";
2009
2463
  ultra_required: "ultra_required";
2010
2464
  }>>;
2465
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2466
+ pro: "pro";
2467
+ ultra: "ultra";
2468
+ }>>;
2011
2469
  requiresUltra: z.ZodBoolean;
2012
2470
  modelRevision: z.ZodString;
2013
2471
  }, z.core.$strict>;
@@ -2016,10 +2474,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2016
2474
  available: z.ZodBoolean;
2017
2475
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2018
2476
  authentication_required: "authentication_required";
2477
+ pro_required: "pro_required";
2019
2478
  quota_exhausted: "quota_exhausted";
2020
2479
  service_unavailable: "service_unavailable";
2021
2480
  ultra_required: "ultra_required";
2022
2481
  }>>;
2482
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2483
+ pro: "pro";
2484
+ ultra: "ultra";
2485
+ }>>;
2023
2486
  requiresUltra: z.ZodBoolean;
2024
2487
  modelRevision: z.ZodString;
2025
2488
  }, z.core.$strict>;
@@ -2030,10 +2493,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2030
2493
  available: z.ZodBoolean;
2031
2494
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2032
2495
  authentication_required: "authentication_required";
2496
+ pro_required: "pro_required";
2033
2497
  quota_exhausted: "quota_exhausted";
2034
2498
  service_unavailable: "service_unavailable";
2035
2499
  ultra_required: "ultra_required";
2036
2500
  }>>;
2501
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2502
+ pro: "pro";
2503
+ ultra: "ultra";
2504
+ }>>;
2037
2505
  requiresUltra: z.ZodBoolean;
2038
2506
  modelRevision: z.ZodString;
2039
2507
  }, z.core.$strict>;
@@ -2042,10 +2510,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2042
2510
  available: z.ZodBoolean;
2043
2511
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2044
2512
  authentication_required: "authentication_required";
2513
+ pro_required: "pro_required";
2045
2514
  quota_exhausted: "quota_exhausted";
2046
2515
  service_unavailable: "service_unavailable";
2047
2516
  ultra_required: "ultra_required";
2048
2517
  }>>;
2518
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2519
+ pro: "pro";
2520
+ ultra: "ultra";
2521
+ }>>;
2049
2522
  requiresUltra: z.ZodBoolean;
2050
2523
  modelRevision: z.ZodString;
2051
2524
  }, z.core.$strict>;
@@ -2056,10 +2529,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2056
2529
  available: z.ZodBoolean;
2057
2530
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2058
2531
  authentication_required: "authentication_required";
2532
+ pro_required: "pro_required";
2059
2533
  quota_exhausted: "quota_exhausted";
2060
2534
  service_unavailable: "service_unavailable";
2061
2535
  ultra_required: "ultra_required";
2062
2536
  }>>;
2537
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2538
+ pro: "pro";
2539
+ ultra: "ultra";
2540
+ }>>;
2063
2541
  requiresUltra: z.ZodBoolean;
2064
2542
  modelRevision: z.ZodString;
2065
2543
  }, z.core.$strict>;
@@ -2068,10 +2546,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2068
2546
  available: z.ZodBoolean;
2069
2547
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2070
2548
  authentication_required: "authentication_required";
2549
+ pro_required: "pro_required";
2071
2550
  quota_exhausted: "quota_exhausted";
2072
2551
  service_unavailable: "service_unavailable";
2073
2552
  ultra_required: "ultra_required";
2074
2553
  }>>;
2554
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2555
+ pro: "pro";
2556
+ ultra: "ultra";
2557
+ }>>;
2075
2558
  requiresUltra: z.ZodBoolean;
2076
2559
  modelRevision: z.ZodString;
2077
2560
  }, z.core.$strict>;
@@ -2082,10 +2565,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2082
2565
  available: z.ZodBoolean;
2083
2566
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2084
2567
  authentication_required: "authentication_required";
2568
+ pro_required: "pro_required";
2085
2569
  quota_exhausted: "quota_exhausted";
2086
2570
  service_unavailable: "service_unavailable";
2087
2571
  ultra_required: "ultra_required";
2088
2572
  }>>;
2573
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2574
+ pro: "pro";
2575
+ ultra: "ultra";
2576
+ }>>;
2089
2577
  requiresUltra: z.ZodBoolean;
2090
2578
  modelRevision: z.ZodString;
2091
2579
  }, z.core.$strict>;
@@ -2094,10 +2582,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2094
2582
  available: z.ZodBoolean;
2095
2583
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2096
2584
  authentication_required: "authentication_required";
2585
+ pro_required: "pro_required";
2097
2586
  quota_exhausted: "quota_exhausted";
2098
2587
  service_unavailable: "service_unavailable";
2099
2588
  ultra_required: "ultra_required";
2100
2589
  }>>;
2590
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2591
+ pro: "pro";
2592
+ ultra: "ultra";
2593
+ }>>;
2101
2594
  requiresUltra: z.ZodBoolean;
2102
2595
  modelRevision: z.ZodString;
2103
2596
  }, z.core.$strict>;
@@ -2108,10 +2601,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2108
2601
  available: z.ZodBoolean;
2109
2602
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2110
2603
  authentication_required: "authentication_required";
2604
+ pro_required: "pro_required";
2111
2605
  quota_exhausted: "quota_exhausted";
2112
2606
  service_unavailable: "service_unavailable";
2113
2607
  ultra_required: "ultra_required";
2114
2608
  }>>;
2609
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2610
+ pro: "pro";
2611
+ ultra: "ultra";
2612
+ }>>;
2115
2613
  requiresUltra: z.ZodBoolean;
2116
2614
  modelRevision: z.ZodString;
2117
2615
  }, z.core.$strict>;
@@ -2120,10 +2618,15 @@ export declare const HostedAiStatusOutputSchema: z.ZodObject<{
2120
2618
  available: z.ZodBoolean;
2121
2619
  unavailableReason: z.ZodNullable<z.ZodEnum<{
2122
2620
  authentication_required: "authentication_required";
2621
+ pro_required: "pro_required";
2123
2622
  quota_exhausted: "quota_exhausted";
2124
2623
  service_unavailable: "service_unavailable";
2125
2624
  ultra_required: "ultra_required";
2126
2625
  }>>;
2626
+ upgradeTo: z.ZodNullable<z.ZodEnum<{
2627
+ pro: "pro";
2628
+ ultra: "ultra";
2629
+ }>>;
2127
2630
  requiresUltra: z.ZodBoolean;
2128
2631
  modelRevision: z.ZodString;
2129
2632
  }, z.core.$strict>;
@@ -2141,6 +2644,7 @@ export type HostedAiNoteSuggestionObject = z.infer<typeof HostedAiNoteSuggestion
2141
2644
  export type HostedAiStreamPart = z.infer<typeof HostedAiStreamPartSchema>;
2142
2645
  export type HostedAiStatusInput = z.infer<typeof HostedAiStatusInputSchema>;
2143
2646
  export type HostedAiUnavailableReason = z.infer<typeof HostedAiUnavailableReasonSchema>;
2647
+ export type HostedAiUpgradePlan = z.infer<typeof HostedAiUpgradePlanSchema>;
2144
2648
  export type HostedAiCreditPolicyId = z.infer<typeof HostedAiCreditPolicyIdSchema>;
2145
2649
  export type HostedAiCreditPeriodKind = z.infer<typeof HostedAiCreditPeriodKindSchema>;
2146
2650
  export type HostedAiQuotaScope = z.infer<typeof HostedAiQuotaScopeSchema>;
@@ -2233,6 +2737,11 @@ export declare const notebaseSchema: z.ZodObject<{
2233
2737
  "FSRS-7": "FSRS-7";
2234
2738
  }>;
2235
2739
  srsSleepingAt: z.ZodNullable<z.ZodDate>;
2740
+ srsSleepSource: z.ZodNullable<z.ZodEnum<{
2741
+ agent: "agent";
2742
+ auto: "auto";
2743
+ manual: "manual";
2744
+ }>>;
2236
2745
  createdAt: z.ZodDate;
2237
2746
  updatedAt: z.ZodDate;
2238
2747
  }, z.core.$strip>;
@@ -2341,6 +2850,11 @@ export declare const NotebaseCreateOutputSchema: z.ZodObject<{
2341
2850
  "FSRS-7": "FSRS-7";
2342
2851
  }>;
2343
2852
  srsSleepingAt: z.ZodNullable<z.ZodDate>;
2853
+ srsSleepSource: z.ZodNullable<z.ZodEnum<{
2854
+ agent: "agent";
2855
+ auto: "auto";
2856
+ manual: "manual";
2857
+ }>>;
2344
2858
  createdAt: z.ZodDate;
2345
2859
  updatedAt: z.ZodDate;
2346
2860
  }, z.core.$strip>;
@@ -2382,6 +2896,11 @@ export declare const NotebaseUpdateOutputSchema: z.ZodObject<{
2382
2896
  "FSRS-7": "FSRS-7";
2383
2897
  }>;
2384
2898
  srsSleepingAt: z.ZodNullable<z.ZodDate>;
2899
+ srsSleepSource: z.ZodNullable<z.ZodEnum<{
2900
+ agent: "agent";
2901
+ auto: "auto";
2902
+ manual: "manual";
2903
+ }>>;
2385
2904
  createdAt: z.ZodDate;
2386
2905
  updatedAt: z.ZodDate;
2387
2906
  }, z.core.$strip>;
@@ -2446,6 +2965,11 @@ export declare const NotebaseGetOutputSchema: z.ZodObject<{
2446
2965
  "FSRS-7": "FSRS-7";
2447
2966
  }>;
2448
2967
  srsSleepingAt: z.ZodNullable<z.ZodDate>;
2968
+ srsSleepSource: z.ZodNullable<z.ZodEnum<{
2969
+ agent: "agent";
2970
+ auto: "auto";
2971
+ manual: "manual";
2972
+ }>>;
2449
2973
  createdAt: z.ZodCoercedDate<unknown>;
2450
2974
  updatedAt: z.ZodCoercedDate<unknown>;
2451
2975
  notebaseColumns: z.ZodArray<z.ZodObject<{
@@ -3084,30 +3608,339 @@ export declare const notebaseViewUpdateDataSchema: z.ZodObject<{
3084
3608
  asc: "asc";
3085
3609
  desc: "desc";
3086
3610
  }>;
3087
- }, z.core.$strict>>>;
3611
+ }, z.core.$strict>>>;
3612
+ }, z.core.$strict>;
3613
+ export type NotebaseViewUpdateData = z.infer<typeof notebaseViewUpdateDataSchema>;
3614
+ export declare const notebaseViewSchema: z.ZodObject<{
3615
+ id: z.ZodString;
3616
+ notebaseId: z.ZodString;
3617
+ name: z.ZodString;
3618
+ type: z.ZodEnum<{
3619
+ gallery: "gallery";
3620
+ kanban: "kanban";
3621
+ table: "table";
3622
+ }>;
3623
+ config: z.ZodNullable<z.ZodObject<{
3624
+ notebaseColumnWidths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
3625
+ hiddenNotebaseColumns: z.ZodOptional<z.ZodArray<z.ZodString>>;
3626
+ groupByNotebaseColumnId: z.ZodOptional<z.ZodString>;
3627
+ }, z.core.$catchall<z.ZodUnknown>>>;
3628
+ filters: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
3629
+ sorts: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
3630
+ position: z.ZodNumber;
3631
+ createdAt: z.ZodCoercedDate<unknown>;
3632
+ updatedAt: z.ZodCoercedDate<unknown>;
3633
+ }, z.core.$strip>;
3634
+ export type NotebaseView = z.infer<typeof notebaseViewSchema>;
3635
+ //#endregion
3636
+ //#region src/schemas/pdf-translation.d.ts
3637
+ export declare const pdfTranslationJobStatusSchema: z.ZodEnum<{
3638
+ cancel_requested: "cancel_requested";
3639
+ cancelled: "cancelled";
3640
+ expired: "expired";
3641
+ failed: "failed";
3642
+ queued: "queued";
3643
+ running: "running";
3644
+ succeeded: "succeeded";
3645
+ }>;
3646
+ export type PdfTranslationJobStatus = z.infer<typeof pdfTranslationJobStatusSchema>;
3647
+ /**
3648
+ * The two PDFs one translation makes: the translation alone, with the
3649
+ * original's layout, and the original and translated pages side by side.
3650
+ */
3651
+ export declare const pdfTranslationOutputVariantSchema: z.ZodEnum<{
3652
+ bilingual: "bilingual";
3653
+ translated: "translated";
3654
+ }>;
3655
+ export type PdfTranslationOutputVariant = z.infer<typeof pdfTranslationOutputVariantSchema>;
3656
+ export declare const pdfTranslationRequestUploadInputSchema: z.ZodObject<{
3657
+ fileName: z.ZodString;
3658
+ fileByteSize: z.ZodNumber;
3659
+ }, z.core.$strict>;
3660
+ export type PdfTranslationRequestUploadInput = z.infer<typeof pdfTranslationRequestUploadInputSchema>;
3661
+ export declare const pdfTranslationRequestUploadOutputSchema: z.ZodObject<{
3662
+ uploadId: z.ZodUUID;
3663
+ upload: z.ZodObject<{
3664
+ url: z.ZodURL;
3665
+ headers: z.ZodRecord<z.ZodString, z.ZodString>;
3666
+ }, z.core.$strict>;
3667
+ expiresAt: z.ZodCoercedDate<unknown>;
3668
+ }, z.core.$strict>;
3669
+ export type PdfTranslationRequestUploadOutput = z.infer<typeof pdfTranslationRequestUploadOutputSchema>;
3670
+ export declare const pdfTranslationSubmitInputSchema: z.ZodObject<{
3671
+ uploadIds: z.ZodArray<z.ZodUUID>;
3672
+ idempotencyKey: z.ZodString;
3673
+ targetLanguage: z.ZodString;
3674
+ modelTier: z.ZodEnum<{
3675
+ advance: "advance";
3676
+ normal: "normal";
3677
+ }>;
3678
+ }, z.core.$strict>;
3679
+ export type PdfTranslationSubmitInput = z.infer<typeof pdfTranslationSubmitInputSchema>;
3680
+ export declare const pdfTranslationJobIdInputSchema: z.ZodObject<{
3681
+ id: z.ZodUUID;
3682
+ }, z.core.$strict>;
3683
+ export type PdfTranslationJobIdInput = z.infer<typeof pdfTranslationJobIdInputSchema>;
3684
+ export declare const pdfTranslationOutputInputSchema: z.ZodObject<{
3685
+ id: z.ZodUUID;
3686
+ variant: z.ZodEnum<{
3687
+ bilingual: "bilingual";
3688
+ translated: "translated";
3689
+ }>;
3690
+ }, z.core.$strict>;
3691
+ export type PdfTranslationOutputInput = z.infer<typeof pdfTranslationOutputInputSchema>;
3692
+ export declare const pdfTranslationListInputSchema: z.ZodObject<{}, z.core.$strict>;
3693
+ export type PdfTranslationListInput = z.infer<typeof pdfTranslationListInputSchema>;
3694
+ export declare const pdfTranslationJobResourceSchema: z.ZodObject<{
3695
+ id: z.ZodUUID;
3696
+ status: z.ZodEnum<{
3697
+ cancel_requested: "cancel_requested";
3698
+ cancelled: "cancelled";
3699
+ expired: "expired";
3700
+ failed: "failed";
3701
+ queued: "queued";
3702
+ running: "running";
3703
+ succeeded: "succeeded";
3704
+ }>;
3705
+ sourceFileName: z.ZodString;
3706
+ targetLanguage: z.ZodString;
3707
+ modelTier: z.ZodEnum<{
3708
+ advance: "advance";
3709
+ normal: "normal";
3710
+ }>;
3711
+ batchId: z.ZodUUID;
3712
+ batchPosition: z.ZodNumber;
3713
+ waitingAhead: z.ZodNullable<z.ZodNumber>;
3714
+ freeTrial: z.ZodBoolean;
3715
+ outputs: z.ZodObject<{
3716
+ translated: z.ZodBoolean;
3717
+ bilingual: z.ZodBoolean;
3718
+ }, z.core.$strict>;
3719
+ pageCount: z.ZodNumber;
3720
+ progressStage: z.ZodNullable<z.ZodString>;
3721
+ progressPercent: z.ZodNumber;
3722
+ estimatedCostNanoUsd: z.ZodNumber;
3723
+ chargedCostNanoUsd: z.ZodNumber;
3724
+ error: z.ZodNullable<z.ZodObject<{
3725
+ category: z.ZodString;
3726
+ message: z.ZodString;
3727
+ }, z.core.$strict>>;
3728
+ workerRelease: z.ZodNullable<z.ZodString>;
3729
+ createdAt: z.ZodCoercedDate<unknown>;
3730
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3731
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3732
+ outputExpiresAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3733
+ }, z.core.$strict>;
3734
+ export type PdfTranslationJobResource = z.infer<typeof pdfTranslationJobResourceSchema>;
3735
+ export declare const pdfTranslationListOutputSchema: z.ZodObject<{
3736
+ items: z.ZodArray<z.ZodObject<{
3737
+ id: z.ZodUUID;
3738
+ status: z.ZodEnum<{
3739
+ cancel_requested: "cancel_requested";
3740
+ cancelled: "cancelled";
3741
+ expired: "expired";
3742
+ failed: "failed";
3743
+ queued: "queued";
3744
+ running: "running";
3745
+ succeeded: "succeeded";
3746
+ }>;
3747
+ sourceFileName: z.ZodString;
3748
+ targetLanguage: z.ZodString;
3749
+ modelTier: z.ZodEnum<{
3750
+ advance: "advance";
3751
+ normal: "normal";
3752
+ }>;
3753
+ batchId: z.ZodUUID;
3754
+ batchPosition: z.ZodNumber;
3755
+ waitingAhead: z.ZodNullable<z.ZodNumber>;
3756
+ freeTrial: z.ZodBoolean;
3757
+ outputs: z.ZodObject<{
3758
+ translated: z.ZodBoolean;
3759
+ bilingual: z.ZodBoolean;
3760
+ }, z.core.$strict>;
3761
+ pageCount: z.ZodNumber;
3762
+ progressStage: z.ZodNullable<z.ZodString>;
3763
+ progressPercent: z.ZodNumber;
3764
+ estimatedCostNanoUsd: z.ZodNumber;
3765
+ chargedCostNanoUsd: z.ZodNumber;
3766
+ error: z.ZodNullable<z.ZodObject<{
3767
+ category: z.ZodString;
3768
+ message: z.ZodString;
3769
+ }, z.core.$strict>>;
3770
+ workerRelease: z.ZodNullable<z.ZodString>;
3771
+ createdAt: z.ZodCoercedDate<unknown>;
3772
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3773
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3774
+ outputExpiresAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3775
+ }, z.core.$strict>>;
3776
+ }, z.core.$strict>;
3777
+ export type PdfTranslationListOutput = z.infer<typeof pdfTranslationListOutputSchema>;
3778
+ /** What a submission made: its batch, and one job per PDF in their order. */
3779
+ export declare const pdfTranslationSubmitOutputSchema: z.ZodObject<{
3780
+ batchId: z.ZodUUID;
3781
+ jobs: z.ZodArray<z.ZodObject<{
3782
+ id: z.ZodUUID;
3783
+ status: z.ZodEnum<{
3784
+ cancel_requested: "cancel_requested";
3785
+ cancelled: "cancelled";
3786
+ expired: "expired";
3787
+ failed: "failed";
3788
+ queued: "queued";
3789
+ running: "running";
3790
+ succeeded: "succeeded";
3791
+ }>;
3792
+ sourceFileName: z.ZodString;
3793
+ targetLanguage: z.ZodString;
3794
+ modelTier: z.ZodEnum<{
3795
+ advance: "advance";
3796
+ normal: "normal";
3797
+ }>;
3798
+ batchId: z.ZodUUID;
3799
+ batchPosition: z.ZodNumber;
3800
+ waitingAhead: z.ZodNullable<z.ZodNumber>;
3801
+ freeTrial: z.ZodBoolean;
3802
+ outputs: z.ZodObject<{
3803
+ translated: z.ZodBoolean;
3804
+ bilingual: z.ZodBoolean;
3805
+ }, z.core.$strict>;
3806
+ pageCount: z.ZodNumber;
3807
+ progressStage: z.ZodNullable<z.ZodString>;
3808
+ progressPercent: z.ZodNumber;
3809
+ estimatedCostNanoUsd: z.ZodNumber;
3810
+ chargedCostNanoUsd: z.ZodNumber;
3811
+ error: z.ZodNullable<z.ZodObject<{
3812
+ category: z.ZodString;
3813
+ message: z.ZodString;
3814
+ }, z.core.$strict>>;
3815
+ workerRelease: z.ZodNullable<z.ZodString>;
3816
+ createdAt: z.ZodCoercedDate<unknown>;
3817
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3818
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3819
+ outputExpiresAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3820
+ }, z.core.$strict>>;
3088
3821
  }, z.core.$strict>;
3089
- export type NotebaseViewUpdateData = z.infer<typeof notebaseViewUpdateDataSchema>;
3090
- export declare const notebaseViewSchema: z.ZodObject<{
3091
- id: z.ZodString;
3092
- notebaseId: z.ZodString;
3093
- name: z.ZodString;
3094
- type: z.ZodEnum<{
3095
- gallery: "gallery";
3096
- kanban: "kanban";
3097
- table: "table";
3098
- }>;
3099
- config: z.ZodNullable<z.ZodObject<{
3100
- notebaseColumnWidths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
3101
- hiddenNotebaseColumns: z.ZodOptional<z.ZodArray<z.ZodString>>;
3102
- groupByNotebaseColumnId: z.ZodOptional<z.ZodString>;
3103
- }, z.core.$catchall<z.ZodUnknown>>>;
3104
- filters: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
3105
- sorts: z.ZodNullable<z.ZodArray<z.ZodUnknown>>;
3106
- position: z.ZodNumber;
3107
- createdAt: z.ZodCoercedDate<unknown>;
3108
- updatedAt: z.ZodCoercedDate<unknown>;
3109
- }, z.core.$strip>;
3110
- export type NotebaseView = z.infer<typeof notebaseViewSchema>;
3822
+ export type PdfTranslationSubmitOutput = z.infer<typeof pdfTranslationSubmitOutputSchema>;
3823
+ /** A job, and every job of its batch in their order (itself included). */
3824
+ export declare const pdfTranslationGetOutputSchema: z.ZodObject<{
3825
+ job: z.ZodObject<{
3826
+ id: z.ZodUUID;
3827
+ status: z.ZodEnum<{
3828
+ cancel_requested: "cancel_requested";
3829
+ cancelled: "cancelled";
3830
+ expired: "expired";
3831
+ failed: "failed";
3832
+ queued: "queued";
3833
+ running: "running";
3834
+ succeeded: "succeeded";
3835
+ }>;
3836
+ sourceFileName: z.ZodString;
3837
+ targetLanguage: z.ZodString;
3838
+ modelTier: z.ZodEnum<{
3839
+ advance: "advance";
3840
+ normal: "normal";
3841
+ }>;
3842
+ batchId: z.ZodUUID;
3843
+ batchPosition: z.ZodNumber;
3844
+ waitingAhead: z.ZodNullable<z.ZodNumber>;
3845
+ freeTrial: z.ZodBoolean;
3846
+ outputs: z.ZodObject<{
3847
+ translated: z.ZodBoolean;
3848
+ bilingual: z.ZodBoolean;
3849
+ }, z.core.$strict>;
3850
+ pageCount: z.ZodNumber;
3851
+ progressStage: z.ZodNullable<z.ZodString>;
3852
+ progressPercent: z.ZodNumber;
3853
+ estimatedCostNanoUsd: z.ZodNumber;
3854
+ chargedCostNanoUsd: z.ZodNumber;
3855
+ error: z.ZodNullable<z.ZodObject<{
3856
+ category: z.ZodString;
3857
+ message: z.ZodString;
3858
+ }, z.core.$strict>>;
3859
+ workerRelease: z.ZodNullable<z.ZodString>;
3860
+ createdAt: z.ZodCoercedDate<unknown>;
3861
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3862
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3863
+ outputExpiresAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3864
+ }, z.core.$strict>;
3865
+ batch: z.ZodArray<z.ZodObject<{
3866
+ id: z.ZodUUID;
3867
+ status: z.ZodEnum<{
3868
+ cancel_requested: "cancel_requested";
3869
+ cancelled: "cancelled";
3870
+ expired: "expired";
3871
+ failed: "failed";
3872
+ queued: "queued";
3873
+ running: "running";
3874
+ succeeded: "succeeded";
3875
+ }>;
3876
+ sourceFileName: z.ZodString;
3877
+ targetLanguage: z.ZodString;
3878
+ modelTier: z.ZodEnum<{
3879
+ advance: "advance";
3880
+ normal: "normal";
3881
+ }>;
3882
+ batchId: z.ZodUUID;
3883
+ batchPosition: z.ZodNumber;
3884
+ waitingAhead: z.ZodNullable<z.ZodNumber>;
3885
+ freeTrial: z.ZodBoolean;
3886
+ outputs: z.ZodObject<{
3887
+ translated: z.ZodBoolean;
3888
+ bilingual: z.ZodBoolean;
3889
+ }, z.core.$strict>;
3890
+ pageCount: z.ZodNumber;
3891
+ progressStage: z.ZodNullable<z.ZodString>;
3892
+ progressPercent: z.ZodNumber;
3893
+ estimatedCostNanoUsd: z.ZodNumber;
3894
+ chargedCostNanoUsd: z.ZodNumber;
3895
+ error: z.ZodNullable<z.ZodObject<{
3896
+ category: z.ZodString;
3897
+ message: z.ZodString;
3898
+ }, z.core.$strict>>;
3899
+ workerRelease: z.ZodNullable<z.ZodString>;
3900
+ createdAt: z.ZodCoercedDate<unknown>;
3901
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3902
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3903
+ outputExpiresAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
3904
+ }, z.core.$strict>>;
3905
+ }, z.core.$strict>;
3906
+ export type PdfTranslationGetOutput = z.infer<typeof pdfTranslationGetOutputSchema>;
3907
+ export declare const pdfTranslationStatusInputSchema: z.ZodObject<{}, z.core.$strict>;
3908
+ export type PdfTranslationStatusInput = z.infer<typeof pdfTranslationStatusInputSchema>;
3909
+ export declare const pdfTranslationStatusOutputSchema: z.ZodObject<{
3910
+ freeTrialsRemaining: z.ZodNumber;
3911
+ funded: z.ZodBoolean;
3912
+ }, z.core.$strict>;
3913
+ export type PdfTranslationStatusOutput = z.infer<typeof pdfTranslationStatusOutputSchema>;
3914
+ export declare const pdfTranslationDownloadOutputSchema: z.ZodObject<{
3915
+ url: z.ZodURL;
3916
+ expiresAt: z.ZodCoercedDate<unknown>;
3917
+ }, z.core.$strict>;
3918
+ export type PdfTranslationDownloadOutput = z.infer<typeof pdfTranslationDownloadOutputSchema>;
3919
+ export declare const pdfTranslationPreviewOutputSchema: z.ZodObject<{
3920
+ url: z.ZodURL;
3921
+ expiresAt: z.ZodCoercedDate<unknown>;
3922
+ watermarked: z.ZodBoolean;
3923
+ }, z.core.$strict>;
3924
+ export type PdfTranslationPreviewOutput = z.infer<typeof pdfTranslationPreviewOutputSchema>;
3925
+ export declare const pdfTranslationDeleteOutputSchema: z.ZodObject<{
3926
+ id: z.ZodUUID;
3927
+ }, z.core.$strict>;
3928
+ export type PdfTranslationDeleteOutput = z.infer<typeof pdfTranslationDeleteOutputSchema>;
3929
+ export declare const PdfTranslationInsufficientCreditDataSchema: z.ZodObject<{
3930
+ estimatedCostNanoUsd: z.ZodNumber;
3931
+ remainingNanoUsd: z.ZodNumber;
3932
+ resetAt: z.ZodNullable<z.ZodISODateTime>;
3933
+ }, z.core.$strict>;
3934
+ export type PdfTranslationInsufficientCreditData = z.infer<typeof PdfTranslationInsufficientCreditDataSchema>;
3935
+ /**
3936
+ * Which of a submission's PDFs a refusal is about, so the page can point at
3937
+ * it. For an upload an earlier request used up, also the translation it made.
3938
+ */
3939
+ export declare const PdfTranslationUploadErrorDataSchema: z.ZodObject<{
3940
+ uploadId: z.ZodUUID;
3941
+ jobId: z.ZodOptional<z.ZodUUID>;
3942
+ }, z.core.$strict>;
3943
+ export type PdfTranslationUploadErrorData = z.infer<typeof PdfTranslationUploadErrorDataSchema>;
3111
3944
  //#endregion
3112
3945
  //#region src/schemas/speech.d.ts
3113
3946
  /** The longest text one request reads aloud. */
@@ -4667,6 +5500,314 @@ export declare const srsAcknowledgeOptimizerResultsOutputSchema: z.ZodObject<{
4667
5500
  acknowledgedCount: z.ZodNumber;
4668
5501
  }, z.core.$strict>;
4669
5502
  export type SrsAcknowledgeOptimizerResultsOutput = z.infer<typeof srsAcknowledgeOptimizerResultsOutputSchema>;
5503
+ export declare const srsBacklogStatsInputSchema: z.ZodObject<{
5504
+ notebaseIds: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
5505
+ timezone: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
5506
+ }, z.core.$strict>;
5507
+ export type SrsBacklogStatsInput = z.infer<typeof srsBacklogStatsInputSchema>;
5508
+ /**
5509
+ * An Awake notebase with a positive daily review limit whose overdue reviews
5510
+ * fill at least `BACKLOG_PROMPT_DAYS.badge` days.
5511
+ */
5512
+ export declare const srsBacklogStatsSchema: z.ZodObject<{
5513
+ overdueReviewCount: z.ZodNumber;
5514
+ dailyLimit: z.ZodNumber;
5515
+ backlogDays: z.ZodNumber;
5516
+ }, z.core.$strip>;
5517
+ export type SrsBacklogStats = z.infer<typeof srsBacklogStatsSchema>;
5518
+ /** Only the notebases that get the badge; the rest are absent. */
5519
+ export declare const srsBacklogStatsOutputSchema: z.ZodRecord<z.ZodUUID, z.ZodObject<{
5520
+ overdueReviewCount: z.ZodNumber;
5521
+ dailyLimit: z.ZodNumber;
5522
+ backlogDays: z.ZodNumber;
5523
+ }, z.core.$strip>>;
5524
+ export type SrsBacklogStatsOutput = z.infer<typeof srsBacklogStatsOutputSchema>;
5525
+ export declare const srsPreviewPostponeInputSchema: z.ZodObject<{
5526
+ notebaseId: z.ZodUUID;
5527
+ timezone: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
5528
+ dailyLimit: z.ZodOptional<z.ZodNumber>;
5529
+ flattenFullRange: z.ZodOptional<z.ZodBoolean>;
5530
+ }, z.core.$strict>;
5531
+ export type SrsPreviewPostponeInput = z.infer<typeof srsPreviewPostponeInputSchema>;
5532
+ declare const rescheduleBaselineDaySchema: z.ZodObject<{
5533
+ day: z.ZodNumber;
5534
+ scheduled: z.ZodNumber;
5535
+ rSum: z.ZodNullable<z.ZodNumber>;
5536
+ }, z.core.$strip>;
5537
+ export type RescheduleBaselineDay = z.infer<typeof rescheduleBaselineDaySchema>;
5538
+ export declare const spreadDaySchema: z.ZodObject<{
5539
+ day: z.ZodNumber;
5540
+ scheduled: z.ZodNumber;
5541
+ backlog: z.ZodNumber;
5542
+ backlogRSum: z.ZodNumber;
5543
+ surplusIn: z.ZodNumber;
5544
+ surplusRSum: z.ZodNumber;
5545
+ surplusStay: z.ZodNumber;
5546
+ surplusOut: z.ZodNumber;
5547
+ }, z.core.$strip>;
5548
+ export type SpreadDay = z.infer<typeof spreadDaySchema>;
5549
+ export declare const flattenStepSchema: z.ZodObject<{
5550
+ checked: z.ZodBoolean;
5551
+ fromToday: z.ZodNumber;
5552
+ fromFuture: z.ZodNumber;
5553
+ fromDays: z.ZodNumber;
5554
+ kept: z.ZodObject<{
5555
+ stuck: z.ZodNumber;
5556
+ noRoom: z.ZodNumber;
5557
+ }, z.core.$strip>;
5558
+ qSuggest: z.ZodNumber;
5559
+ meanRAfter: z.ZodNumber;
5560
+ days: z.ZodArray<z.ZodObject<{
5561
+ day: z.ZodNumber;
5562
+ scheduled: z.ZodNumber;
5563
+ backlog: z.ZodNumber;
5564
+ backlogRSum: z.ZodNumber;
5565
+ surplusIn: z.ZodNumber;
5566
+ surplusRSum: z.ZodNumber;
5567
+ surplusStay: z.ZodNumber;
5568
+ surplusOut: z.ZodNumber;
5569
+ }, z.core.$strip>>;
5570
+ postponedAgain: z.ZodObject<{
5571
+ count: z.ZodNumber;
5572
+ rSum: z.ZodNumber;
5573
+ }, z.core.$strip>;
5574
+ }, z.core.$strip>;
5575
+ export type FlattenStep = z.infer<typeof flattenStepSchema>;
5576
+ /** One threshold's Postpone alone, before its Flatten option is attached. */
5577
+ export declare const postponeSummarySchema: z.ZodObject<{
5578
+ threshold: z.ZodNumber;
5579
+ moved: z.ZodNumber;
5580
+ overflowToday: z.ZodNumber;
5581
+ meanRiBefore: z.ZodNumber;
5582
+ meanRAfter: z.ZodNumber;
5583
+ days: z.ZodArray<z.ZodObject<{
5584
+ day: z.ZodNumber;
5585
+ postponed: z.ZodNumber;
5586
+ rSum: z.ZodNumber;
5587
+ }, z.core.$strip>>;
5588
+ }, z.core.$strip>;
5589
+ export type PostponeSummary = z.infer<typeof postponeSummarySchema>;
5590
+ export declare const postponeStepSchema: z.ZodObject<{
5591
+ threshold: z.ZodNumber;
5592
+ moved: z.ZodNumber;
5593
+ overflowToday: z.ZodNumber;
5594
+ meanRiBefore: z.ZodNumber;
5595
+ meanRAfter: z.ZodNumber;
5596
+ days: z.ZodArray<z.ZodObject<{
5597
+ day: z.ZodNumber;
5598
+ postponed: z.ZodNumber;
5599
+ rSum: z.ZodNumber;
5600
+ }, z.core.$strip>>;
5601
+ flatten: z.ZodNullable<z.ZodObject<{
5602
+ checked: z.ZodBoolean;
5603
+ fromToday: z.ZodNumber;
5604
+ fromFuture: z.ZodNumber;
5605
+ fromDays: z.ZodNumber;
5606
+ kept: z.ZodObject<{
5607
+ stuck: z.ZodNumber;
5608
+ noRoom: z.ZodNumber;
5609
+ }, z.core.$strip>;
5610
+ qSuggest: z.ZodNumber;
5611
+ meanRAfter: z.ZodNumber;
5612
+ days: z.ZodArray<z.ZodObject<{
5613
+ day: z.ZodNumber;
5614
+ scheduled: z.ZodNumber;
5615
+ backlog: z.ZodNumber;
5616
+ backlogRSum: z.ZodNumber;
5617
+ surplusIn: z.ZodNumber;
5618
+ surplusRSum: z.ZodNumber;
5619
+ surplusStay: z.ZodNumber;
5620
+ surplusOut: z.ZodNumber;
5621
+ }, z.core.$strip>>;
5622
+ postponedAgain: z.ZodObject<{
5623
+ count: z.ZodNumber;
5624
+ rSum: z.ZodNumber;
5625
+ }, z.core.$strip>;
5626
+ }, z.core.$strip>>;
5627
+ }, z.core.$strip>;
5628
+ export type PostponeStep = z.infer<typeof postponeStepSchema>;
5629
+ export declare const postponePlanSchema: z.ZodObject<{
5630
+ planId: z.ZodString;
5631
+ limit: z.ZodNumber;
5632
+ steps: z.ZodArray<z.ZodObject<{
5633
+ threshold: z.ZodNumber;
5634
+ moved: z.ZodNumber;
5635
+ overflowToday: z.ZodNumber;
5636
+ meanRiBefore: z.ZodNumber;
5637
+ meanRAfter: z.ZodNumber;
5638
+ days: z.ZodArray<z.ZodObject<{
5639
+ day: z.ZodNumber;
5640
+ postponed: z.ZodNumber;
5641
+ rSum: z.ZodNumber;
5642
+ }, z.core.$strip>>;
5643
+ flatten: z.ZodNullable<z.ZodObject<{
5644
+ checked: z.ZodBoolean;
5645
+ fromToday: z.ZodNumber;
5646
+ fromFuture: z.ZodNumber;
5647
+ fromDays: z.ZodNumber;
5648
+ kept: z.ZodObject<{
5649
+ stuck: z.ZodNumber;
5650
+ noRoom: z.ZodNumber;
5651
+ }, z.core.$strip>;
5652
+ qSuggest: z.ZodNumber;
5653
+ meanRAfter: z.ZodNumber;
5654
+ days: z.ZodArray<z.ZodObject<{
5655
+ day: z.ZodNumber;
5656
+ scheduled: z.ZodNumber;
5657
+ backlog: z.ZodNumber;
5658
+ backlogRSum: z.ZodNumber;
5659
+ surplusIn: z.ZodNumber;
5660
+ surplusRSum: z.ZodNumber;
5661
+ surplusStay: z.ZodNumber;
5662
+ surplusOut: z.ZodNumber;
5663
+ }, z.core.$strip>>;
5664
+ postponedAgain: z.ZodObject<{
5665
+ count: z.ZodNumber;
5666
+ rSum: z.ZodNumber;
5667
+ }, z.core.$strip>;
5668
+ }, z.core.$strip>>;
5669
+ }, z.core.$strip>>;
5670
+ skipped: z.ZodObject<{
5671
+ belowFloor: z.ZodNumber;
5672
+ maxInterval: z.ZodNumber;
5673
+ invalid: z.ZodNumber;
5674
+ }, z.core.$strip>;
5675
+ }, z.core.$strip>;
5676
+ export type PostponePlanSummary = z.infer<typeof postponePlanSchema>;
5677
+ export declare const srsPreviewPostponeOutputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5678
+ status: z.ZodLiteral<"ready">;
5679
+ expiresAt: z.ZodDate;
5680
+ q: z.ZodNumber;
5681
+ qConfigured: z.ZodNumber;
5682
+ qMax: z.ZodNumber;
5683
+ overdueReviewCount: z.ZodNumber;
5684
+ dueTodayReviewCount: z.ZodNumber;
5685
+ usedToday: z.ZodNumber;
5686
+ plan: z.ZodObject<{
5687
+ planId: z.ZodString;
5688
+ limit: z.ZodNumber;
5689
+ steps: z.ZodArray<z.ZodObject<{
5690
+ threshold: z.ZodNumber;
5691
+ moved: z.ZodNumber;
5692
+ overflowToday: z.ZodNumber;
5693
+ meanRiBefore: z.ZodNumber;
5694
+ meanRAfter: z.ZodNumber;
5695
+ days: z.ZodArray<z.ZodObject<{
5696
+ day: z.ZodNumber;
5697
+ postponed: z.ZodNumber;
5698
+ rSum: z.ZodNumber;
5699
+ }, z.core.$strip>>;
5700
+ flatten: z.ZodNullable<z.ZodObject<{
5701
+ checked: z.ZodBoolean;
5702
+ fromToday: z.ZodNumber;
5703
+ fromFuture: z.ZodNumber;
5704
+ fromDays: z.ZodNumber;
5705
+ kept: z.ZodObject<{
5706
+ stuck: z.ZodNumber;
5707
+ noRoom: z.ZodNumber;
5708
+ }, z.core.$strip>;
5709
+ qSuggest: z.ZodNumber;
5710
+ meanRAfter: z.ZodNumber;
5711
+ days: z.ZodArray<z.ZodObject<{
5712
+ day: z.ZodNumber;
5713
+ scheduled: z.ZodNumber;
5714
+ backlog: z.ZodNumber;
5715
+ backlogRSum: z.ZodNumber;
5716
+ surplusIn: z.ZodNumber;
5717
+ surplusRSum: z.ZodNumber;
5718
+ surplusStay: z.ZodNumber;
5719
+ surplusOut: z.ZodNumber;
5720
+ }, z.core.$strip>>;
5721
+ postponedAgain: z.ZodObject<{
5722
+ count: z.ZodNumber;
5723
+ rSum: z.ZodNumber;
5724
+ }, z.core.$strip>;
5725
+ }, z.core.$strip>>;
5726
+ }, z.core.$strip>>;
5727
+ skipped: z.ZodObject<{
5728
+ belowFloor: z.ZodNumber;
5729
+ maxInterval: z.ZodNumber;
5730
+ invalid: z.ZodNumber;
5731
+ }, z.core.$strip>;
5732
+ }, z.core.$strip>;
5733
+ suggested: z.ZodNullable<z.ZodObject<{
5734
+ planId: z.ZodString;
5735
+ limit: z.ZodNumber;
5736
+ steps: z.ZodArray<z.ZodObject<{
5737
+ threshold: z.ZodNumber;
5738
+ moved: z.ZodNumber;
5739
+ overflowToday: z.ZodNumber;
5740
+ meanRiBefore: z.ZodNumber;
5741
+ meanRAfter: z.ZodNumber;
5742
+ days: z.ZodArray<z.ZodObject<{
5743
+ day: z.ZodNumber;
5744
+ postponed: z.ZodNumber;
5745
+ rSum: z.ZodNumber;
5746
+ }, z.core.$strip>>;
5747
+ flatten: z.ZodNullable<z.ZodObject<{
5748
+ checked: z.ZodBoolean;
5749
+ fromToday: z.ZodNumber;
5750
+ fromFuture: z.ZodNumber;
5751
+ fromDays: z.ZodNumber;
5752
+ kept: z.ZodObject<{
5753
+ stuck: z.ZodNumber;
5754
+ noRoom: z.ZodNumber;
5755
+ }, z.core.$strip>;
5756
+ qSuggest: z.ZodNumber;
5757
+ meanRAfter: z.ZodNumber;
5758
+ days: z.ZodArray<z.ZodObject<{
5759
+ day: z.ZodNumber;
5760
+ scheduled: z.ZodNumber;
5761
+ backlog: z.ZodNumber;
5762
+ backlogRSum: z.ZodNumber;
5763
+ surplusIn: z.ZodNumber;
5764
+ surplusRSum: z.ZodNumber;
5765
+ surplusStay: z.ZodNumber;
5766
+ surplusOut: z.ZodNumber;
5767
+ }, z.core.$strip>>;
5768
+ postponedAgain: z.ZodObject<{
5769
+ count: z.ZodNumber;
5770
+ rSum: z.ZodNumber;
5771
+ }, z.core.$strip>;
5772
+ }, z.core.$strip>>;
5773
+ }, z.core.$strip>>;
5774
+ skipped: z.ZodObject<{
5775
+ belowFloor: z.ZodNumber;
5776
+ maxInterval: z.ZodNumber;
5777
+ invalid: z.ZodNumber;
5778
+ }, z.core.$strip>;
5779
+ }, z.core.$strip>>;
5780
+ baseline: z.ZodArray<z.ZodObject<{
5781
+ day: z.ZodNumber;
5782
+ scheduled: z.ZodNumber;
5783
+ rSum: z.ZodNullable<z.ZodNumber>;
5784
+ }, z.core.$strip>>;
5785
+ }, z.core.$strip>, z.ZodObject<{
5786
+ status: z.ZodLiteral<"quotaZero">;
5787
+ }, z.core.$strip>, z.ZodObject<{
5788
+ status: z.ZodLiteral<"invalidWeights">;
5789
+ }, z.core.$strip>], "status">;
5790
+ export type SrsPreviewPostponeOutput = z.infer<typeof srsPreviewPostponeOutputSchema>;
5791
+ export declare const srsApplyPostponeInputSchema: z.ZodObject<{
5792
+ notebaseId: z.ZodUUID;
5793
+ planId: z.ZodString;
5794
+ unlimited: z.ZodOptional<z.ZodBoolean>;
5795
+ threshold: z.ZodNumber;
5796
+ flatten: z.ZodOptional<z.ZodBoolean>;
5797
+ }, z.core.$strict>;
5798
+ export type SrsApplyPostponeInput = z.infer<typeof srsApplyPostponeInputSchema>;
5799
+ export declare const srsRescheduleApplyOutputSchema: z.ZodObject<{
5800
+ moved: z.ZodNumber;
5801
+ txid: z.ZodNullable<z.ZodNumber>;
5802
+ reviewsPerDay: z.ZodNumber;
5803
+ }, z.core.$strip>;
5804
+ export type SrsRescheduleApplyOutput = z.infer<typeof srsRescheduleApplyOutputSchema>;
5805
+ export declare const srsApplyPostponeOutputSchema: z.ZodObject<{
5806
+ moved: z.ZodNumber;
5807
+ txid: z.ZodNullable<z.ZodNumber>;
5808
+ reviewsPerDay: z.ZodNumber;
5809
+ }, z.core.$strip>;
5810
+ export type SrsApplyPostponeOutput = z.infer<typeof srsApplyPostponeOutputSchema>;
4670
5811
  //#endregion
4671
5812
  //#region src/schemas/srs-stats.d.ts
4672
5813
  export declare const srsActivityStatsItemSchema: z.ZodObject<{
@@ -4943,7 +6084,7 @@ export declare const contract: {
4943
6084
  unlimitedNotebaseNotes: import("zod").ZodBoolean;
4944
6085
  notebaseNoteLimit: import("zod").ZodNumber;
4945
6086
  notebaseNoteCount: import("zod").ZodNumber;
4946
- }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
6087
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CHECKOUT_CONFLICT" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
4947
6088
  createCheckoutSession: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
4948
6089
  currency: import("zod").ZodEnum<{
4949
6090
  cad: "cad";
@@ -4969,9 +6110,80 @@ export declare const contract: {
4969
6110
  pro: "pro";
4970
6111
  ultra: "ultra";
4971
6112
  }>>;
6113
+ requestId: import("zod").ZodOptional<import("zod").ZodUUID>;
6114
+ attribution: import("zod").ZodOptional<import("zod").ZodObject<{
6115
+ journeyId: import("zod").ZodUUID;
6116
+ actual: import("zod").ZodObject<{
6117
+ entry: import("zod").ZodEnum<{
6118
+ billing_settings: "billing_settings";
6119
+ content_link: "content_link";
6120
+ direct: "direct";
6121
+ ebook_limit: "ebook_limit";
6122
+ ebook_upload_gate: "ebook_upload_gate";
6123
+ extension_notebase_limit: "extension_notebase_limit";
6124
+ extension_plan_badge: "extension_plan_badge";
6125
+ extension_quota_exhausted: "extension_quota_exhausted";
6126
+ extension_upgrade: "extension_upgrade";
6127
+ extension_video_quota: "extension_video_quota";
6128
+ featurebase_banner: "featurebase_banner";
6129
+ mcp_limit: "mcp_limit";
6130
+ notebase_header: "notebase_header";
6131
+ notebase_limit: "notebase_limit";
6132
+ pdf_download_gate: "pdf_download_gate";
6133
+ pdf_free_trial_card: "pdf_free_trial_card";
6134
+ pdf_trial_exhausted: "pdf_trial_exhausted";
6135
+ pdf_upgrade_notice: "pdf_upgrade_notice";
6136
+ pdf_watermark_preview: "pdf_watermark_preview";
6137
+ site_footer: "site_footer";
6138
+ site_nav: "site_nav";
6139
+ unknown: "unknown";
6140
+ }>;
6141
+ occurredAt: import("zod").ZodISODateTime;
6142
+ campaign: import("zod").ZodOptional<import("zod").ZodString>;
6143
+ sourceRoute: import("zod").ZodOptional<import("zod").ZodString>;
6144
+ }, import("zod/v4/core").$strict>;
6145
+ lastNonDirect: import("zod").ZodOptional<import("zod").ZodObject<{
6146
+ entry: import("zod").ZodEnum<{
6147
+ billing_settings: "billing_settings";
6148
+ content_link: "content_link";
6149
+ direct: "direct";
6150
+ ebook_limit: "ebook_limit";
6151
+ ebook_upload_gate: "ebook_upload_gate";
6152
+ extension_notebase_limit: "extension_notebase_limit";
6153
+ extension_plan_badge: "extension_plan_badge";
6154
+ extension_quota_exhausted: "extension_quota_exhausted";
6155
+ extension_upgrade: "extension_upgrade";
6156
+ extension_video_quota: "extension_video_quota";
6157
+ featurebase_banner: "featurebase_banner";
6158
+ mcp_limit: "mcp_limit";
6159
+ notebase_header: "notebase_header";
6160
+ notebase_limit: "notebase_limit";
6161
+ pdf_download_gate: "pdf_download_gate";
6162
+ pdf_free_trial_card: "pdf_free_trial_card";
6163
+ pdf_trial_exhausted: "pdf_trial_exhausted";
6164
+ pdf_upgrade_notice: "pdf_upgrade_notice";
6165
+ pdf_watermark_preview: "pdf_watermark_preview";
6166
+ site_footer: "site_footer";
6167
+ site_nav: "site_nav";
6168
+ unknown: "unknown";
6169
+ }>;
6170
+ occurredAt: import("zod").ZodISODateTime;
6171
+ campaign: import("zod").ZodOptional<import("zod").ZodString>;
6172
+ sourceRoute: import("zod").ZodOptional<import("zod").ZodString>;
6173
+ }, import("zod/v4/core").$strict>>;
6174
+ acquisition: import("zod").ZodOptional<import("zod").ZodObject<{
6175
+ occurredAt: import("zod").ZodISODateTime;
6176
+ utmSource: import("zod").ZodOptional<import("zod").ZodString>;
6177
+ utmMedium: import("zod").ZodOptional<import("zod").ZodString>;
6178
+ utmCampaign: import("zod").ZodOptional<import("zod").ZodString>;
6179
+ utmContent: import("zod").ZodOptional<import("zod").ZodString>;
6180
+ utmTerm: import("zod").ZodOptional<import("zod").ZodString>;
6181
+ referrerDomain: import("zod").ZodOptional<import("zod").ZodString>;
6182
+ }, import("zod/v4/core").$strict>>;
6183
+ }, import("zod/v4/core").$strict>>;
4972
6184
  }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
4973
6185
  url: import("zod").ZodURL;
4974
- }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
6186
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CHECKOUT_CONFLICT" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
4975
6187
  createCustomerPortalSession: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
4976
6188
  locale: import("zod").ZodEnum<{
4977
6189
  en: "en";
@@ -4986,10 +6198,10 @@ export declare const contract: {
4986
6198
  }>;
4987
6199
  }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
4988
6200
  url: import("zod").ZodURL;
4989
- }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
6201
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CHECKOUT_CONFLICT" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
4990
6202
  cancelScheduledChange: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, import("zod").ZodObject<{
4991
6203
  success: import("zod").ZodLiteral<true>;
4992
- }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
6204
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "BILLING_CHANGE_SCHEDULED" | "BILLING_CHECKOUT_CONFLICT" | "BILLING_CUSTOMER_NOT_FOUND" | "BILLING_NOT_CONFIGURED" | "BILLING_PASS_ACTIVE">>, Record<never, never>>;
4993
6205
  };
4994
6206
  card: {
4995
6207
  list: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
@@ -5492,10 +6704,12 @@ export declare const contract: {
5492
6704
  subscribed: import("zod").ZodBoolean;
5493
6705
  }, import("zod/v4/core").$strict>>;
5494
6706
  unsubscribedAll: import("zod").ZodBoolean;
6707
+ practiceReminderTime: import("zod").ZodNullable<import("zod").ZodString>;
5495
6708
  }, import("zod/v4/core").$strict>, Record<never, never>, Record<never, never>>;
5496
6709
  update: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
5497
6710
  categories: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodBoolean>>;
5498
6711
  unsubscribedAll: import("zod").ZodOptional<import("zod").ZodBoolean>;
6712
+ practiceReminderTime: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
5499
6713
  locale: import("zod").ZodEnum<{
5500
6714
  en: "en";
5501
6715
  es: "es";
@@ -5517,6 +6731,7 @@ export declare const contract: {
5517
6731
  subscribed: import("zod").ZodBoolean;
5518
6732
  }, import("zod/v4/core").$strict>>;
5519
6733
  unsubscribedAll: import("zod").ZodBoolean;
6734
+ practiceReminderTime: import("zod").ZodNullable<import("zod").ZodString>;
5520
6735
  }, import("zod/v4/core").$strict>, Record<never, never>, Record<never, never>>;
5521
6736
  getByToken: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
5522
6737
  token: import("zod").ZodString;
@@ -5541,12 +6756,14 @@ export declare const contract: {
5541
6756
  subscribed: import("zod").ZodBoolean;
5542
6757
  }, import("zod/v4/core").$strict>>;
5543
6758
  unsubscribedAll: import("zod").ZodBoolean;
6759
+ practiceReminderTime: import("zod").ZodNullable<import("zod").ZodString>;
5544
6760
  maskedEmail: import("zod").ZodString;
5545
6761
  highlightCategory: import("zod").ZodNullable<import("zod").ZodString>;
5546
6762
  }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "EMAIL_LINK_INVALID">>, Record<never, never>>;
5547
6763
  updateByToken: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
5548
6764
  categories: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodBoolean>>;
5549
6765
  unsubscribedAll: import("zod").ZodOptional<import("zod").ZodBoolean>;
6766
+ practiceReminderTime: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
5550
6767
  token: import("zod").ZodString;
5551
6768
  locale: import("zod").ZodEnum<{
5552
6769
  en: "en";
@@ -5569,6 +6786,7 @@ export declare const contract: {
5569
6786
  subscribed: import("zod").ZodBoolean;
5570
6787
  }, import("zod/v4/core").$strict>>;
5571
6788
  unsubscribedAll: import("zod").ZodBoolean;
6789
+ practiceReminderTime: import("zod").ZodNullable<import("zod").ZodString>;
5572
6790
  maskedEmail: import("zod").ZodString;
5573
6791
  highlightCategory: import("zod").ZodNullable<import("zod").ZodString>;
5574
6792
  }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "EMAIL_LINK_INVALID">>, Record<never, never>>;
@@ -5586,6 +6804,51 @@ export declare const contract: {
5586
6804
  }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
5587
6805
  };
5588
6806
  hostedAi: {
6807
+ pools: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
6808
+ feature: import("zod").ZodEnum<{
6809
+ customAction: "customAction";
6810
+ inputTranslation: "inputTranslation";
6811
+ languageDetection: "languageDetection";
6812
+ noteSuggestion: "noteSuggestion";
6813
+ pageTranslation: "pageTranslation";
6814
+ pdfTranslation: "pdfTranslation";
6815
+ selectionTranslation: "selectionTranslation";
6816
+ videoSubtitles: "videoSubtitles";
6817
+ }>;
6818
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6819
+ pools: import("zod").ZodArray<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
6820
+ periodKind: import("zod").ZodEnum<{
6821
+ daily: "daily";
6822
+ weekly: "weekly";
6823
+ }>;
6824
+ usedPercent: import("zod").ZodNumber;
6825
+ resetAt: import("zod").ZodNullable<import("zod").ZodISODateTime>;
6826
+ features: import("zod").ZodArray<import("zod").ZodEnum<{
6827
+ customAction: "customAction";
6828
+ inputTranslation: "inputTranslation";
6829
+ languageDetection: "languageDetection";
6830
+ noteSuggestion: "noteSuggestion";
6831
+ pageTranslation: "pageTranslation";
6832
+ pdfTranslation: "pdfTranslation";
6833
+ selectionTranslation: "selectionTranslation";
6834
+ videoSubtitles: "videoSubtitles";
6835
+ }>>;
6836
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
6837
+ periodKind: import("zod").ZodLiteral<"once">;
6838
+ usedPercent: import("zod").ZodNumber;
6839
+ expiresAt: import("zod").ZodISODateTime;
6840
+ features: import("zod").ZodArray<import("zod").ZodEnum<{
6841
+ customAction: "customAction";
6842
+ inputTranslation: "inputTranslation";
6843
+ languageDetection: "languageDetection";
6844
+ noteSuggestion: "noteSuggestion";
6845
+ pageTranslation: "pageTranslation";
6846
+ pdfTranslation: "pdfTranslation";
6847
+ selectionTranslation: "selectionTranslation";
6848
+ videoSubtitles: "videoSubtitles";
6849
+ }>>;
6850
+ }, import("zod/v4/core").$strict>], "periodKind">>;
6851
+ }, import("zod/v4/core").$strict>, Record<never, never>, Record<never, never>>;
5589
6852
  status: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
5590
6853
  credits: import("zod").ZodArray<import("zod").ZodObject<{
5591
6854
  periodKind: import("zod").ZodEnum<{
@@ -5600,6 +6863,7 @@ export declare const contract: {
5600
6863
  languageDetection: "languageDetection";
5601
6864
  noteSuggestion: "noteSuggestion";
5602
6865
  pageTranslation: "pageTranslation";
6866
+ pdfTranslation: "pdfTranslation";
5603
6867
  selectionTranslation: "selectionTranslation";
5604
6868
  videoSubtitles: "videoSubtitles";
5605
6869
  }>>;
@@ -5617,6 +6881,7 @@ export declare const contract: {
5617
6881
  languageDetection: "languageDetection";
5618
6882
  noteSuggestion: "noteSuggestion";
5619
6883
  pageTranslation: "pageTranslation";
6884
+ pdfTranslation: "pdfTranslation";
5620
6885
  selectionTranslation: "selectionTranslation";
5621
6886
  videoSubtitles: "videoSubtitles";
5622
6887
  }>>;
@@ -5630,6 +6895,7 @@ export declare const contract: {
5630
6895
  languageDetection: "languageDetection";
5631
6896
  noteSuggestion: "noteSuggestion";
5632
6897
  pageTranslation: "pageTranslation";
6898
+ pdfTranslation: "pdfTranslation";
5633
6899
  selectionTranslation: "selectionTranslation";
5634
6900
  videoSubtitles: "videoSubtitles";
5635
6901
  }>>;
@@ -5641,10 +6907,15 @@ export declare const contract: {
5641
6907
  available: import("zod").ZodBoolean;
5642
6908
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5643
6909
  authentication_required: "authentication_required";
6910
+ pro_required: "pro_required";
5644
6911
  quota_exhausted: "quota_exhausted";
5645
6912
  service_unavailable: "service_unavailable";
5646
6913
  ultra_required: "ultra_required";
5647
6914
  }>>;
6915
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
6916
+ pro: "pro";
6917
+ ultra: "ultra";
6918
+ }>>;
5648
6919
  requiresUltra: import("zod").ZodBoolean;
5649
6920
  modelRevision: import("zod").ZodString;
5650
6921
  }, import("zod/v4/core").$strict>;
@@ -5653,10 +6924,15 @@ export declare const contract: {
5653
6924
  available: import("zod").ZodBoolean;
5654
6925
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5655
6926
  authentication_required: "authentication_required";
6927
+ pro_required: "pro_required";
5656
6928
  quota_exhausted: "quota_exhausted";
5657
6929
  service_unavailable: "service_unavailable";
5658
6930
  ultra_required: "ultra_required";
5659
6931
  }>>;
6932
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
6933
+ pro: "pro";
6934
+ ultra: "ultra";
6935
+ }>>;
5660
6936
  requiresUltra: import("zod").ZodBoolean;
5661
6937
  modelRevision: import("zod").ZodString;
5662
6938
  }, import("zod/v4/core").$strict>;
@@ -5667,10 +6943,15 @@ export declare const contract: {
5667
6943
  available: import("zod").ZodBoolean;
5668
6944
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5669
6945
  authentication_required: "authentication_required";
6946
+ pro_required: "pro_required";
5670
6947
  quota_exhausted: "quota_exhausted";
5671
6948
  service_unavailable: "service_unavailable";
5672
6949
  ultra_required: "ultra_required";
5673
6950
  }>>;
6951
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
6952
+ pro: "pro";
6953
+ ultra: "ultra";
6954
+ }>>;
5674
6955
  requiresUltra: import("zod").ZodBoolean;
5675
6956
  modelRevision: import("zod").ZodString;
5676
6957
  }, import("zod/v4/core").$strict>;
@@ -5679,10 +6960,15 @@ export declare const contract: {
5679
6960
  available: import("zod").ZodBoolean;
5680
6961
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5681
6962
  authentication_required: "authentication_required";
6963
+ pro_required: "pro_required";
5682
6964
  quota_exhausted: "quota_exhausted";
5683
6965
  service_unavailable: "service_unavailable";
5684
6966
  ultra_required: "ultra_required";
5685
6967
  }>>;
6968
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
6969
+ pro: "pro";
6970
+ ultra: "ultra";
6971
+ }>>;
5686
6972
  requiresUltra: import("zod").ZodBoolean;
5687
6973
  modelRevision: import("zod").ZodString;
5688
6974
  }, import("zod/v4/core").$strict>;
@@ -5693,10 +6979,15 @@ export declare const contract: {
5693
6979
  available: import("zod").ZodBoolean;
5694
6980
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5695
6981
  authentication_required: "authentication_required";
6982
+ pro_required: "pro_required";
5696
6983
  quota_exhausted: "quota_exhausted";
5697
6984
  service_unavailable: "service_unavailable";
5698
6985
  ultra_required: "ultra_required";
5699
6986
  }>>;
6987
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
6988
+ pro: "pro";
6989
+ ultra: "ultra";
6990
+ }>>;
5700
6991
  requiresUltra: import("zod").ZodBoolean;
5701
6992
  modelRevision: import("zod").ZodString;
5702
6993
  }, import("zod/v4/core").$strict>;
@@ -5705,10 +6996,15 @@ export declare const contract: {
5705
6996
  available: import("zod").ZodBoolean;
5706
6997
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5707
6998
  authentication_required: "authentication_required";
6999
+ pro_required: "pro_required";
5708
7000
  quota_exhausted: "quota_exhausted";
5709
7001
  service_unavailable: "service_unavailable";
5710
7002
  ultra_required: "ultra_required";
5711
7003
  }>>;
7004
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7005
+ pro: "pro";
7006
+ ultra: "ultra";
7007
+ }>>;
5712
7008
  requiresUltra: import("zod").ZodBoolean;
5713
7009
  modelRevision: import("zod").ZodString;
5714
7010
  }, import("zod/v4/core").$strict>;
@@ -5719,10 +7015,15 @@ export declare const contract: {
5719
7015
  available: import("zod").ZodBoolean;
5720
7016
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5721
7017
  authentication_required: "authentication_required";
7018
+ pro_required: "pro_required";
5722
7019
  quota_exhausted: "quota_exhausted";
5723
7020
  service_unavailable: "service_unavailable";
5724
7021
  ultra_required: "ultra_required";
5725
7022
  }>>;
7023
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7024
+ pro: "pro";
7025
+ ultra: "ultra";
7026
+ }>>;
5726
7027
  requiresUltra: import("zod").ZodBoolean;
5727
7028
  modelRevision: import("zod").ZodString;
5728
7029
  }, import("zod/v4/core").$strict>;
@@ -5731,10 +7032,15 @@ export declare const contract: {
5731
7032
  available: import("zod").ZodBoolean;
5732
7033
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5733
7034
  authentication_required: "authentication_required";
7035
+ pro_required: "pro_required";
5734
7036
  quota_exhausted: "quota_exhausted";
5735
7037
  service_unavailable: "service_unavailable";
5736
7038
  ultra_required: "ultra_required";
5737
7039
  }>>;
7040
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7041
+ pro: "pro";
7042
+ ultra: "ultra";
7043
+ }>>;
5738
7044
  requiresUltra: import("zod").ZodBoolean;
5739
7045
  modelRevision: import("zod").ZodString;
5740
7046
  }, import("zod/v4/core").$strict>;
@@ -5745,10 +7051,15 @@ export declare const contract: {
5745
7051
  available: import("zod").ZodBoolean;
5746
7052
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5747
7053
  authentication_required: "authentication_required";
7054
+ pro_required: "pro_required";
5748
7055
  quota_exhausted: "quota_exhausted";
5749
7056
  service_unavailable: "service_unavailable";
5750
7057
  ultra_required: "ultra_required";
5751
7058
  }>>;
7059
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7060
+ pro: "pro";
7061
+ ultra: "ultra";
7062
+ }>>;
5752
7063
  requiresUltra: import("zod").ZodBoolean;
5753
7064
  modelRevision: import("zod").ZodString;
5754
7065
  }, import("zod/v4/core").$strict>;
@@ -5757,10 +7068,15 @@ export declare const contract: {
5757
7068
  available: import("zod").ZodBoolean;
5758
7069
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5759
7070
  authentication_required: "authentication_required";
7071
+ pro_required: "pro_required";
5760
7072
  quota_exhausted: "quota_exhausted";
5761
7073
  service_unavailable: "service_unavailable";
5762
7074
  ultra_required: "ultra_required";
5763
7075
  }>>;
7076
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7077
+ pro: "pro";
7078
+ ultra: "ultra";
7079
+ }>>;
5764
7080
  requiresUltra: import("zod").ZodBoolean;
5765
7081
  modelRevision: import("zod").ZodString;
5766
7082
  }, import("zod/v4/core").$strict>;
@@ -5771,10 +7087,15 @@ export declare const contract: {
5771
7087
  available: import("zod").ZodBoolean;
5772
7088
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5773
7089
  authentication_required: "authentication_required";
7090
+ pro_required: "pro_required";
5774
7091
  quota_exhausted: "quota_exhausted";
5775
7092
  service_unavailable: "service_unavailable";
5776
7093
  ultra_required: "ultra_required";
5777
7094
  }>>;
7095
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7096
+ pro: "pro";
7097
+ ultra: "ultra";
7098
+ }>>;
5778
7099
  requiresUltra: import("zod").ZodBoolean;
5779
7100
  modelRevision: import("zod").ZodString;
5780
7101
  }, import("zod/v4/core").$strict>;
@@ -5783,10 +7104,15 @@ export declare const contract: {
5783
7104
  available: import("zod").ZodBoolean;
5784
7105
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5785
7106
  authentication_required: "authentication_required";
7107
+ pro_required: "pro_required";
5786
7108
  quota_exhausted: "quota_exhausted";
5787
7109
  service_unavailable: "service_unavailable";
5788
7110
  ultra_required: "ultra_required";
5789
7111
  }>>;
7112
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7113
+ pro: "pro";
7114
+ ultra: "ultra";
7115
+ }>>;
5790
7116
  requiresUltra: import("zod").ZodBoolean;
5791
7117
  modelRevision: import("zod").ZodString;
5792
7118
  }, import("zod/v4/core").$strict>;
@@ -5797,10 +7123,15 @@ export declare const contract: {
5797
7123
  available: import("zod").ZodBoolean;
5798
7124
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5799
7125
  authentication_required: "authentication_required";
7126
+ pro_required: "pro_required";
5800
7127
  quota_exhausted: "quota_exhausted";
5801
7128
  service_unavailable: "service_unavailable";
5802
7129
  ultra_required: "ultra_required";
5803
7130
  }>>;
7131
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7132
+ pro: "pro";
7133
+ ultra: "ultra";
7134
+ }>>;
5804
7135
  requiresUltra: import("zod").ZodBoolean;
5805
7136
  modelRevision: import("zod").ZodString;
5806
7137
  }, import("zod/v4/core").$strict>;
@@ -5809,10 +7140,15 @@ export declare const contract: {
5809
7140
  available: import("zod").ZodBoolean;
5810
7141
  unavailableReason: import("zod").ZodNullable<import("zod").ZodEnum<{
5811
7142
  authentication_required: "authentication_required";
7143
+ pro_required: "pro_required";
5812
7144
  quota_exhausted: "quota_exhausted";
5813
7145
  service_unavailable: "service_unavailable";
5814
7146
  ultra_required: "ultra_required";
5815
7147
  }>>;
7148
+ upgradeTo: import("zod").ZodNullable<import("zod").ZodEnum<{
7149
+ pro: "pro";
7150
+ ultra: "ultra";
7151
+ }>>;
5816
7152
  requiresUltra: import("zod").ZodBoolean;
5817
7153
  modelRevision: import("zod").ZodString;
5818
7154
  }, import("zod/v4/core").$strict>;
@@ -6037,6 +7373,11 @@ export declare const contract: {
6037
7373
  "FSRS-7": "FSRS-7";
6038
7374
  }>;
6039
7375
  srsSleepingAt: import("zod").ZodNullable<import("zod").ZodDate>;
7376
+ srsSleepSource: import("zod").ZodNullable<import("zod").ZodEnum<{
7377
+ agent: "agent";
7378
+ auto: "auto";
7379
+ manual: "manual";
7380
+ }>>;
6040
7381
  createdAt: import("zod").ZodCoercedDate<unknown>;
6041
7382
  updatedAt: import("zod").ZodCoercedDate<unknown>;
6042
7383
  notebaseColumns: import("zod").ZodArray<import("zod").ZodObject<{
@@ -6206,6 +7547,11 @@ export declare const contract: {
6206
7547
  "FSRS-7": "FSRS-7";
6207
7548
  }>;
6208
7549
  srsSleepingAt: import("zod").ZodNullable<import("zod").ZodDate>;
7550
+ srsSleepSource: import("zod").ZodNullable<import("zod").ZodEnum<{
7551
+ agent: "agent";
7552
+ auto: "auto";
7553
+ manual: "manual";
7554
+ }>>;
6209
7555
  createdAt: import("zod").ZodDate;
6210
7556
  updatedAt: import("zod").ZodDate;
6211
7557
  }, import("zod/v4/core").$strip>;
@@ -6240,6 +7586,11 @@ export declare const contract: {
6240
7586
  "FSRS-7": "FSRS-7";
6241
7587
  }>;
6242
7588
  srsSleepingAt: import("zod").ZodNullable<import("zod").ZodDate>;
7589
+ srsSleepSource: import("zod").ZodNullable<import("zod").ZodEnum<{
7590
+ agent: "agent";
7591
+ auto: "auto";
7592
+ manual: "manual";
7593
+ }>>;
6243
7594
  createdAt: import("zod").ZodDate;
6244
7595
  updatedAt: import("zod").ZodDate;
6245
7596
  }, import("zod/v4/core").$strip>;
@@ -6562,6 +7913,268 @@ export declare const contract: {
6562
7913
  txid: import("zod").ZodNumber;
6563
7914
  }, import("zod/v4/core").$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "CONCURRENT_POSITION_CONFLICT" | "NOTEBASE_NOT_FOUND">>, Record<never, never>>;
6564
7915
  };
7916
+ pdfTranslation: {
7917
+ status: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{}, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7918
+ freeTrialsRemaining: import("zod").ZodNumber;
7919
+ funded: import("zod").ZodBoolean;
7920
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Record<never, never>>;
7921
+ list: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{}, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7922
+ items: import("zod").ZodArray<import("zod").ZodObject<{
7923
+ id: import("zod").ZodUUID;
7924
+ status: import("zod").ZodEnum<{
7925
+ cancel_requested: "cancel_requested";
7926
+ cancelled: "cancelled";
7927
+ expired: "expired";
7928
+ failed: "failed";
7929
+ queued: "queued";
7930
+ running: "running";
7931
+ succeeded: "succeeded";
7932
+ }>;
7933
+ sourceFileName: import("zod").ZodString;
7934
+ targetLanguage: import("zod").ZodString;
7935
+ modelTier: import("zod").ZodEnum<{
7936
+ advance: "advance";
7937
+ normal: "normal";
7938
+ }>;
7939
+ batchId: import("zod").ZodUUID;
7940
+ batchPosition: import("zod").ZodNumber;
7941
+ waitingAhead: import("zod").ZodNullable<import("zod").ZodNumber>;
7942
+ freeTrial: import("zod").ZodBoolean;
7943
+ outputs: import("zod").ZodObject<{
7944
+ translated: import("zod").ZodBoolean;
7945
+ bilingual: import("zod").ZodBoolean;
7946
+ }, import("zod/v4/core").$strict>;
7947
+ pageCount: import("zod").ZodNumber;
7948
+ progressStage: import("zod").ZodNullable<import("zod").ZodString>;
7949
+ progressPercent: import("zod").ZodNumber;
7950
+ estimatedCostNanoUsd: import("zod").ZodNumber;
7951
+ chargedCostNanoUsd: import("zod").ZodNumber;
7952
+ error: import("zod").ZodNullable<import("zod").ZodObject<{
7953
+ category: import("zod").ZodString;
7954
+ message: import("zod").ZodString;
7955
+ }, import("zod/v4/core").$strict>>;
7956
+ workerRelease: import("zod").ZodNullable<import("zod").ZodString>;
7957
+ createdAt: import("zod").ZodCoercedDate<unknown>;
7958
+ startedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
7959
+ completedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
7960
+ outputExpiresAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
7961
+ }, import("zod/v4/core").$strict>>;
7962
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Record<never, never>>;
7963
+ requestUpload: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
7964
+ fileName: import("zod").ZodString;
7965
+ fileByteSize: import("zod").ZodNumber;
7966
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7967
+ uploadId: import("zod").ZodUUID;
7968
+ upload: import("zod").ZodObject<{
7969
+ url: import("zod").ZodURL;
7970
+ headers: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodString>;
7971
+ }, import("zod/v4/core").$strict>;
7972
+ expiresAt: import("zod").ZodCoercedDate<unknown>;
7973
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_FILE_TOO_LARGE">>, Record<never, never>>;
7974
+ submit: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
7975
+ uploadIds: import("zod").ZodArray<import("zod").ZodUUID>;
7976
+ idempotencyKey: import("zod").ZodString;
7977
+ targetLanguage: import("zod").ZodString;
7978
+ modelTier: import("zod").ZodEnum<{
7979
+ advance: "advance";
7980
+ normal: "normal";
7981
+ }>;
7982
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
7983
+ batchId: import("zod").ZodUUID;
7984
+ jobs: import("zod").ZodArray<import("zod").ZodObject<{
7985
+ id: import("zod").ZodUUID;
7986
+ status: import("zod").ZodEnum<{
7987
+ cancel_requested: "cancel_requested";
7988
+ cancelled: "cancelled";
7989
+ expired: "expired";
7990
+ failed: "failed";
7991
+ queued: "queued";
7992
+ running: "running";
7993
+ succeeded: "succeeded";
7994
+ }>;
7995
+ sourceFileName: import("zod").ZodString;
7996
+ targetLanguage: import("zod").ZodString;
7997
+ modelTier: import("zod").ZodEnum<{
7998
+ advance: "advance";
7999
+ normal: "normal";
8000
+ }>;
8001
+ batchId: import("zod").ZodUUID;
8002
+ batchPosition: import("zod").ZodNumber;
8003
+ waitingAhead: import("zod").ZodNullable<import("zod").ZodNumber>;
8004
+ freeTrial: import("zod").ZodBoolean;
8005
+ outputs: import("zod").ZodObject<{
8006
+ translated: import("zod").ZodBoolean;
8007
+ bilingual: import("zod").ZodBoolean;
8008
+ }, import("zod/v4/core").$strict>;
8009
+ pageCount: import("zod").ZodNumber;
8010
+ progressStage: import("zod").ZodNullable<import("zod").ZodString>;
8011
+ progressPercent: import("zod").ZodNumber;
8012
+ estimatedCostNanoUsd: import("zod").ZodNumber;
8013
+ chargedCostNanoUsd: import("zod").ZodNumber;
8014
+ error: import("zod").ZodNullable<import("zod").ZodObject<{
8015
+ category: import("zod").ZodString;
8016
+ message: import("zod").ZodString;
8017
+ }, import("zod/v4/core").$strict>>;
8018
+ workerRelease: import("zod").ZodNullable<import("zod").ZodString>;
8019
+ createdAt: import("zod").ZodCoercedDate<unknown>;
8020
+ startedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8021
+ completedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8022
+ outputExpiresAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8023
+ }, import("zod/v4/core").$strict>>;
8024
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "HOSTED_AI_TIER_RESTRICTED" | "PDF_TRANSLATION_ALREADY_TRANSLATED" | "PDF_TRANSLATION_FILE_TOO_LARGE" | "PDF_TRANSLATION_IDEMPOTENCY_CONFLICT" | "PDF_TRANSLATION_INSUFFICIENT_CREDIT" | "PDF_TRANSLATION_INVALID_PDF" | "PDF_TRANSLATION_PAGE_LIMIT_EXCEEDED" | "PDF_TRANSLATION_QUEUE_FULL" | "PDF_TRANSLATION_UPLOAD_EXPIRED" | "PDF_TRANSLATION_UPLOAD_NOT_COMPLETED" | "PDF_TRANSLATION_UPLOAD_NOT_FOUND">>, Record<never, never>>;
8025
+ get: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
8026
+ id: import("zod").ZodUUID;
8027
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
8028
+ job: import("zod").ZodObject<{
8029
+ id: import("zod").ZodUUID;
8030
+ status: import("zod").ZodEnum<{
8031
+ cancel_requested: "cancel_requested";
8032
+ cancelled: "cancelled";
8033
+ expired: "expired";
8034
+ failed: "failed";
8035
+ queued: "queued";
8036
+ running: "running";
8037
+ succeeded: "succeeded";
8038
+ }>;
8039
+ sourceFileName: import("zod").ZodString;
8040
+ targetLanguage: import("zod").ZodString;
8041
+ modelTier: import("zod").ZodEnum<{
8042
+ advance: "advance";
8043
+ normal: "normal";
8044
+ }>;
8045
+ batchId: import("zod").ZodUUID;
8046
+ batchPosition: import("zod").ZodNumber;
8047
+ waitingAhead: import("zod").ZodNullable<import("zod").ZodNumber>;
8048
+ freeTrial: import("zod").ZodBoolean;
8049
+ outputs: import("zod").ZodObject<{
8050
+ translated: import("zod").ZodBoolean;
8051
+ bilingual: import("zod").ZodBoolean;
8052
+ }, import("zod/v4/core").$strict>;
8053
+ pageCount: import("zod").ZodNumber;
8054
+ progressStage: import("zod").ZodNullable<import("zod").ZodString>;
8055
+ progressPercent: import("zod").ZodNumber;
8056
+ estimatedCostNanoUsd: import("zod").ZodNumber;
8057
+ chargedCostNanoUsd: import("zod").ZodNumber;
8058
+ error: import("zod").ZodNullable<import("zod").ZodObject<{
8059
+ category: import("zod").ZodString;
8060
+ message: import("zod").ZodString;
8061
+ }, import("zod/v4/core").$strict>>;
8062
+ workerRelease: import("zod").ZodNullable<import("zod").ZodString>;
8063
+ createdAt: import("zod").ZodCoercedDate<unknown>;
8064
+ startedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8065
+ completedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8066
+ outputExpiresAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8067
+ }, import("zod/v4/core").$strict>;
8068
+ batch: import("zod").ZodArray<import("zod").ZodObject<{
8069
+ id: import("zod").ZodUUID;
8070
+ status: import("zod").ZodEnum<{
8071
+ cancel_requested: "cancel_requested";
8072
+ cancelled: "cancelled";
8073
+ expired: "expired";
8074
+ failed: "failed";
8075
+ queued: "queued";
8076
+ running: "running";
8077
+ succeeded: "succeeded";
8078
+ }>;
8079
+ sourceFileName: import("zod").ZodString;
8080
+ targetLanguage: import("zod").ZodString;
8081
+ modelTier: import("zod").ZodEnum<{
8082
+ advance: "advance";
8083
+ normal: "normal";
8084
+ }>;
8085
+ batchId: import("zod").ZodUUID;
8086
+ batchPosition: import("zod").ZodNumber;
8087
+ waitingAhead: import("zod").ZodNullable<import("zod").ZodNumber>;
8088
+ freeTrial: import("zod").ZodBoolean;
8089
+ outputs: import("zod").ZodObject<{
8090
+ translated: import("zod").ZodBoolean;
8091
+ bilingual: import("zod").ZodBoolean;
8092
+ }, import("zod/v4/core").$strict>;
8093
+ pageCount: import("zod").ZodNumber;
8094
+ progressStage: import("zod").ZodNullable<import("zod").ZodString>;
8095
+ progressPercent: import("zod").ZodNumber;
8096
+ estimatedCostNanoUsd: import("zod").ZodNumber;
8097
+ chargedCostNanoUsd: import("zod").ZodNumber;
8098
+ error: import("zod").ZodNullable<import("zod").ZodObject<{
8099
+ category: import("zod").ZodString;
8100
+ message: import("zod").ZodString;
8101
+ }, import("zod/v4/core").$strict>>;
8102
+ workerRelease: import("zod").ZodNullable<import("zod").ZodString>;
8103
+ createdAt: import("zod").ZodCoercedDate<unknown>;
8104
+ startedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8105
+ completedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8106
+ outputExpiresAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8107
+ }, import("zod/v4/core").$strict>>;
8108
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_NOT_FOUND">>, Record<never, never>>;
8109
+ cancel: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
8110
+ id: import("zod").ZodUUID;
8111
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
8112
+ id: import("zod").ZodUUID;
8113
+ status: import("zod").ZodEnum<{
8114
+ cancel_requested: "cancel_requested";
8115
+ cancelled: "cancelled";
8116
+ expired: "expired";
8117
+ failed: "failed";
8118
+ queued: "queued";
8119
+ running: "running";
8120
+ succeeded: "succeeded";
8121
+ }>;
8122
+ sourceFileName: import("zod").ZodString;
8123
+ targetLanguage: import("zod").ZodString;
8124
+ modelTier: import("zod").ZodEnum<{
8125
+ advance: "advance";
8126
+ normal: "normal";
8127
+ }>;
8128
+ batchId: import("zod").ZodUUID;
8129
+ batchPosition: import("zod").ZodNumber;
8130
+ waitingAhead: import("zod").ZodNullable<import("zod").ZodNumber>;
8131
+ freeTrial: import("zod").ZodBoolean;
8132
+ outputs: import("zod").ZodObject<{
8133
+ translated: import("zod").ZodBoolean;
8134
+ bilingual: import("zod").ZodBoolean;
8135
+ }, import("zod/v4/core").$strict>;
8136
+ pageCount: import("zod").ZodNumber;
8137
+ progressStage: import("zod").ZodNullable<import("zod").ZodString>;
8138
+ progressPercent: import("zod").ZodNumber;
8139
+ estimatedCostNanoUsd: import("zod").ZodNumber;
8140
+ chargedCostNanoUsd: import("zod").ZodNumber;
8141
+ error: import("zod").ZodNullable<import("zod").ZodObject<{
8142
+ category: import("zod").ZodString;
8143
+ message: import("zod").ZodString;
8144
+ }, import("zod/v4/core").$strict>>;
8145
+ workerRelease: import("zod").ZodNullable<import("zod").ZodString>;
8146
+ createdAt: import("zod").ZodCoercedDate<unknown>;
8147
+ startedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8148
+ completedAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8149
+ outputExpiresAt: import("zod").ZodNullable<import("zod").ZodCoercedDate<unknown>>;
8150
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_NOT_CANCELLABLE" | "PDF_TRANSLATION_NOT_FOUND">>, Record<never, never>>;
8151
+ getPreviewUrl: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
8152
+ id: import("zod").ZodUUID;
8153
+ variant: import("zod").ZodEnum<{
8154
+ bilingual: "bilingual";
8155
+ translated: "translated";
8156
+ }>;
8157
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
8158
+ url: import("zod").ZodURL;
8159
+ expiresAt: import("zod").ZodCoercedDate<unknown>;
8160
+ watermarked: import("zod").ZodBoolean;
8161
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_NOT_FOUND" | "PDF_TRANSLATION_NOT_READY">>, Record<never, never>>;
8162
+ getDownloadUrl: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
8163
+ id: import("zod").ZodUUID;
8164
+ variant: import("zod").ZodEnum<{
8165
+ bilingual: "bilingual";
8166
+ translated: "translated";
8167
+ }>;
8168
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
8169
+ url: import("zod").ZodURL;
8170
+ expiresAt: import("zod").ZodCoercedDate<unknown>;
8171
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_DOWNLOAD_RESTRICTED" | "PDF_TRANSLATION_NOT_FOUND" | "PDF_TRANSLATION_NOT_READY">>, Record<never, never>>;
8172
+ delete: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
8173
+ id: import("zod").ZodUUID;
8174
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
8175
+ id: import("zod").ZodUUID;
8176
+ }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_UNAVAILABLE">>, Pick<import("@orpc/contract").ErrorMap, "PDF_TRANSLATION_NOT_DELETABLE" | "PDF_TRANSLATION_NOT_FOUND">>, Record<never, never>>;
8177
+ };
6565
8178
  speech: {
6566
8179
  getPreferences: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, import("zod").ZodObject<{
6567
8180
  languageVoices: import("zod").ZodRecord<import("zod").ZodEnum<{
@@ -7926,6 +9539,135 @@ export declare const contract: {
7926
9539
  summary: string;
7927
9540
  description: string;
7928
9541
  } & Record<never, never>>;
9542
+ previewPostpone: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
9543
+ notebaseId: import("zod").ZodUUID;
9544
+ timezone: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
9545
+ dailyLimit: import("zod").ZodOptional<import("zod").ZodNumber>;
9546
+ flattenFullRange: import("zod").ZodOptional<import("zod").ZodBoolean>;
9547
+ }, import("zod/v4/core").$strict>, import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
9548
+ status: import("zod").ZodLiteral<"ready">;
9549
+ expiresAt: import("zod").ZodDate;
9550
+ q: import("zod").ZodNumber;
9551
+ qConfigured: import("zod").ZodNumber;
9552
+ qMax: import("zod").ZodNumber;
9553
+ overdueReviewCount: import("zod").ZodNumber;
9554
+ dueTodayReviewCount: import("zod").ZodNumber;
9555
+ usedToday: import("zod").ZodNumber;
9556
+ plan: import("zod").ZodObject<{
9557
+ planId: import("zod").ZodString;
9558
+ limit: import("zod").ZodNumber;
9559
+ steps: import("zod").ZodArray<import("zod").ZodObject<{
9560
+ threshold: import("zod").ZodNumber;
9561
+ moved: import("zod").ZodNumber;
9562
+ overflowToday: import("zod").ZodNumber;
9563
+ meanRiBefore: import("zod").ZodNumber;
9564
+ meanRAfter: import("zod").ZodNumber;
9565
+ days: import("zod").ZodArray<import("zod").ZodObject<{
9566
+ day: import("zod").ZodNumber;
9567
+ postponed: import("zod").ZodNumber;
9568
+ rSum: import("zod").ZodNumber;
9569
+ }, import("zod/v4/core").$strip>>;
9570
+ flatten: import("zod").ZodNullable<import("zod").ZodObject<{
9571
+ checked: import("zod").ZodBoolean;
9572
+ fromToday: import("zod").ZodNumber;
9573
+ fromFuture: import("zod").ZodNumber;
9574
+ fromDays: import("zod").ZodNumber;
9575
+ kept: import("zod").ZodObject<{
9576
+ stuck: import("zod").ZodNumber;
9577
+ noRoom: import("zod").ZodNumber;
9578
+ }, import("zod/v4/core").$strip>;
9579
+ qSuggest: import("zod").ZodNumber;
9580
+ meanRAfter: import("zod").ZodNumber;
9581
+ days: import("zod").ZodArray<import("zod").ZodObject<{
9582
+ day: import("zod").ZodNumber;
9583
+ scheduled: import("zod").ZodNumber;
9584
+ backlog: import("zod").ZodNumber;
9585
+ backlogRSum: import("zod").ZodNumber;
9586
+ surplusIn: import("zod").ZodNumber;
9587
+ surplusRSum: import("zod").ZodNumber;
9588
+ surplusStay: import("zod").ZodNumber;
9589
+ surplusOut: import("zod").ZodNumber;
9590
+ }, import("zod/v4/core").$strip>>;
9591
+ postponedAgain: import("zod").ZodObject<{
9592
+ count: import("zod").ZodNumber;
9593
+ rSum: import("zod").ZodNumber;
9594
+ }, import("zod/v4/core").$strip>;
9595
+ }, import("zod/v4/core").$strip>>;
9596
+ }, import("zod/v4/core").$strip>>;
9597
+ skipped: import("zod").ZodObject<{
9598
+ belowFloor: import("zod").ZodNumber;
9599
+ maxInterval: import("zod").ZodNumber;
9600
+ invalid: import("zod").ZodNumber;
9601
+ }, import("zod/v4/core").$strip>;
9602
+ }, import("zod/v4/core").$strip>;
9603
+ suggested: import("zod").ZodNullable<import("zod").ZodObject<{
9604
+ planId: import("zod").ZodString;
9605
+ limit: import("zod").ZodNumber;
9606
+ steps: import("zod").ZodArray<import("zod").ZodObject<{
9607
+ threshold: import("zod").ZodNumber;
9608
+ moved: import("zod").ZodNumber;
9609
+ overflowToday: import("zod").ZodNumber;
9610
+ meanRiBefore: import("zod").ZodNumber;
9611
+ meanRAfter: import("zod").ZodNumber;
9612
+ days: import("zod").ZodArray<import("zod").ZodObject<{
9613
+ day: import("zod").ZodNumber;
9614
+ postponed: import("zod").ZodNumber;
9615
+ rSum: import("zod").ZodNumber;
9616
+ }, import("zod/v4/core").$strip>>;
9617
+ flatten: import("zod").ZodNullable<import("zod").ZodObject<{
9618
+ checked: import("zod").ZodBoolean;
9619
+ fromToday: import("zod").ZodNumber;
9620
+ fromFuture: import("zod").ZodNumber;
9621
+ fromDays: import("zod").ZodNumber;
9622
+ kept: import("zod").ZodObject<{
9623
+ stuck: import("zod").ZodNumber;
9624
+ noRoom: import("zod").ZodNumber;
9625
+ }, import("zod/v4/core").$strip>;
9626
+ qSuggest: import("zod").ZodNumber;
9627
+ meanRAfter: import("zod").ZodNumber;
9628
+ days: import("zod").ZodArray<import("zod").ZodObject<{
9629
+ day: import("zod").ZodNumber;
9630
+ scheduled: import("zod").ZodNumber;
9631
+ backlog: import("zod").ZodNumber;
9632
+ backlogRSum: import("zod").ZodNumber;
9633
+ surplusIn: import("zod").ZodNumber;
9634
+ surplusRSum: import("zod").ZodNumber;
9635
+ surplusStay: import("zod").ZodNumber;
9636
+ surplusOut: import("zod").ZodNumber;
9637
+ }, import("zod/v4/core").$strip>>;
9638
+ postponedAgain: import("zod").ZodObject<{
9639
+ count: import("zod").ZodNumber;
9640
+ rSum: import("zod").ZodNumber;
9641
+ }, import("zod/v4/core").$strip>;
9642
+ }, import("zod/v4/core").$strip>>;
9643
+ }, import("zod/v4/core").$strip>>;
9644
+ skipped: import("zod").ZodObject<{
9645
+ belowFloor: import("zod").ZodNumber;
9646
+ maxInterval: import("zod").ZodNumber;
9647
+ invalid: import("zod").ZodNumber;
9648
+ }, import("zod/v4/core").$strip>;
9649
+ }, import("zod/v4/core").$strip>>;
9650
+ baseline: import("zod").ZodArray<import("zod").ZodObject<{
9651
+ day: import("zod").ZodNumber;
9652
+ scheduled: import("zod").ZodNumber;
9653
+ rSum: import("zod").ZodNullable<import("zod").ZodNumber>;
9654
+ }, import("zod/v4/core").$strip>>;
9655
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
9656
+ status: import("zod").ZodLiteral<"quotaZero">;
9657
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
9658
+ status: import("zod").ZodLiteral<"invalidWeights">;
9659
+ }, import("zod/v4/core").$strip>], "status">, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "NOTEBASE_NOT_FOUND" | "RESCHEDULE_DAILY_LIMIT_INVALID" | "RESCHEDULE_PREVIEW_TIMEOUT">>, Record<never, never>>;
9660
+ applyPostpone: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
9661
+ notebaseId: import("zod").ZodUUID;
9662
+ planId: import("zod").ZodString;
9663
+ unlimited: import("zod").ZodOptional<import("zod").ZodBoolean>;
9664
+ threshold: import("zod").ZodNumber;
9665
+ flatten: import("zod").ZodOptional<import("zod").ZodBoolean>;
9666
+ }, import("zod/v4/core").$strict>, import("zod").ZodObject<{
9667
+ moved: import("zod").ZodNumber;
9668
+ txid: import("zod").ZodNullable<import("zod").ZodNumber>;
9669
+ reviewsPerDay: import("zod").ZodNumber;
9670
+ }, import("zod/v4/core").$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "NOTEBASE_NOT_FOUND" | "RESCHEDULE_PLAN_EXPIRED" | "RESCHEDULE_STALE">>, Record<never, never>>;
7929
9671
  };
7930
9672
  stats: {
7931
9673
  activity: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
@@ -7973,6 +9715,17 @@ export declare const contract: {
7973
9715
  delta: import("zod").ZodNumber;
7974
9716
  }, import("zod/v4/core").$strict>>;
7975
9717
  }, import("zod/v4/core").$strict>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "NOTEBASE_NOT_FOUND">>, Record<never, never>>;
9718
+ backlogStats: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
9719
+ notebaseIds: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUUID>>;
9720
+ timezone: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
9721
+ }, import("zod/v4/core").$strict>, import("zod").ZodRecord<import("zod").ZodUUID, import("zod").ZodObject<{
9722
+ overdueReviewCount: import("zod").ZodNumber;
9723
+ dailyLimit: import("zod").ZodNumber;
9724
+ backlogDays: import("zod").ZodNumber;
9725
+ }, import("zod/v4/core").$strip>>, import("@orpc/contract").MergedErrorMap<Record<never, never>, Pick<import("@orpc/contract").ErrorMap, "NOTEBASE_NOT_FOUND">>, {
9726
+ summary: string;
9727
+ description: string;
9728
+ } & Record<never, never>>;
7976
9729
  };
7977
9730
  user: {
7978
9731
  ensureTimezone: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{