@01.software/sdk 0.18.0 → 0.19.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.
@@ -57,10 +57,10 @@ interface Config {
57
57
  'cart-items': CartItem;
58
58
  discounts: Discount;
59
59
  promotions: Promotion;
60
- posts: Post;
61
- 'post-authors': PostAuthor;
62
- 'post-categories': PostCategory;
63
- 'post-tags': PostTag;
60
+ articles: Article;
61
+ 'article-authors': ArticleAuthor;
62
+ 'article-categories': ArticleCategory;
63
+ 'article-tags': ArticleTag;
64
64
  documents: Document;
65
65
  'document-categories': DocumentCategory;
66
66
  'document-types': DocumentType;
@@ -89,12 +89,12 @@ interface Config {
89
89
  'video-categories': VideoCategory;
90
90
  'video-tags': VideoTag;
91
91
  'live-streams': LiveStream;
92
- threads: Thread;
92
+ posts: Post;
93
93
  comments: Comment;
94
94
  reactions: Reaction;
95
95
  'reaction-types': ReactionType;
96
96
  bookmarks: Bookmark;
97
- 'thread-categories': ThreadCategory;
97
+ 'post-categories': PostCategory;
98
98
  reports: Report;
99
99
  'community-bans': CommunityBan;
100
100
  'event-calendars': EventCalendar;
@@ -144,13 +144,13 @@ interface Config {
144
144
  carts: {
145
145
  items: 'cart-items';
146
146
  };
147
- 'post-authors': {
148
- posts: 'posts';
147
+ 'article-authors': {
148
+ articles: 'articles';
149
149
  };
150
150
  galleries: {
151
151
  items: 'gallery-items';
152
152
  };
153
- threads: {
153
+ posts: {
154
154
  comments: 'comments';
155
155
  };
156
156
  };
@@ -203,10 +203,10 @@ interface Config {
203
203
  'cart-items': CartItemsSelect<false> | CartItemsSelect<true>;
204
204
  discounts: DiscountsSelect<false> | DiscountsSelect<true>;
205
205
  promotions: PromotionsSelect<false> | PromotionsSelect<true>;
206
- posts: PostsSelect<false> | PostsSelect<true>;
207
- 'post-authors': PostAuthorsSelect<false> | PostAuthorsSelect<true>;
208
- 'post-categories': PostCategoriesSelect<false> | PostCategoriesSelect<true>;
209
- 'post-tags': PostTagsSelect<false> | PostTagsSelect<true>;
206
+ articles: ArticlesSelect<false> | ArticlesSelect<true>;
207
+ 'article-authors': ArticleAuthorsSelect<false> | ArticleAuthorsSelect<true>;
208
+ 'article-categories': ArticleCategoriesSelect<false> | ArticleCategoriesSelect<true>;
209
+ 'article-tags': ArticleTagsSelect<false> | ArticleTagsSelect<true>;
210
210
  documents: DocumentsSelect<false> | DocumentsSelect<true>;
211
211
  'document-categories': DocumentCategoriesSelect<false> | DocumentCategoriesSelect<true>;
212
212
  'document-types': DocumentTypesSelect<false> | DocumentTypesSelect<true>;
@@ -235,12 +235,12 @@ interface Config {
235
235
  'video-categories': VideoCategoriesSelect<false> | VideoCategoriesSelect<true>;
236
236
  'video-tags': VideoTagsSelect<false> | VideoTagsSelect<true>;
237
237
  'live-streams': LiveStreamsSelect<false> | LiveStreamsSelect<true>;
238
- threads: ThreadsSelect<false> | ThreadsSelect<true>;
238
+ posts: PostsSelect<false> | PostsSelect<true>;
239
239
  comments: CommentsSelect<false> | CommentsSelect<true>;
240
240
  reactions: ReactionsSelect<false> | ReactionsSelect<true>;
241
241
  'reaction-types': ReactionTypesSelect<false> | ReactionTypesSelect<true>;
242
242
  bookmarks: BookmarksSelect<false> | BookmarksSelect<true>;
243
- 'thread-categories': ThreadCategoriesSelect<false> | ThreadCategoriesSelect<true>;
243
+ 'post-categories': PostCategoriesSelect<false> | PostCategoriesSelect<true>;
244
244
  reports: ReportsSelect<false> | ReportsSelect<true>;
245
245
  'community-bans': CommunityBansSelect<false> | CommunityBansSelect<true>;
246
246
  'event-calendars': EventCalendarsSelect<false> | EventCalendarsSelect<true>;
@@ -358,6 +358,9 @@ interface User {
358
358
  emailPreferences?: {
359
359
  acceptsUsageAlerts?: boolean | null;
360
360
  };
361
+ /**
362
+ * Admin contact phone number. Enter with or without country code according to operating policy.
363
+ */
361
364
  phone?: string | null;
362
365
  isPhoneVerified?: boolean | null;
363
366
  lastLoginAt?: string | null;
@@ -365,7 +368,13 @@ interface User {
365
368
  isSuspended?: boolean | null;
366
369
  suspendedAt?: string | null;
367
370
  suspendedReason?: string | null;
371
+ /**
372
+ * Timezone used for admin UI and notifications, such as Asia/Seoul.
373
+ */
368
374
  timezone?: string | null;
375
+ /**
376
+ * Admin UI language or locale code, such as ko or en.
377
+ */
369
378
  locale?: string | null;
370
379
  avatar?: (string | null) | Image;
371
380
  anonymizedAt?: string | null;
@@ -414,18 +423,21 @@ interface Tenant {
414
423
  * Features available to this tenant. Determined automatically by the plan.
415
424
  */
416
425
  features?: {
417
- feature: 'ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'posts' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events';
426
+ feature: 'ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'articles' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events';
418
427
  provenance: string;
419
428
  id?: string | null;
420
429
  }[] | null;
421
430
  /**
422
431
  * Features this tenant has opted out of. Only effective for features granted by the plan.
423
432
  */
424
- disabledFeatures?: ('ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'posts' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events')[] | null;
433
+ disabledFeatures?: ('ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'articles' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events')[] | null;
425
434
  /**
426
435
  * Dev mode shows configuration tools like the field settings panel. Turn off after setup for a clean production UI.
427
436
  */
428
437
  isDevMode?: boolean | null;
438
+ /**
439
+ * Tenant lifecycle status. Managed by billing webhooks, deletion scheduling, or super-admin maintenance paths, not normal edits.
440
+ */
429
441
  status?: ('active' | 'paused' | 'past_due' | 'canceled' | 'pending_deletion') | null;
430
442
  /**
431
443
  * A public key that is safe to include in browser code. (Starts with pk01_)
@@ -439,7 +451,7 @@ interface Tenant {
439
451
  id?: string | null;
440
452
  }[] | null;
441
453
  /**
442
- * Webhook endpoints to notify on data changes.
454
+ * Trusted recipients for signed events. Sensitive payloads such as password-reset events may be delivered to these endpoints.
443
455
  */
444
456
  webhooks?: {
445
457
  /**
@@ -447,7 +459,7 @@ interface Tenant {
447
459
  */
448
460
  name?: string | null;
449
461
  /**
450
- * The URL to send webhooks to. Must be HTTPS.
462
+ * HTTPS URL that receives signed webhooks. Treat this endpoint as a recipient of sensitive tenant events.
451
463
  */
452
464
  url: string;
453
465
  /**
@@ -494,6 +506,9 @@ interface Tenant {
494
506
  interface Image {
495
507
  id: string;
496
508
  tenant?: (string | null) | Tenant;
509
+ /**
510
+ * Alternative text for users who cannot see the image and for search/share context.
511
+ */
497
512
  alt?: string | null;
498
513
  /**
499
514
  * Low quality image placeholder
@@ -570,7 +585,7 @@ interface Image {
570
585
  interface FieldConfig {
571
586
  id: string;
572
587
  tenant?: (string | null) | Tenant;
573
- collectionSlug: 'products' | 'product-variants' | 'product-options' | 'product-option-values' | 'product-collections' | 'product-categories' | 'product-tags' | 'brands' | 'discounts' | 'shipping-policies' | 'orders' | 'carts' | 'transactions' | 'fulfillments' | 'returns' | 'customers' | 'customer-groups' | 'customer-profiles' | 'post-authors' | 'posts' | 'post-categories' | 'post-tags' | 'documents' | 'document-categories' | 'document-types' | 'playlists' | 'playlist-categories' | 'playlist-tags' | 'tracks' | 'track-categories' | 'track-tags' | 'galleries' | 'gallery-categories' | 'gallery-tags' | 'gallery-items' | 'links' | 'link-categories' | 'link-tags' | 'canvases' | 'canvas-categories' | 'canvas-tags' | 'canvas-node-types' | 'canvas-edge-types' | 'videos' | 'video-categories' | 'video-tags' | 'live-streams' | 'forms' | 'threads' | 'comments' | 'reactions' | 'reaction-types' | 'bookmarks' | 'thread-categories' | 'event-calendars' | 'events' | 'event-tags' | 'event-occurrences' | 'event-registrations';
588
+ collectionSlug: 'products' | 'product-variants' | 'product-options' | 'product-option-values' | 'product-collections' | 'product-categories' | 'product-tags' | 'brands' | 'discounts' | 'shipping-policies' | 'orders' | 'carts' | 'transactions' | 'fulfillments' | 'returns' | 'customers' | 'customer-groups' | 'customer-profiles' | 'article-authors' | 'articles' | 'article-categories' | 'article-tags' | 'documents' | 'document-categories' | 'document-types' | 'playlists' | 'playlist-categories' | 'playlist-tags' | 'tracks' | 'track-categories' | 'track-tags' | 'galleries' | 'gallery-categories' | 'gallery-tags' | 'gallery-items' | 'links' | 'link-categories' | 'link-tags' | 'canvases' | 'canvas-categories' | 'canvas-tags' | 'canvas-node-types' | 'canvas-edge-types' | 'videos' | 'video-categories' | 'video-tags' | 'live-streams' | 'forms' | 'posts' | 'comments' | 'reactions' | 'reaction-types' | 'bookmarks' | 'post-categories' | 'event-calendars' | 'events' | 'event-tags' | 'event-occurrences' | 'event-registrations';
574
589
  isHidden?: boolean | null;
575
590
  hiddenFields?: {
576
591
  [k: string]: unknown;
@@ -585,7 +600,13 @@ interface FieldConfig {
585
600
  */
586
601
  interface SystemMedia {
587
602
  id: string;
603
+ /**
604
+ * Used for accessibility and image alternative text.
605
+ */
588
606
  alt?: string | null;
607
+ /**
608
+ * Caption displayed with the image.
609
+ */
589
610
  caption?: string | null;
590
611
  /**
591
612
  * Photographer or source attribution
@@ -638,8 +659,14 @@ interface EmailLog {
638
659
  */
639
660
  tenant?: (string | null) | Tenant;
640
661
  to: string;
662
+ /**
663
+ * Sender address passed to the email provider. Used for email audit traceability.
664
+ */
641
665
  from?: string | null;
642
666
  subject: string;
667
+ /**
668
+ * Email purpose and consent category. Used for verification, password reset, marketing, and audit review.
669
+ */
643
670
  type: 'usage-alert' | 'verification' | 'password-reset' | 'newsletter' | 'other' | 'oauth-login' | 'account-link';
644
671
  status: 'sent' | 'failed';
645
672
  sentAt: string;
@@ -671,16 +698,31 @@ interface ApiKey {
671
698
  * Key prefix (e.g. sk01_ab12cd3)
672
699
  */
673
700
  displayPrefix: string;
701
+ /**
702
+ * Trailing characters used to identify the key. The raw secret key is not stored or displayed.
703
+ */
674
704
  displaySuffix: string;
675
705
  /**
676
706
  * Capability scopes. Default is read+write; webhook dispatch requires webhook, analytics writes require analytics.
677
707
  */
678
708
  scopes?: ('read' | 'write' | 'webhook' | 'analytics' | 'super-admin')[] | null;
709
+ /**
710
+ * User who issued the key. Read-only provenance for issuance audit.
711
+ */
679
712
  createdBy?: (string | null) | User;
713
+ /**
714
+ * IP address of the key creation request. Privacy-bearing security audit metadata.
715
+ */
680
716
  createdByIp?: string | null;
681
717
  lastUsedAt?: string | null;
718
+ /**
719
+ * Last IP address that used the key. Privacy-bearing audit value for abuse investigation.
720
+ */
682
721
  lastUsedIp?: string | null;
683
722
  revokedAt?: string | null;
723
+ /**
724
+ * User who revoked the key. Read-only provenance for revocation audit.
725
+ */
684
726
  revokedBy?: (string | null) | User;
685
727
  /**
686
728
  * Optional expiration. Empty = never expires.
@@ -702,16 +744,31 @@ interface PersonalAccessToken {
702
744
  */
703
745
  name: string;
704
746
  secretHash: string;
747
+ /**
748
+ * PAT prefix. Display-only token type marker, not the raw token.
749
+ */
705
750
  displayPrefix: string;
751
+ /**
752
+ * Trailing characters used to identify the PAT. The raw token is not shown again.
753
+ */
706
754
  displaySuffix: string;
707
755
  /**
708
756
  * Default tenant ID for CLI operations. Set via `01 tenant use <name>`.
709
757
  */
710
758
  defaultTenant?: string | null;
759
+ /**
760
+ * IP address of the PAT creation request. Privacy-bearing security audit metadata.
761
+ */
711
762
  createdByIp?: string | null;
712
763
  lastUsedAt?: string | null;
764
+ /**
765
+ * Last IP address that used the PAT. Privacy-bearing audit value for abuse investigation.
766
+ */
713
767
  lastUsedIp?: string | null;
714
768
  revokedAt?: string | null;
769
+ /**
770
+ * User who revoked the PAT. Read-only provenance for revocation audit.
771
+ */
715
772
  revokedBy?: (string | null) | User;
716
773
  /**
717
774
  * PATs expire after 90 days by default.
@@ -733,11 +790,11 @@ interface AuditLog {
733
790
  */
734
791
  eventType: string;
735
792
  /**
736
- * Actor ID
793
+ * Actor ID. May refer to a user or service, and can be empty for system actions.
737
794
  */
738
795
  actorId?: string | null;
739
796
  /**
740
- * Event payload
797
+ * Detailed audit event payload. May contain sensitive security, billing, or provider context.
741
798
  */
742
799
  payload?: {
743
800
  [k: string]: unknown;
@@ -757,10 +814,13 @@ interface WebhookEvent {
757
814
  */
758
815
  provider: string;
759
816
  /**
760
- * Event ID
817
+ * Provider-supplied event ID. Used with provider as the idempotency key for duplicate prevention.
761
818
  */
762
819
  eventId: string;
763
820
  receivedAt?: string | null;
821
+ /**
822
+ * Raw provider event body. May contain sensitive security or payment context.
823
+ */
764
824
  payload?: {
765
825
  [k: string]: unknown;
766
826
  } | unknown[] | string | number | boolean | null;
@@ -776,7 +836,13 @@ interface WebhookDelivery {
776
836
  tenant?: (string | null) | Tenant;
777
837
  webhookEventId?: (string | null) | WebhookEvent;
778
838
  attempt: number;
839
+ /**
840
+ * Webhook delivery state. Updated by dispatcher and retry handling paths.
841
+ */
779
842
  status: 'pending' | 'success' | 'failed' | 'dead';
843
+ /**
844
+ * Timestamp when the webhook request was dispatched to the endpoint.
845
+ */
780
846
  dispatchedAt?: string | null;
781
847
  updatedAt: string;
782
848
  createdAt: string;
@@ -956,6 +1022,9 @@ interface TenantMetadatum {
956
1022
  interface BrandLogo {
957
1023
  id: string;
958
1024
  tenant?: (string | null) | Tenant;
1025
+ /**
1026
+ * Alternative text for users who cannot see the image and for search/share context.
1027
+ */
959
1028
  alt?: string | null;
960
1029
  /**
961
1030
  * Low quality image placeholder
@@ -1086,6 +1155,9 @@ interface ApiUsage {
1086
1155
  * AI generation count
1087
1156
  */
1088
1157
  aiGenerationCount?: number | null;
1158
+ /**
1159
+ * Timestamp when the usage snapshot cron calculated this monthly aggregate.
1160
+ */
1089
1161
  snapshottedAt?: string | null;
1090
1162
  updatedAt: string;
1091
1163
  createdAt: string;
@@ -1176,7 +1248,7 @@ interface AnalyticsEventSchema {
1176
1248
  id: string;
1177
1249
  tenant?: (string | null) | Tenant;
1178
1250
  /**
1179
- * snake_case identifier. Must match /^[a-z][a-z0-9_]*$/
1251
+ * Valid event name pattern.
1180
1252
  */
1181
1253
  eventName: string;
1182
1254
  enabled: boolean;
@@ -1204,13 +1276,19 @@ interface TenantEntitlement {
1204
1276
  id: string;
1205
1277
  tenant: string | Tenant;
1206
1278
  plan: 'free' | 'starter' | 'basic' | 'pro' | 'enterprise';
1279
+ /**
1280
+ * Lifecycle status for the entitlement. Only active rows participate in current plan resolution.
1281
+ */
1207
1282
  status: 'active' | 'scheduled' | 'expired' | 'revoked';
1208
1283
  sourceType: 'subscription' | 'manual' | 'support' | 'promo' | 'trial' | 'legacy_migration' | 'enterprise_contract';
1209
1284
  sourceSubscription?: (string | null) | Subscription;
1285
+ /**
1286
+ * Tie-breaker for overlapping entitlements. Higher values win within the same source precedence.
1287
+ */
1210
1288
  priority: number;
1211
1289
  startsAt: string;
1212
1290
  /**
1213
- * Entitlement end date. Required for promo / trial / legacy_migration sources, optional otherwise.
1291
+ * Entitlement end date. Required by hook validation for promo / trial / legacy_migration sources and excluded from current plan resolution after expiry.
1214
1292
  */
1215
1293
  endsAt?: string | null;
1216
1294
  reason?: string | null;
@@ -1263,7 +1341,7 @@ interface Subscription {
1263
1341
  cardType?: string | null;
1264
1342
  };
1265
1343
  /**
1266
- * Additional provider metadata
1344
+ * Provider-owned diagnostic and audit metadata returned by the billing provider. Not a general manual-edit field.
1267
1345
  */
1268
1346
  providerMetadata?: {
1269
1347
  [k: string]: unknown;
@@ -1345,11 +1423,11 @@ interface Plan {
1345
1423
  */
1346
1424
  name: string;
1347
1425
  /**
1348
- * Features allowed for this plan
1426
+ * Reference-only feature list; enforced elsewhere.
1349
1427
  */
1350
- featuresAllowed?: ('ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'posts' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events')[] | null;
1428
+ featuresAllowed?: ('ecommerce' | 'customers' | 'playlists' | 'galleries' | 'links' | 'forms' | 'articles' | 'documents' | 'canvas' | 'videos' | 'live-streaming' | 'community' | 'events')[] | null;
1351
1429
  /**
1352
- * Quota limits (storageBytes, apiPerMonth, ...)
1430
+ * Reference-only quotas such as storageBytes; enforced by entitlement and usage policy elsewhere.
1353
1431
  */
1354
1432
  quotas?: {
1355
1433
  [k: string]: unknown;
@@ -1397,6 +1475,9 @@ interface Webhook {
1397
1475
  interface TenantLogo {
1398
1476
  id: string;
1399
1477
  tenant?: (string | null) | Tenant;
1478
+ /**
1479
+ * Alternative text for users who cannot see the image and for search/share context.
1480
+ */
1400
1481
  alt?: string | null;
1401
1482
  /**
1402
1483
  * Low quality image placeholder
@@ -1699,6 +1780,9 @@ interface Video {
1699
1780
  metadata?: {
1700
1781
  [k: string]: unknown;
1701
1782
  } | unknown[] | string | number | boolean | null;
1783
+ /**
1784
+ * Read-only counter accumulated from video view events.
1785
+ */
1702
1786
  viewCount?: number | null;
1703
1787
  aspectRatio?: ('16_9' | '9_16' | '4_3' | '1_1') | null;
1704
1788
  /**
@@ -1786,7 +1870,13 @@ interface LiveStream {
1786
1870
  } | unknown[] | string | number | boolean | null;
1787
1871
  startedAt?: string | null;
1788
1872
  endedAt?: string | null;
1873
+ /**
1874
+ * Highest concurrent viewer count recorded during live sessions.
1875
+ */
1789
1876
  peakViewerCount?: number | null;
1877
+ /**
1878
+ * Read-only counter accumulated from live stream view events.
1879
+ */
1790
1880
  viewCount?: number | null;
1791
1881
  updatedAt: string;
1792
1882
  createdAt: string;
@@ -2334,9 +2424,12 @@ interface Customer {
2334
2424
  birthDate?: string | null;
2335
2425
  gender?: ('male' | 'female' | 'other' | 'prefer_not_to_say') | null;
2336
2426
  isGuest?: boolean | null;
2427
+ /**
2428
+ * Authentication provider used at signup. Immutable account provenance after creation.
2429
+ */
2337
2430
  authProvider?: ('local' | 'google' | 'apple' | 'kakao' | 'naver') | null;
2338
2431
  /**
2339
- * External provider user ID
2432
+ * External provider user ID. Paired with authProvider to identify the linked account and not edited after creation.
2340
2433
  */
2341
2434
  providerUserId?: string | null;
2342
2435
  lastLoginAt?: string | null;
@@ -2356,6 +2449,9 @@ interface Customer {
2356
2449
  };
2357
2450
  defaultShippingAddress?: (string | null) | CustomerAddress;
2358
2451
  defaultBillingAddress?: (string | null) | CustomerAddress;
2452
+ /**
2453
+ * Read-only counter maintained by order hooks for this customer's completed orders.
2454
+ */
2359
2455
  totalOrderCount?: number | null;
2360
2456
  lifetimeValue?: number | null;
2361
2457
  firstOrderAt?: string | null;
@@ -2365,9 +2461,21 @@ interface Customer {
2365
2461
  hasNextPage?: boolean;
2366
2462
  totalDocs?: number;
2367
2463
  };
2368
- threadCount?: number | null;
2464
+ /**
2465
+ * Read-only counter maintained by hooks for community posts authored by this customer.
2466
+ */
2467
+ postCount?: number | null;
2468
+ /**
2469
+ * Read-only counter maintained by hooks for community comments authored by this customer.
2470
+ */
2369
2471
  commentCount?: number | null;
2472
+ /**
2473
+ * Read-only counter maintained by hooks for community reactions made by this customer.
2474
+ */
2370
2475
  reactionCount?: number | null;
2476
+ /**
2477
+ * Marks a minor customer. When enabled, guardian consent fields are managed as compliance evidence.
2478
+ */
2371
2479
  isMinor?: boolean | null;
2372
2480
  marketingConsent?: {
2373
2481
  email?: {
@@ -2393,10 +2501,25 @@ interface Customer {
2393
2501
  */
2394
2502
  consentSource?: string | null;
2395
2503
  };
2504
+ /**
2505
+ * Guardian consent evidence for a minor customer. May contain guardian PII.
2506
+ */
2396
2507
  guardianConsent?: {
2508
+ /**
2509
+ * Whether guardian consent has been collected. Internal compliance marker for minor-customer handling.
2510
+ */
2397
2511
  hasGuardianConsent?: boolean | null;
2512
+ /**
2513
+ * Guardian name. Treat as guardian PII.
2514
+ */
2398
2515
  guardianName?: string | null;
2516
+ /**
2517
+ * Guardian phone number. Treat as guardian PII.
2518
+ */
2399
2519
  guardianPhone?: string | null;
2520
+ /**
2521
+ * Timestamp when guardian consent was recorded. Read-only audit evidence.
2522
+ */
2400
2523
  guardianConsentedAt?: string | null;
2401
2524
  };
2402
2525
  acceptsTos?: boolean | null;
@@ -2407,7 +2530,7 @@ interface Customer {
2407
2530
  withdrawReason?: string | null;
2408
2531
  withdrawnAt?: string | null;
2409
2532
  /**
2410
- * Legal retention deadline (hard-delete eligible after this date)
2533
+ * Legal retention deadline. Retention cleanup or manual hard-delete paths may purge after this date.
2411
2534
  */
2412
2535
  retainUntil?: string | null;
2413
2536
  anonymizedAt?: string | null;
@@ -2418,7 +2541,7 @@ interface Customer {
2418
2541
  loginAttemptCount?: number | null;
2419
2542
  lockedUntil?: string | null;
2420
2543
  /**
2421
- * Account suspension
2544
+ * Account suspension flag. Used with password/JWT revocation paths to block sessions.
2422
2545
  */
2423
2546
  isSuspended?: boolean | null;
2424
2547
  metadata?: {
@@ -2524,7 +2647,7 @@ interface CustomerProfile {
2524
2647
  tenant?: (string | null) | Tenant;
2525
2648
  customer: string | Customer;
2526
2649
  /**
2527
- * Public username shown like @01works.
2650
+ * Public username shown like @01works. Store 3-30 characters without @, using lowercase ASCII letters, numbers, hyphens, or underscores, and keep it unique within the tenant.
2528
2651
  */
2529
2652
  handle?: string | null;
2530
2653
  displayName?: string | null;
@@ -2560,11 +2683,14 @@ interface OrderItem {
2560
2683
  id: string;
2561
2684
  tenant?: (string | null) | Tenant;
2562
2685
  order: string | Order;
2686
+ /**
2687
+ * Quantity snapshot at order time. Used for payment and inventory calculations and not edited directly.
2688
+ */
2563
2689
  product: string | Product;
2564
2690
  variant?: (string | null) | ProductVariant;
2565
2691
  quantity: number;
2566
2692
  /**
2567
- * Price per unit at time of order
2693
+ * Unit-price snapshot at order time. Later product price changes do not rewrite it.
2568
2694
  */
2569
2695
  unitPrice: number;
2570
2696
  variantTitle?: string | null;
@@ -2573,7 +2699,7 @@ interface OrderItem {
2573
2699
  weight?: number | null;
2574
2700
  requiresShipping?: boolean | null;
2575
2701
  /**
2576
- * unitPrice × quantity
2702
+ * Total-price snapshot at order time, preserved from unitPrice × quantity.
2577
2703
  */
2578
2704
  totalPrice: number;
2579
2705
  productTitle?: string | null;
@@ -2601,6 +2727,9 @@ interface Transaction {
2601
2727
  status: 'pending' | 'paid' | 'failed' | 'canceled' | 'refunded';
2602
2728
  order: string | Order;
2603
2729
  amount?: number | null;
2730
+ /**
2731
+ * Payment method snapshot returned by the provider. Not edited directly.
2732
+ */
2604
2733
  paymentMethod?: string | null;
2605
2734
  /**
2606
2735
  * Installment months (0 = lump sum)
@@ -2658,6 +2787,9 @@ interface Fulfillment {
2658
2787
  * Carrier name (e.g. CJ Logistics, FedEx)
2659
2788
  */
2660
2789
  carrier?: string | null;
2790
+ /**
2791
+ * Carrier tracking number. Used as input for the derived trackingUrl.
2792
+ */
2661
2793
  trackingNumber?: string | null;
2662
2794
  /**
2663
2795
  * Tracking URL (auto-derived from carrier + trackingNumber)
@@ -2672,7 +2804,7 @@ interface Fulfillment {
2672
2804
  totalDocs?: number;
2673
2805
  };
2674
2806
  /**
2675
- * Internal admin notes
2807
+ * Internal fulfillment note. Not shown directly to customers.
2676
2808
  */
2677
2809
  adminNotes?: string | null;
2678
2810
  metadata?: {
@@ -2711,6 +2843,9 @@ interface Return {
2711
2843
  */
2712
2844
  exchangeOrder?: (string | null) | Order;
2713
2845
  status: 'requested' | 'processing' | 'approved' | 'rejected' | 'completed';
2846
+ /**
2847
+ * Reason category for the return or refund request. Used for reporting and operations.
2848
+ */
2714
2849
  reason?: ('change_of_mind' | 'defective' | 'wrong_delivery' | 'damaged' | 'other') | null;
2715
2850
  /**
2716
2851
  * Detailed return reason
@@ -2722,7 +2857,7 @@ interface Return {
2722
2857
  totalDocs?: number;
2723
2858
  };
2724
2859
  /**
2725
- * Internal notes
2860
+ * Internal return-processing note. Not shown directly to customers.
2726
2861
  */
2727
2862
  adminNotes?: string | null;
2728
2863
  completedAt?: string | null;
@@ -2921,6 +3056,9 @@ interface Discount {
2921
3056
  * Total usage limit (empty = unlimited)
2922
3057
  */
2923
3058
  maxUses?: number | null;
3059
+ /**
3060
+ * Read-only usage count accumulated when this discount is applied successfully.
3061
+ */
2924
3062
  usesCount?: number | null;
2925
3063
  /**
2926
3064
  * Usage limit per customer (empty = unlimited)
@@ -2972,13 +3110,16 @@ interface Promotion {
2972
3110
  }
2973
3111
  /**
2974
3112
  * This interface was referenced by `Config`'s JSON-Schema
2975
- * via the `definition` "posts".
3113
+ * via the `definition` "articles".
2976
3114
  */
2977
- interface Post {
3115
+ interface Article {
2978
3116
  id: string;
2979
3117
  _order?: string | null;
2980
3118
  tenant?: (string | null) | Tenant;
2981
3119
  title: string;
3120
+ /**
3121
+ * Secondary title shown in article lists and at the top of the article page.
3122
+ */
2982
3123
  subtitle?: string | null;
2983
3124
  /**
2984
3125
  * Short summary for listing/cards
@@ -2999,9 +3140,9 @@ interface Post {
2999
3140
  };
3000
3141
  [k: string]: unknown;
3001
3142
  } | null;
3002
- authors?: (string | PostAuthor)[] | null;
3003
- categories?: (string | PostCategory)[] | null;
3004
- tags?: (string | PostTag)[] | null;
3143
+ authors?: (string | ArticleAuthor)[] | null;
3144
+ categories?: (string | ArticleCategory)[] | null;
3145
+ tags?: (string | ArticleTag)[] | null;
3005
3146
  videos?: (string | Video)[] | null;
3006
3147
  seo?: {
3007
3148
  /**
@@ -3052,14 +3193,23 @@ interface Post {
3052
3193
  * OG/Twitter excerpt (280 chars)
3053
3194
  */
3054
3195
  excerpt?: string | null;
3196
+ /**
3197
+ * Canonical URL for search engines. Leave empty to use this article URL.
3198
+ */
3055
3199
  canonicalUrl?: string | null;
3056
3200
  visibility?: ('public' | 'members' | 'paid') | null;
3201
+ /**
3202
+ * Scheduled publish time. The scheduled publishing job uses this timestamp.
3203
+ */
3057
3204
  scheduledAt?: string | null;
3205
+ /**
3206
+ * Date when featured placement should end.
3207
+ */
3058
3208
  featuredUntil?: string | null;
3059
3209
  /**
3060
- * Related posts
3210
+ * Related articles
3061
3211
  */
3062
- relatedPosts?: (string | Post)[] | null;
3212
+ relatedArticles?: (string | Article)[] | null;
3063
3213
  metadata?: {
3064
3214
  [k: string]: unknown;
3065
3215
  } | unknown[] | string | number | boolean | null;
@@ -3070,9 +3220,9 @@ interface Post {
3070
3220
  }
3071
3221
  /**
3072
3222
  * This interface was referenced by `Config`'s JSON-Schema
3073
- * via the `definition` "post-authors".
3223
+ * via the `definition` "article-authors".
3074
3224
  */
3075
- interface PostAuthor {
3225
+ interface ArticleAuthor {
3076
3226
  id: string;
3077
3227
  _order?: string | null;
3078
3228
  tenant?: (string | null) | Tenant;
@@ -3085,8 +3235,8 @@ interface PostAuthor {
3085
3235
  avatar?: (string | null) | Image;
3086
3236
  bio?: string | null;
3087
3237
  email?: string | null;
3088
- posts?: {
3089
- docs?: (string | Post)[];
3238
+ articles?: {
3239
+ docs?: (string | Article)[];
3090
3240
  hasNextPage?: boolean;
3091
3241
  totalDocs?: number;
3092
3242
  };
@@ -3100,9 +3250,9 @@ interface PostAuthor {
3100
3250
  }
3101
3251
  /**
3102
3252
  * This interface was referenced by `Config`'s JSON-Schema
3103
- * via the `definition` "post-categories".
3253
+ * via the `definition` "article-categories".
3104
3254
  */
3105
- interface PostCategory {
3255
+ interface ArticleCategory {
3106
3256
  id: string;
3107
3257
  _order?: string | null;
3108
3258
  tenant?: (string | null) | Tenant;
@@ -3117,7 +3267,7 @@ interface PostCategory {
3117
3267
  */
3118
3268
  description?: string | null;
3119
3269
  image?: (string | null) | Image;
3120
- parent?: (string | null) | PostCategory;
3270
+ parent?: (string | null) | ArticleCategory;
3121
3271
  color?: string | null;
3122
3272
  updatedAt: string;
3123
3273
  createdAt: string;
@@ -3125,9 +3275,9 @@ interface PostCategory {
3125
3275
  }
3126
3276
  /**
3127
3277
  * This interface was referenced by `Config`'s JSON-Schema
3128
- * via the `definition` "post-tags".
3278
+ * via the `definition` "article-tags".
3129
3279
  */
3130
- interface PostTag {
3280
+ interface ArticleTag {
3131
3281
  id: string;
3132
3282
  _order?: string | null;
3133
3283
  tenant?: (string | null) | Tenant;
@@ -3142,7 +3292,7 @@ interface PostTag {
3142
3292
  */
3143
3293
  description?: string | null;
3144
3294
  image?: (string | null) | Image;
3145
- parent?: (string | null) | PostTag;
3295
+ parent?: (string | null) | ArticleTag;
3146
3296
  color?: string | null;
3147
3297
  updatedAt: string;
3148
3298
  createdAt: string;
@@ -3197,10 +3347,6 @@ interface Document {
3197
3347
  * Audience/timing for required agreement
3198
3348
  */
3199
3349
  agreementScope?: ('all_users' | 'new_users' | 'on_update') | null;
3200
- /**
3201
- * Legacy compatibility field; replaced by agreementScope
3202
- */
3203
- requiresAgreement?: boolean | null;
3204
3350
  /**
3205
3351
  * Keywords for search (e.g. GDPR, CCPA)
3206
3352
  */
@@ -3248,6 +3394,9 @@ interface Document {
3248
3394
  slug?: string | null;
3249
3395
  type?: (string | null) | DocumentType;
3250
3396
  jurisdiction?: string | null;
3397
+ /**
3398
+ * Document language code. Defaults to ko and is used for display and search categorization.
3399
+ */
3251
3400
  language?: string | null;
3252
3401
  /**
3253
3402
  * Document that supersedes this one
@@ -3759,10 +3908,25 @@ interface Link {
3759
3908
  thumbnail?: (string | null) | Image;
3760
3909
  icon?: (string | null) | Image;
3761
3910
  publishedAt?: string | null;
3911
+ /**
3912
+ * Platform name for social or external links, such as Instagram or YouTube.
3913
+ */
3762
3914
  platform?: string | null;
3915
+ /**
3916
+ * Whether clicks should open this link in a new tab.
3917
+ */
3763
3918
  opensInNewTab?: boolean | null;
3919
+ /**
3920
+ * Controls whether rel=nofollow should be emitted for search engines.
3921
+ */
3764
3922
  noFollow?: boolean | null;
3923
+ /**
3924
+ * Link exposure expiration time. Can be used to stop showing the link after this timestamp.
3925
+ */
3765
3926
  expiresAt?: string | null;
3927
+ /**
3928
+ * Read-only counter accumulated from link click events.
3929
+ */
3766
3930
  clickCount?: number | null;
3767
3931
  lastClickedAt?: string | null;
3768
3932
  status?: ('draft' | 'published' | 'archived') | null;
@@ -3995,11 +4159,11 @@ interface CanvasNodeType {
3995
4159
  id?: string | null;
3996
4160
  }[] | null;
3997
4161
  /**
3998
- * React component code. Props: { fields, label, color, nodeTypeSlug, width, height }
4162
+ * Runtime JSX template. Props: { fields, label, color, nodeTypeSlug, width, height }. Save-time validation rejects blocked patterns.
3999
4163
  */
4000
4164
  template?: string | null;
4001
4165
  /**
4002
- * CSS for node. Selector: .flow-node--{slug}
4166
+ * CSS for this node. Scope selectors to .flow-node--{slug}; url/import/script patterns are rejected on save.
4003
4167
  */
4004
4168
  customCSS?: string | null;
4005
4169
  updatedAt: string;
@@ -4113,9 +4277,9 @@ interface CanvasEdge {
4113
4277
  }
4114
4278
  /**
4115
4279
  * This interface was referenced by `Config`'s JSON-Schema
4116
- * via the `definition` "threads".
4280
+ * via the `definition` "posts".
4117
4281
  */
4118
- interface Thread {
4282
+ interface Post {
4119
4283
  id: string;
4120
4284
  _order?: string | null;
4121
4285
  tenant?: (string | null) | Tenant;
@@ -4135,7 +4299,7 @@ interface Thread {
4135
4299
  };
4136
4300
  [k: string]: unknown;
4137
4301
  } | null;
4138
- categories?: (string | ThreadCategory)[] | null;
4302
+ categories?: (string | PostCategory)[] | null;
4139
4303
  comments?: {
4140
4304
  docs?: (string | Comment)[];
4141
4305
  hasNextPage?: boolean;
@@ -4156,17 +4320,38 @@ interface Thread {
4156
4320
  avatarUrl?: string | null;
4157
4321
  };
4158
4322
  moderationStatus?: ('pending' | 'approved' | 'rejected' | 'reported' | 'hidden') | null;
4323
+ /**
4324
+ * Read-only counter accumulated from post view events.
4325
+ */
4159
4326
  viewCount?: number | null;
4327
+ /**
4328
+ * Read-only counter maintained by hooks for comments on this post.
4329
+ */
4160
4330
  commentCount?: number | null;
4331
+ /**
4332
+ * Read-only counter maintained by hooks for reactions on this post.
4333
+ */
4161
4334
  reactionCount?: number | null;
4335
+ /**
4336
+ * Accumulated report count for this post. Used only as a moderation signal.
4337
+ */
4162
4338
  reportCount?: number | null;
4339
+ /**
4340
+ * Marks whether this post should be pinned at the top of community lists.
4341
+ */
4163
4342
  isPinned?: boolean | null;
4343
+ /**
4344
+ * Controls whether new comments can be created for this post.
4345
+ */
4164
4346
  allowsComments?: boolean | null;
4165
4347
  visibility?: ('visible' | 'hidden') | null;
4166
4348
  /**
4167
4349
  * Lock comments
4168
4350
  */
4169
4351
  isLocked?: boolean | null;
4352
+ /**
4353
+ * Last comment or activity timestamp. Updated server-side for sorting and activity indicators.
4354
+ */
4170
4355
  lastActivityAt?: string | null;
4171
4356
  lastCommentByProfile?: (string | null) | CustomerProfile;
4172
4357
  isFeatured?: boolean | null;
@@ -4180,9 +4365,9 @@ interface Thread {
4180
4365
  }
4181
4366
  /**
4182
4367
  * This interface was referenced by `Config`'s JSON-Schema
4183
- * via the `definition` "thread-categories".
4368
+ * via the `definition` "post-categories".
4184
4369
  */
4185
- interface ThreadCategory {
4370
+ interface PostCategory {
4186
4371
  id: string;
4187
4372
  _order?: string | null;
4188
4373
  tenant?: (string | null) | Tenant;
@@ -4197,7 +4382,7 @@ interface ThreadCategory {
4197
4382
  */
4198
4383
  description?: string | null;
4199
4384
  image?: (string | null) | Image;
4200
- parent?: (string | null) | ThreadCategory;
4385
+ parent?: (string | null) | PostCategory;
4201
4386
  color?: string | null;
4202
4387
  updatedAt: string;
4203
4388
  createdAt: string;
@@ -4210,7 +4395,7 @@ interface ThreadCategory {
4210
4395
  interface Comment {
4211
4396
  id: string;
4212
4397
  tenant?: (string | null) | Tenant;
4213
- thread: string | Thread;
4398
+ post: string | Post;
4214
4399
  authorProfile: string | CustomerProfile;
4215
4400
  authorSnapshot: {
4216
4401
  displayName: string;
@@ -4220,15 +4405,30 @@ interface Comment {
4220
4405
  };
4221
4406
  body?: string | null;
4222
4407
  parent?: (string | null) | Comment;
4408
+ /**
4409
+ * Comment nesting depth. Calculated server-side from parent/rootComment and not edited directly.
4410
+ */
4223
4411
  depth?: number | null;
4412
+ /**
4413
+ * Root comment for the thread. Server-managed relationship for efficient reply-tree lookup.
4414
+ */
4224
4415
  rootComment?: (string | null) | Comment;
4225
4416
  status?: ('published' | 'hidden' | 'removed') | null;
4226
4417
  moderationStatus?: ('pending' | 'approved' | 'rejected' | 'reported') | null;
4227
4418
  visibility?: ('visible' | 'hidden' | 'removed') | null;
4228
4419
  editedAt?: string | null;
4229
4420
  isEdited?: boolean | null;
4421
+ /**
4422
+ * Read-only counter maintained by hooks for reactions on this comment.
4423
+ */
4230
4424
  reactionCount?: number | null;
4425
+ /**
4426
+ * Accumulated report count for this comment. Used only as a moderation signal.
4427
+ */
4231
4428
  reportCount?: number | null;
4429
+ /**
4430
+ * Read-only counter for replies to this comment, maintained by hooks.
4431
+ */
4232
4432
  replyCount?: number | null;
4233
4433
  metadata?: {
4234
4434
  [k: string]: unknown;
@@ -4243,7 +4443,7 @@ interface Comment {
4243
4443
  interface Reaction {
4244
4444
  id: string;
4245
4445
  tenant?: (string | null) | Tenant;
4246
- thread?: (string | null) | Thread;
4446
+ post?: (string | null) | Post;
4247
4447
  comment?: (string | null) | Comment;
4248
4448
  actorProfile: string | CustomerProfile;
4249
4449
  type: string | ReactionType;
@@ -4289,7 +4489,7 @@ interface ReactionType {
4289
4489
  interface Bookmark {
4290
4490
  id: string;
4291
4491
  tenant?: (string | null) | Tenant;
4292
- thread: string | Thread;
4492
+ post: string | Post;
4293
4493
  customer: string | Customer;
4294
4494
  metadata?: {
4295
4495
  [k: string]: unknown;
@@ -4304,7 +4504,7 @@ interface Bookmark {
4304
4504
  interface Report {
4305
4505
  id: string;
4306
4506
  tenant?: (string | null) | Tenant;
4307
- target?: (string | null) | Thread;
4507
+ target?: (string | null) | Post;
4308
4508
  targetComment?: (string | null) | Comment;
4309
4509
  customer: string | Customer;
4310
4510
  reason: 'spam' | 'harassment' | 'inappropriate' | 'off-topic' | 'other';
@@ -4599,6 +4799,9 @@ interface EventOccurrence {
4599
4799
  timezone: string;
4600
4800
  isAllDay?: boolean | null;
4601
4801
  status: 'scheduled' | 'canceled' | 'completed';
4802
+ /**
4803
+ * Location override for this occurrence only. Leave empty to use the event default location.
4804
+ */
4602
4805
  locationOverride?: {
4603
4806
  name?: string | null;
4604
4807
  address?: string | null;
@@ -4606,6 +4809,9 @@ interface EventOccurrence {
4606
4809
  note?: string | null;
4607
4810
  privateNote?: string | null;
4608
4811
  };
4812
+ /**
4813
+ * Capacity for this occurrence. Leave empty to inherit the event default registration settings.
4814
+ */
4609
4815
  capacity?: number | null;
4610
4816
  registrationCount?: number | null;
4611
4817
  waitlistCount?: number | null;
@@ -4636,18 +4842,33 @@ interface EventRegistration {
4636
4842
  customer?: (string | null) | Customer;
4637
4843
  registrationStatus: 'pending' | 'going' | 'waitlisted' | 'declined' | 'canceled';
4638
4844
  attendanceStatus: 'not_checked_in' | 'checked_in' | 'no_show';
4845
+ /**
4846
+ * Number of attendees for this registration. Used for ticketing and capacity calculations.
4847
+ */
4639
4848
  quantity: number;
4849
+ /**
4850
+ * PII snapshot captured at registration time. Hidden from publishable-key reads and subject to retention cleanup.
4851
+ */
4640
4852
  attendeeSnapshot?: {
4641
4853
  name?: string | null;
4642
4854
  email?: string | null;
4643
4855
  phone?: string | null;
4644
4856
  };
4857
+ /**
4858
+ * Internal attendee email. This is PII and is hidden from publishable-key reads.
4859
+ */
4645
4860
  attendeeEmail?: string | null;
4861
+ /**
4862
+ * Internal answers to registration questions. Hidden from publishable-key reads.
4863
+ */
4646
4864
  answers?: {
4647
4865
  question?: string | null;
4648
4866
  answer?: string | null;
4649
4867
  id?: string | null;
4650
4868
  }[] | null;
4869
+ /**
4870
+ * Manual approval data, including approval time, approver, and internal note.
4871
+ */
4651
4872
  approval?: {
4652
4873
  approvedAt?: string | null;
4653
4874
  approvedBy?: (string | null) | User;
@@ -4661,9 +4882,21 @@ interface EventRegistration {
4661
4882
  checkedInAt?: string | null;
4662
4883
  checkedInBy?: (string | null) | User;
4663
4884
  };
4885
+ /**
4886
+ * Hash of the guest access token. It is not the raw token and cannot be revealed or recovered by operators.
4887
+ */
4664
4888
  guestTokenHash?: string | null;
4889
+ /**
4890
+ * Guest token expiration timestamp. Used internally to decide token validity.
4891
+ */
4665
4892
  guestTokenExpiresAt?: string | null;
4893
+ /**
4894
+ * Retention deadline for attendee PII. Cleanup may redact PII after this timestamp.
4895
+ */
4666
4896
  piiRetentionUntil?: string | null;
4897
+ /**
4898
+ * Timestamp when PII was actually redacted. Written by the retention cleanup path.
4899
+ */
4667
4900
  piiRedactedAt?: string | null;
4668
4901
  metadata?: {
4669
4902
  [k: string]: unknown;
@@ -5023,17 +5256,17 @@ interface PayloadLockedDocument {
5023
5256
  relationTo: 'promotions';
5024
5257
  value: string | Promotion;
5025
5258
  } | null) | ({
5026
- relationTo: 'posts';
5027
- value: string | Post;
5259
+ relationTo: 'articles';
5260
+ value: string | Article;
5028
5261
  } | null) | ({
5029
- relationTo: 'post-authors';
5030
- value: string | PostAuthor;
5262
+ relationTo: 'article-authors';
5263
+ value: string | ArticleAuthor;
5031
5264
  } | null) | ({
5032
- relationTo: 'post-categories';
5033
- value: string | PostCategory;
5265
+ relationTo: 'article-categories';
5266
+ value: string | ArticleCategory;
5034
5267
  } | null) | ({
5035
- relationTo: 'post-tags';
5036
- value: string | PostTag;
5268
+ relationTo: 'article-tags';
5269
+ value: string | ArticleTag;
5037
5270
  } | null) | ({
5038
5271
  relationTo: 'documents';
5039
5272
  value: string | Document;
@@ -5119,8 +5352,8 @@ interface PayloadLockedDocument {
5119
5352
  relationTo: 'live-streams';
5120
5353
  value: string | LiveStream;
5121
5354
  } | null) | ({
5122
- relationTo: 'threads';
5123
- value: string | Thread;
5355
+ relationTo: 'posts';
5356
+ value: string | Post;
5124
5357
  } | null) | ({
5125
5358
  relationTo: 'comments';
5126
5359
  value: string | Comment;
@@ -5134,8 +5367,8 @@ interface PayloadLockedDocument {
5134
5367
  relationTo: 'bookmarks';
5135
5368
  value: string | Bookmark;
5136
5369
  } | null) | ({
5137
- relationTo: 'thread-categories';
5138
- value: string | ThreadCategory;
5370
+ relationTo: 'post-categories';
5371
+ value: string | PostCategory;
5139
5372
  } | null) | ({
5140
5373
  relationTo: 'reports';
5141
5374
  value: string | Report;
@@ -6480,7 +6713,7 @@ interface CustomersSelect<T extends boolean = true> {
6480
6713
  firstOrderAt?: T;
6481
6714
  lastOrderAt?: T;
6482
6715
  profile?: T;
6483
- threadCount?: T;
6716
+ postCount?: T;
6484
6717
  commentCount?: T;
6485
6718
  reactionCount?: T;
6486
6719
  isMinor?: T;
@@ -6703,9 +6936,9 @@ interface PromotionsSelect<T extends boolean = true> {
6703
6936
  }
6704
6937
  /**
6705
6938
  * This interface was referenced by `Config`'s JSON-Schema
6706
- * via the `definition` "posts_select".
6939
+ * via the `definition` "articles_select".
6707
6940
  */
6708
- interface PostsSelect<T extends boolean = true> {
6941
+ interface ArticlesSelect<T extends boolean = true> {
6709
6942
  _order?: T;
6710
6943
  tenant?: T;
6711
6944
  title?: T;
@@ -6739,7 +6972,7 @@ interface PostsSelect<T extends boolean = true> {
6739
6972
  visibility?: T;
6740
6973
  scheduledAt?: T;
6741
6974
  featuredUntil?: T;
6742
- relatedPosts?: T;
6975
+ relatedArticles?: T;
6743
6976
  metadata?: T;
6744
6977
  updatedAt?: T;
6745
6978
  createdAt?: T;
@@ -6748,9 +6981,9 @@ interface PostsSelect<T extends boolean = true> {
6748
6981
  }
6749
6982
  /**
6750
6983
  * This interface was referenced by `Config`'s JSON-Schema
6751
- * via the `definition` "post-authors_select".
6984
+ * via the `definition` "article-authors_select".
6752
6985
  */
6753
- interface PostAuthorsSelect<T extends boolean = true> {
6986
+ interface ArticleAuthorsSelect<T extends boolean = true> {
6754
6987
  _order?: T;
6755
6988
  tenant?: T;
6756
6989
  name?: T;
@@ -6759,7 +6992,7 @@ interface PostAuthorsSelect<T extends boolean = true> {
6759
6992
  avatar?: T;
6760
6993
  bio?: T;
6761
6994
  email?: T;
6762
- posts?: T;
6995
+ articles?: T;
6763
6996
  isActive?: T;
6764
6997
  metadata?: T;
6765
6998
  updatedAt?: T;
@@ -6768,9 +7001,9 @@ interface PostAuthorsSelect<T extends boolean = true> {
6768
7001
  }
6769
7002
  /**
6770
7003
  * This interface was referenced by `Config`'s JSON-Schema
6771
- * via the `definition` "post-categories_select".
7004
+ * via the `definition` "article-categories_select".
6772
7005
  */
6773
- interface PostCategoriesSelect<T extends boolean = true> {
7006
+ interface ArticleCategoriesSelect<T extends boolean = true> {
6774
7007
  _order?: T;
6775
7008
  tenant?: T;
6776
7009
  title?: T;
@@ -6786,9 +7019,9 @@ interface PostCategoriesSelect<T extends boolean = true> {
6786
7019
  }
6787
7020
  /**
6788
7021
  * This interface was referenced by `Config`'s JSON-Schema
6789
- * via the `definition` "post-tags_select".
7022
+ * via the `definition` "article-tags_select".
6790
7023
  */
6791
- interface PostTagsSelect<T extends boolean = true> {
7024
+ interface ArticleTagsSelect<T extends boolean = true> {
6792
7025
  _order?: T;
6793
7026
  tenant?: T;
6794
7027
  title?: T;
@@ -6818,7 +7051,6 @@ interface DocumentsSelect<T extends boolean = true> {
6818
7051
  expiresAt?: T;
6819
7052
  changeLog?: T;
6820
7053
  agreementScope?: T;
6821
- requiresAgreement?: T;
6822
7054
  keywords?: T | {
6823
7055
  keyword?: T;
6824
7056
  id?: T;
@@ -7509,9 +7741,9 @@ interface LiveStreamsSelect<T extends boolean = true> {
7509
7741
  }
7510
7742
  /**
7511
7743
  * This interface was referenced by `Config`'s JSON-Schema
7512
- * via the `definition` "threads_select".
7744
+ * via the `definition` "posts_select".
7513
7745
  */
7514
- interface ThreadsSelect<T extends boolean = true> {
7746
+ interface PostsSelect<T extends boolean = true> {
7515
7747
  _order?: T;
7516
7748
  tenant?: T;
7517
7749
  title?: T;
@@ -7553,7 +7785,7 @@ interface ThreadsSelect<T extends boolean = true> {
7553
7785
  */
7554
7786
  interface CommentsSelect<T extends boolean = true> {
7555
7787
  tenant?: T;
7556
- thread?: T;
7788
+ post?: T;
7557
7789
  authorProfile?: T;
7558
7790
  authorSnapshot?: T | {
7559
7791
  displayName?: T;
@@ -7583,7 +7815,7 @@ interface CommentsSelect<T extends boolean = true> {
7583
7815
  */
7584
7816
  interface ReactionsSelect<T extends boolean = true> {
7585
7817
  tenant?: T;
7586
- thread?: T;
7818
+ post?: T;
7587
7819
  comment?: T;
7588
7820
  actorProfile?: T;
7589
7821
  type?: T;
@@ -7614,7 +7846,7 @@ interface ReactionTypesSelect<T extends boolean = true> {
7614
7846
  */
7615
7847
  interface BookmarksSelect<T extends boolean = true> {
7616
7848
  tenant?: T;
7617
- thread?: T;
7849
+ post?: T;
7618
7850
  customer?: T;
7619
7851
  metadata?: T;
7620
7852
  updatedAt?: T;
@@ -7622,9 +7854,9 @@ interface BookmarksSelect<T extends boolean = true> {
7622
7854
  }
7623
7855
  /**
7624
7856
  * This interface was referenced by `Config`'s JSON-Schema
7625
- * via the `definition` "thread-categories_select".
7857
+ * via the `definition` "post-categories_select".
7626
7858
  */
7627
- interface ThreadCategoriesSelect<T extends boolean = true> {
7859
+ interface PostCategoriesSelect<T extends boolean = true> {
7628
7860
  _order?: T;
7629
7861
  tenant?: T;
7630
7862
  title?: T;
@@ -8075,4 +8307,4 @@ declare module 'payload' {
8075
8307
  }
8076
8308
  }
8077
8309
 
8078
- export type { Config as C, Document as D, Form as F, Image as I, Order as O, Product as P, Return as R, Transaction as T, Video as V, Cart as a, CartItem as b, OrderItem as c, Fulfillment as d, Post as e, PostCategory as f, PostTag as g, ProductVariant as h, Tenant as i, CustomerProfile as j, Thread as k, Comment as l, Reaction as m };
8310
+ export type { Article as A, Config as C, Document as D, Form as F, Image as I, Order as O, Product as P, Return as R, Transaction as T, Video as V, Cart as a, CartItem as b, OrderItem as c, Fulfillment as d, ArticleAuthor as e, ArticleCategory as f, ArticleTag as g, Post as h, PostCategory as i, ProductVariant as j, Tenant as k, CustomerProfile as l, Comment as m, Reaction as n };