samva 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/AGENTS.md +7 -0
  2. package/README.md +12 -7
  3. package/dist/client/sdk.gen.d.ts +322 -143
  4. package/dist/client/sdk.gen.js +604 -95
  5. package/dist/client/types.gen.d.ts +1342 -479
  6. package/dist/effect/agents.d.ts +6 -8
  7. package/dist/effect/analytics.d.ts +1 -1
  8. package/dist/effect/api-keys.d.ts +6 -6
  9. package/dist/effect/attachments.d.ts +1 -1
  10. package/dist/effect/brands.d.ts +2 -0
  11. package/dist/effect/campaigns.d.ts +275 -25
  12. package/dist/effect/campaigns.js +7 -1
  13. package/dist/effect/contact-groups.d.ts +9 -9
  14. package/dist/effect/contacts.d.ts +74 -81
  15. package/dist/effect/contacts.js +7 -3
  16. package/dist/effect/conversations.d.ts +14 -6
  17. package/dist/effect/email.d.ts +34 -34
  18. package/dist/effect/errors.d.ts +1 -1
  19. package/dist/effect/errors.js +2 -2
  20. package/dist/effect/extension-installations.d.ts +3 -3
  21. package/dist/effect/extensions.d.ts +6 -6
  22. package/dist/effect/generated/agents.d.ts +6 -28
  23. package/dist/effect/generated/agents.js +2 -3
  24. package/dist/effect/generated/analytics.d.ts +3 -3
  25. package/dist/effect/generated/analytics.js +1 -1
  26. package/dist/effect/generated/api-keys.d.ts +6 -6
  27. package/dist/effect/generated/api-keys.js +2 -2
  28. package/dist/effect/generated/attachments.d.ts +3 -3
  29. package/dist/effect/generated/attachments.js +1 -1
  30. package/dist/effect/generated/brands.d.ts +16 -0
  31. package/dist/effect/generated/campaigns.d.ts +1181 -302
  32. package/dist/effect/generated/campaigns.js +169 -36
  33. package/dist/effect/generated/contact-events.d.ts +3 -3
  34. package/dist/effect/generated/contact-events.js +1 -1
  35. package/dist/effect/generated/contact-groups.d.ts +9 -9
  36. package/dist/effect/generated/contact-groups.js +7 -7
  37. package/dist/effect/generated/contacts.d.ts +2063 -290
  38. package/dist/effect/generated/contacts.js +343 -75
  39. package/dist/effect/generated/conversations.d.ts +14 -6
  40. package/dist/effect/generated/conversations.js +6 -6
  41. package/dist/effect/generated/email.d.ts +40 -40
  42. package/dist/effect/generated/email.js +15 -15
  43. package/dist/effect/generated/extension-installations.d.ts +3 -3
  44. package/dist/effect/generated/extension-installations.js +1 -1
  45. package/dist/effect/generated/extensions.d.ts +6 -6
  46. package/dist/effect/generated/extensions.js +2 -2
  47. package/dist/effect/generated/index.d.ts +5 -3
  48. package/dist/effect/generated/journeys.d.ts +9 -9
  49. package/dist/effect/generated/journeys.js +3 -3
  50. package/dist/effect/generated/mailboxes.d.ts +172 -124
  51. package/dist/effect/generated/mailboxes.js +22 -14
  52. package/dist/effect/generated/messages.d.ts +53 -29
  53. package/dist/effect/generated/messages.js +9 -5
  54. package/dist/effect/generated/namespaces.d.ts +3 -3
  55. package/dist/effect/generated/namespaces.js +1 -1
  56. package/dist/effect/generated/operations.d.ts +3 -3
  57. package/dist/effect/generated/operations.js +1 -1
  58. package/dist/effect/generated/organizations.d.ts +0 -9
  59. package/dist/effect/generated/organizations.js +1 -4
  60. package/dist/effect/generated/scheduled-messages.d.ts +69 -20
  61. package/dist/effect/generated/scheduled-messages.js +22 -3
  62. package/dist/effect/generated/shared.d.ts +396 -107
  63. package/dist/effect/generated/shared.js +170 -89
  64. package/dist/effect/generated/subscriptions.d.ts +4 -7
  65. package/dist/effect/generated/subscriptions.js +3 -4
  66. package/dist/effect/generated/templates.d.ts +71 -407
  67. package/dist/effect/generated/templates.js +23 -23
  68. package/dist/effect/generated/topic-forms.d.ts +656 -0
  69. package/dist/effect/generated/topic-forms.js +145 -0
  70. package/dist/effect/generated/{unsubscribe-groups.d.ts → topics.d.ts} +640 -435
  71. package/dist/effect/generated/topics.js +267 -0
  72. package/dist/effect/generated/webhooks.d.ts +6 -6
  73. package/dist/effect/generated/webhooks.js +2 -2
  74. package/dist/effect/generated-metadata.d.ts +78 -24
  75. package/dist/effect/generated-metadata.js +61 -27
  76. package/dist/effect/index.d.ts +2 -1
  77. package/dist/effect/index.js +4 -3
  78. package/dist/effect/internal/operation.js +3 -3
  79. package/dist/effect/internal/send.d.ts +4 -4
  80. package/dist/effect/journeys.d.ts +7 -7
  81. package/dist/effect/mailboxes.d.ts +137 -121
  82. package/dist/effect/messages.d.ts +19 -11
  83. package/dist/effect/namespaces.d.ts +3 -3
  84. package/dist/effect/operations.d.ts +3 -3
  85. package/dist/effect/scheduled-messages.d.ts +6 -6
  86. package/dist/effect/subscriptions.d.ts +1 -2
  87. package/dist/effect/templates.d.ts +13 -13
  88. package/dist/effect/topic-forms.d.ts +30 -0
  89. package/dist/effect/topic-forms.js +21 -0
  90. package/dist/effect/topics.d.ts +94 -0
  91. package/dist/effect/topics.js +29 -0
  92. package/dist/effect/webhooks.d.ts +6 -6
  93. package/dist/index.js +2 -2
  94. package/dist/package.js +1 -1
  95. package/dist/promises/errors.gen.d.ts +65 -8
  96. package/dist/promises/errors.gen.js +139 -7
  97. package/dist/promises/index.d.ts +5 -3
  98. package/dist/promises/index.js +7 -5
  99. package/dist/promises/types.gen.d.ts +1 -1
  100. package/dist/service-map.d.ts +74 -25
  101. package/dist/service-map.js +43 -12
  102. package/package.json +12 -8
  103. package/dist/effect/generated/unsubscribe-groups.js +0 -284
  104. package/dist/effect/unsubscribe-groups.d.ts +0 -74
  105. package/dist/effect/unsubscribe-groups.js +0 -29
@@ -52,8 +52,6 @@ export type AgentMode = "live" | "supervised";
52
52
  export declare const AgentMode: Schema.Union<readonly [Schema.Literal<"live">, Schema.Literal<"supervised">]>;
53
53
  export type AgentModel = "standard" | "max";
54
54
  export declare const AgentModel: Schema.Union<readonly [Schema.Literal<"standard">, Schema.Literal<"max">]>;
55
- export type AgentApprovalPolicy = "toolActions" | "none";
56
- export declare const AgentApprovalPolicy: Schema.Union<readonly [Schema.Literal<"toolActions">, Schema.Literal<"none">]>;
57
55
  export type TimeZone = string;
58
56
  export declare const TimeZone: Schema.String;
59
57
  export type Weekday = "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday";
@@ -188,6 +186,8 @@ export declare const BrandSocialLink: Schema.Struct<{
188
186
  readonly label: Schema.String;
189
187
  readonly url: Schema.String;
190
188
  }>;
189
+ export type CampaignId = string & EffectBrand.Brand<"CampaignId">;
190
+ export declare const CampaignId: Schema.brand<Schema.String, "CampaignId">;
191
191
  export type MediaId = string & EffectBrand.Brand<"MediaId">;
192
192
  export declare const MediaId: Schema.brand<Schema.String, "MediaId">;
193
193
  export type TemplatePublicationId = string & EffectBrand.Brand<"TemplatePublicationId">;
@@ -206,8 +206,8 @@ export type RenderTimeZone = string;
206
206
  export declare const RenderTimeZone: Schema.String;
207
207
  export type ReplyToAddresses = ReadonlyArray<string> | null | null;
208
208
  export declare const ReplyToAddresses: Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>;
209
- export type UnsubscribeId = string & EffectBrand.Brand<"UnsubscribeId">;
210
- export declare const UnsubscribeId: Schema.brand<Schema.String, "UnsubscribeId">;
209
+ export type TopicId = string & EffectBrand.Brand<"TopicId">;
210
+ export declare const TopicId: Schema.brand<Schema.String, "TopicId">;
211
211
  export type EmailTrackingOverrideV1 = {
212
212
  readonly opens?: boolean;
213
213
  readonly clicks?: boolean;
@@ -226,12 +226,26 @@ export type EmailCustomHeaders = {
226
226
  readonly [x: string]: string;
227
227
  };
228
228
  export declare const EmailCustomHeaders: Schema.$Record<Schema.String, Schema.String>;
229
+ export type CampaignFrom = {
230
+ readonly email: string;
231
+ readonly name?: string | null;
232
+ } | null;
233
+ export declare const CampaignFrom: Schema.Union<readonly [Schema.Struct<{
234
+ readonly email: Schema.String;
235
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
236
+ }>, Schema.Null]>;
229
237
  export type ConversationId = string & EffectBrand.Brand<"ConversationId">;
230
238
  export declare const ConversationId: Schema.brand<Schema.String, "ConversationId">;
239
+ export type CampaignContentMetadata = {
240
+ readonly [x: string]: JsonValue;
241
+ } | null;
242
+ export declare const CampaignContentMetadata: Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>;
231
243
  export type ContactId = string & EffectBrand.Brand<"ContactId">;
232
244
  export declare const ContactId: Schema.brand<Schema.String, "ContactId">;
233
245
  export type ContactGroupId = string & EffectBrand.Brand<"ContactGroupId">;
234
246
  export declare const ContactGroupId: Schema.brand<Schema.String, "ContactGroupId">;
247
+ export type CampaignRunId = string & EffectBrand.Brand<"CampaignRunId">;
248
+ export declare const CampaignRunId: Schema.brand<Schema.String, "CampaignRunId">;
235
249
  export type SendsSeries = ReadonlyArray<number>;
236
250
  export declare const SendsSeries: Schema.$Array<Schema.Finite>;
237
251
  declare const FlagDisabledError_base: Schema.Class<FlagDisabledError, Schema.Struct<{
@@ -277,6 +291,24 @@ declare const SenderNotReadyError_base: Schema.Class<SenderNotReadyError, Schema
277
291
  }>, import("effect/Cause").YieldableError>;
278
292
  export declare class SenderNotReadyError extends SenderNotReadyError_base {
279
293
  }
294
+ declare const OnboardingReviewRequiredError_base: Schema.Class<OnboardingReviewRequiredError, Schema.Struct<{
295
+ readonly _tag: Schema.tag<"OnboardingReviewRequiredError">;
296
+ readonly message: Schema.String;
297
+ readonly code: Schema.Union<readonly [Schema.Literal<"review_required">, Schema.Literal<"review_in_progress">, Schema.Literal<"information_required">, Schema.Literal<"review_rejected">, Schema.Literal<"identity_review_required">, Schema.Literal<"identity_review_rejected">, Schema.Literal<"identity_changed">]>;
298
+ readonly decision: Schema.Union<readonly [Schema.Literal<"undecided">, Schema.Literal<"approved">, Schema.Literal<"rejected">]>;
299
+ readonly stage: Schema.Union<readonly [Schema.Literal<"collecting">, Schema.Literal<"automated_review">, Schema.Literal<"manual_review">, Schema.Literal<"information_requested">, Schema.Literal<"complete">]>;
300
+ readonly nextAction: Schema.Union<readonly [Schema.Literal<"wait_for_review">, Schema.Literal<"provide_information">, Schema.Literal<"verify_sending_identity">, Schema.Literal<"reapply">, Schema.Literal<"contact_support">]>;
301
+ readonly identityId: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
302
+ }>, import("effect/Cause").YieldableError>;
303
+ export declare class OnboardingReviewRequiredError extends OnboardingReviewRequiredError_base {
304
+ }
305
+ declare const DeliveryUnavailableError_base: Schema.Class<DeliveryUnavailableError, Schema.Struct<{
306
+ readonly _tag: Schema.tag<"DeliveryUnavailableError">;
307
+ readonly message: Schema.String;
308
+ readonly retryAfterSeconds: Schema.Finite;
309
+ }>, import("effect/Cause").YieldableError>;
310
+ export declare class DeliveryUnavailableError extends DeliveryUnavailableError_base {
311
+ }
280
312
  export type ContactIdentityId = string & EffectBrand.Brand<"ContactIdentityId">;
281
313
  export declare const ContactIdentityId: Schema.brand<Schema.String, "ContactIdentityId">;
282
314
  export type WebhookEndpointId = string & EffectBrand.Brand<"WebhookEndpointId">;
@@ -472,17 +504,6 @@ export declare const MailboxSendError: Schema.Union<readonly [Schema.TaggedStruc
472
504
  readonly id: Schema.String;
473
505
  readonly message: Schema.String;
474
506
  }>]>;
475
- declare const OnboardingReviewRequiredError_base: Schema.Class<OnboardingReviewRequiredError, Schema.Struct<{
476
- readonly _tag: Schema.tag<"OnboardingReviewRequiredError">;
477
- readonly message: Schema.String;
478
- readonly code: Schema.Union<readonly [Schema.Literal<"review_required">, Schema.Literal<"review_in_progress">, Schema.Literal<"information_required">, Schema.Literal<"review_rejected">, Schema.Literal<"identity_review_required">, Schema.Literal<"identity_review_rejected">, Schema.Literal<"identity_changed">]>;
479
- readonly decision: Schema.Union<readonly [Schema.Literal<"undecided">, Schema.Literal<"approved">, Schema.Literal<"rejected">]>;
480
- readonly stage: Schema.Union<readonly [Schema.Literal<"collecting">, Schema.Literal<"automated_review">, Schema.Literal<"manual_review">, Schema.Literal<"information_requested">, Schema.Literal<"complete">]>;
481
- readonly nextAction: Schema.Union<readonly [Schema.Literal<"wait_for_review">, Schema.Literal<"provide_information">, Schema.Literal<"verify_sending_identity">, Schema.Literal<"reapply">, Schema.Literal<"contact_support">]>;
482
- readonly identityId: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
483
- }>, import("effect/Cause").YieldableError>;
484
- export declare class OnboardingReviewRequiredError extends OnboardingReviewRequiredError_base {
485
- }
486
507
  export type MailboxThreadFolder = "inbox" | "assigned" | "pending" | "sent" | "archived" | "trash";
487
508
  export declare const MailboxThreadFolder: Schema.Union<readonly [Schema.Literal<"inbox">, Schema.Literal<"assigned">, Schema.Literal<"pending">, Schema.Literal<"sent">, Schema.Literal<"archived">, Schema.Literal<"trash">]>;
488
509
  export type MailboxGrantRole = "admin" | "collaborator" | "viewer";
@@ -505,13 +526,6 @@ export declare const EmailSender: Schema.Union<readonly [Schema.Struct<{
505
526
  readonly email: Schema.String;
506
527
  readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
507
528
  }>, Schema.Null]>;
508
- declare const DeliveryUnavailableError_base: Schema.Class<DeliveryUnavailableError, Schema.Struct<{
509
- readonly _tag: Schema.tag<"DeliveryUnavailableError">;
510
- readonly message: Schema.String;
511
- readonly retryAfterSeconds: Schema.Finite;
512
- }>, import("effect/Cause").YieldableError>;
513
- export declare class DeliveryUnavailableError extends DeliveryUnavailableError_base {
514
- }
515
529
  export type IanaTimezone = string;
516
530
  export declare const IanaTimezone: Schema.String;
517
531
  export type NamespaceMetadata = {
@@ -544,6 +558,48 @@ export declare const TemplateTrackingDefault: Schema.Struct<{
544
558
  readonly opens: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
545
559
  readonly clicks: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
546
560
  }>;
561
+ declare const TemplateSourceError_base: Schema.Class<TemplateSourceError, Schema.Struct<{
562
+ readonly _tag: Schema.tag<"TemplateSourceError">;
563
+ readonly message: Schema.String;
564
+ readonly diagnostics: Schema.$Array<Schema.Struct<{
565
+ readonly code: Schema.String;
566
+ readonly severity: Schema.Union<readonly [Schema.Literal<"error">, Schema.Literal<"warning">, Schema.Literal<"info">]>;
567
+ readonly message: Schema.String;
568
+ readonly origins: Schema.$Array<Schema.Struct<{
569
+ readonly fileName: Schema.String;
570
+ readonly lineNumber: Schema.Finite;
571
+ readonly columnNumber: Schema.Finite;
572
+ }>>;
573
+ readonly clients: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
574
+ readonly notes: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
575
+ readonly provenance: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
576
+ readonly fixtures: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
577
+ readonly occurrences: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.$Array<Schema.Struct<{
578
+ readonly fileName: Schema.String;
579
+ readonly lineNumber: Schema.Finite;
580
+ readonly columnNumber: Schema.Finite;
581
+ }>>>, Schema.Null]>>;
582
+ readonly compatibility: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
583
+ readonly assessment: Schema.Union<readonly [Schema.Literal<"risk">, Schema.Literal<"degradation">, Schema.Literal<"unverified">, Schema.Literal<"not-applicable">]>;
584
+ readonly title: Schema.String;
585
+ }>, Schema.Null]>>;
586
+ }>>;
587
+ readonly revision: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
588
+ }>, import("effect/Cause").YieldableError>;
589
+ export declare class TemplateSourceError extends TemplateSourceError_base {
590
+ }
591
+ export type TopicContactByEmail = {
592
+ readonly email: string;
593
+ };
594
+ export declare const TopicContactByEmail: Schema.Struct<{
595
+ readonly email: Schema.String;
596
+ }>;
597
+ export type TopicContactByPhone = {
598
+ readonly phone: string;
599
+ };
600
+ export declare const TopicContactByPhone: Schema.Struct<{
601
+ readonly phone: Schema.String;
602
+ }>;
547
603
  export type AddTemplateEntryPayload = {
548
604
  readonly entryPath: string;
549
605
  readonly name: string;
@@ -696,6 +752,38 @@ export type TestWebhookPayload = {
696
752
  export declare const TestWebhookPayload: Schema.Struct<{
697
753
  readonly data: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
698
754
  }>;
755
+ export type TopicFormCreatePayload = {
756
+ readonly allowedOrigins: ReadonlyArray<string>;
757
+ readonly confirmationTitle: string;
758
+ readonly confirmationMessage: string;
759
+ readonly successTitle: string;
760
+ readonly successMessage: string;
761
+ readonly redirectUrl: string | null;
762
+ };
763
+ export declare const TopicFormCreatePayload: Schema.Struct<{
764
+ readonly allowedOrigins: Schema.$Array<Schema.String>;
765
+ readonly confirmationTitle: Schema.String;
766
+ readonly confirmationMessage: Schema.String;
767
+ readonly successTitle: Schema.String;
768
+ readonly successMessage: Schema.String;
769
+ readonly redirectUrl: Schema.Union<readonly [Schema.String, Schema.Null]>;
770
+ }>;
771
+ export type TopicFormUpdatePayload = {
772
+ readonly allowedOrigins?: ReadonlyArray<string> | null;
773
+ readonly confirmationTitle?: string | null;
774
+ readonly confirmationMessage?: string | null;
775
+ readonly successTitle?: string | null;
776
+ readonly successMessage?: string | null;
777
+ readonly redirectUrl?: string | null | null;
778
+ };
779
+ export declare const TopicFormUpdatePayload: Schema.Struct<{
780
+ readonly allowedOrigins: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
781
+ readonly confirmationTitle: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
782
+ readonly confirmationMessage: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
783
+ readonly successTitle: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
784
+ readonly successMessage: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
785
+ readonly redirectUrl: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
786
+ }>;
699
787
  export type UpdateDomainWarmingPolicyPayload = {
700
788
  readonly dailyGrowthPercent: number;
701
789
  readonly targetDailyRecipients: number;
@@ -796,6 +884,8 @@ export declare const WorkingHoursRange: Schema.Struct<{
796
884
  readonly opens: Schema.String;
797
885
  readonly closes: Schema.String;
798
886
  }>;
887
+ export type CampaignReplyMailbox = MailboxId | null | null;
888
+ export declare const CampaignReplyMailbox: Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "MailboxId">, Schema.Null]>, Schema.Null]>;
799
889
  export type CreateWebhookPayload = {
800
890
  readonly name: string;
801
891
  readonly url: string;
@@ -871,35 +961,15 @@ export declare const ApiKeyMailboxAccess: Schema.Struct<{
871
961
  readonly mailboxIds: Schema.optionalKey<Schema.Union<readonly [Schema.TupleWithRest<Schema.Tuple<readonly [Schema.brand<Schema.String, "MailboxId">]>, readonly [Schema.brand<Schema.String, "MailboxId">]>, Schema.Null]>>;
872
962
  readonly sendMode: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"send">, Schema.Literal<"approval">]>, Schema.Null]>>;
873
963
  }>;
874
- export type MessageSummary = {
875
- readonly id: MessageId;
876
- readonly channel: "email";
877
- readonly direction: "outbound" | "inbound";
878
- readonly status: "pending" | "scheduled" | "queued" | "processing" | "sent" | "delivered" | "read" | "failed" | "bounced" | "complained";
879
- readonly from: string | null;
880
- readonly to: ReadonlyArray<string>;
881
- readonly subject: string | null;
882
- readonly waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | "content-review" | "screening-unavailable" | null;
883
- readonly createdAt: string;
884
- };
885
- export declare const MessageSummary: Schema.Struct<{
886
- readonly id: Schema.brand<Schema.String, "MessageId">;
887
- readonly channel: Schema.Literal<"email">;
888
- readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
889
- readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
890
- readonly from: Schema.Union<readonly [Schema.String, Schema.Null]>;
891
- readonly to: Schema.$Array<Schema.String>;
892
- readonly subject: Schema.Union<readonly [Schema.String, Schema.Null]>;
893
- readonly waitReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"rate">, Schema.Literal<"daily-quota">, Schema.Literal<"domain-health">, Schema.Literal<"sending-paused">, Schema.Literal<"upstream-unavailable">, Schema.Literal<"retry">, Schema.Literal<"campaign-paused">, Schema.Literal<"domain-warming">, Schema.Literal<"onboarding-review">, Schema.Literal<"content-review">, Schema.Literal<"screening-unavailable">]>, Schema.Null]>;
894
- readonly createdAt: Schema.String;
895
- }>;
896
964
  export type BrandFooter = {
897
965
  readonly companyName?: string | null;
966
+ readonly websiteUrl?: string | null;
898
967
  readonly address?: BrandAddress | null;
899
968
  readonly socialLinks?: ReadonlyArray<BrandSocialLink> | null;
900
969
  };
901
970
  export declare const BrandFooter: Schema.Struct<{
902
971
  readonly companyName: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
972
+ readonly websiteUrl: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
903
973
  readonly address: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
904
974
  readonly street1: Schema.String;
905
975
  readonly street2: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -983,14 +1053,38 @@ export declare const RenderTemplatePublicationPayload: Schema.Struct<{
983
1053
  }>;
984
1054
  export type SkippedRecipient = {
985
1055
  readonly address: string;
986
- readonly reason: "bounce" | "complaint" | "unsubscribe" | "manual" | "group-unsubscribe";
987
- readonly unsubscribeGroupId?: UnsubscribeId | null;
1056
+ readonly reason: "bounce" | "complaint" | "unsubscribe" | "manual" | "topic-unsubscribe";
1057
+ readonly topicId?: TopicId | null;
988
1058
  };
989
1059
  export declare const SkippedRecipient: Schema.Struct<{
990
1060
  readonly address: Schema.String;
991
- readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"group-unsubscribe">]>;
992
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1061
+ readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"topic-unsubscribe">]>;
1062
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>>;
1063
+ }>;
1064
+ export type SubscribePayload = {
1065
+ readonly email: string;
1066
+ readonly topicId: TopicId;
1067
+ readonly from: {
1068
+ readonly email: string;
1069
+ readonly name?: string | null;
1070
+ };
1071
+ readonly templateSlug?: string | null;
1072
+ readonly consentIp?: string | null;
1073
+ readonly consentSource?: string | null;
1074
+ };
1075
+ export declare const SubscribePayload: Schema.Struct<{
1076
+ readonly email: Schema.String;
1077
+ readonly topicId: Schema.brand<Schema.String, "TopicId">;
1078
+ readonly from: Schema.Struct<{
1079
+ readonly email: Schema.String;
1080
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1081
+ }>;
1082
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1083
+ readonly consentIp: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1084
+ readonly consentSource: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
993
1085
  }>;
1086
+ export type CampaignConversationRef = ConversationId | null | null;
1087
+ export declare const CampaignConversationRef: Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>;
994
1088
  export type ContactEvent = {
995
1089
  readonly id: string;
996
1090
  readonly contactId: ContactId;
@@ -1049,12 +1143,32 @@ export declare const EmailRecipient: Schema.Union<readonly [Schema.Struct<{
1049
1143
  readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1050
1144
  readonly displayName: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
1051
1145
  }>]>;
1146
+ export type TopicContactById = {
1147
+ readonly contactId: ContactId;
1148
+ };
1149
+ export declare const TopicContactById: Schema.Struct<{
1150
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
1151
+ }>;
1052
1152
  export type ConversationContacts = {
1053
1153
  readonly contactIds: readonly [ContactId, ...Array<ContactId>];
1054
1154
  };
1055
1155
  export declare const ConversationContacts: Schema.Struct<{
1056
1156
  readonly contactIds: Schema.TupleWithRest<Schema.Tuple<readonly [Schema.brand<Schema.String, "ContactId">]>, readonly [Schema.brand<Schema.String, "ContactId">]>;
1057
1157
  }>;
1158
+ export type CampaignAudience = {
1159
+ readonly topicId: TopicId;
1160
+ readonly includeTags?: ReadonlyArray<string> | null;
1161
+ readonly excludeTags?: ReadonlyArray<string> | null;
1162
+ readonly contactIds?: ReadonlyArray<ContactId> | null;
1163
+ readonly groupIds?: ReadonlyArray<ContactGroupId> | null;
1164
+ };
1165
+ export declare const CampaignAudience: Schema.Struct<{
1166
+ readonly topicId: Schema.brand<Schema.String, "TopicId">;
1167
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1168
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1169
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1170
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1171
+ }>;
1058
1172
  export type JourneyGroupJoinedTrigger = {
1059
1173
  readonly type: "contact.joined_group";
1060
1174
  readonly groupId: ContactGroupId;
@@ -1063,29 +1177,35 @@ export declare const JourneyGroupJoinedTrigger: Schema.Struct<{
1063
1177
  readonly type: Schema.Literal<"contact.joined_group">;
1064
1178
  readonly groupId: Schema.brand<Schema.String, "ContactGroupId">;
1065
1179
  }>;
1066
- export type SubscribePayload = {
1067
- readonly email: string;
1068
- readonly contactGroupId: ContactGroupId;
1069
- readonly from: {
1070
- readonly email: string;
1071
- readonly name?: string | null;
1072
- };
1073
- readonly unsubscribeGroupId?: UnsubscribeId | null;
1074
- readonly templateSlug?: string | null;
1075
- readonly consentIp?: string | null;
1076
- readonly consentSource?: string | null;
1180
+ export type MessageSummary = {
1181
+ readonly id: MessageId;
1182
+ readonly campaign?: {
1183
+ readonly campaignId: CampaignId;
1184
+ readonly runId: CampaignRunId;
1185
+ } | null;
1186
+ readonly channel: "email";
1187
+ readonly direction: "outbound" | "inbound";
1188
+ readonly status: "pending" | "scheduled" | "queued" | "processing" | "sent" | "delivered" | "read" | "failed" | "bounced" | "complained";
1189
+ readonly from: string | null;
1190
+ readonly to: ReadonlyArray<string>;
1191
+ readonly subject: string | null;
1192
+ readonly waitReason: "rate" | "daily-quota" | "domain-health" | "sending-paused" | "upstream-unavailable" | "retry" | "campaign-paused" | "domain-warming" | "onboarding-review" | "content-review" | "screening-unavailable" | null;
1193
+ readonly createdAt: string;
1077
1194
  };
1078
- export declare const SubscribePayload: Schema.Struct<{
1079
- readonly email: Schema.String;
1080
- readonly contactGroupId: Schema.brand<Schema.String, "ContactGroupId">;
1081
- readonly from: Schema.Struct<{
1082
- readonly email: Schema.String;
1083
- readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1084
- }>;
1085
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1086
- readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1087
- readonly consentIp: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1088
- readonly consentSource: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1195
+ export declare const MessageSummary: Schema.Struct<{
1196
+ readonly id: Schema.brand<Schema.String, "MessageId">;
1197
+ readonly campaign: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1198
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1199
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1200
+ }>, Schema.Null]>>;
1201
+ readonly channel: Schema.Literal<"email">;
1202
+ readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
1203
+ readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
1204
+ readonly from: Schema.Union<readonly [Schema.String, Schema.Null]>;
1205
+ readonly to: Schema.$Array<Schema.String>;
1206
+ readonly subject: Schema.Union<readonly [Schema.String, Schema.Null]>;
1207
+ readonly waitReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"rate">, Schema.Literal<"daily-quota">, Schema.Literal<"domain-health">, Schema.Literal<"sending-paused">, Schema.Literal<"upstream-unavailable">, Schema.Literal<"retry">, Schema.Literal<"campaign-paused">, Schema.Literal<"domain-warming">, Schema.Literal<"onboarding-review">, Schema.Literal<"content-review">, Schema.Literal<"screening-unavailable">]>, Schema.Null]>;
1208
+ readonly createdAt: Schema.String;
1089
1209
  }>;
1090
1210
  export type JourneySendEmailConfig = {
1091
1211
  readonly template: TemplateId | string;
@@ -1097,6 +1217,40 @@ export declare const JourneySendEmailConfig: Schema.Struct<{
1097
1217
  readonly senderId: Schema.optionalKey<Schema.brand<Schema.String, "EmailSenderId">>;
1098
1218
  readonly templateData: Schema.optionalKey<Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>>;
1099
1219
  }>;
1220
+ export type TopicCreatePayload = {
1221
+ readonly name: string;
1222
+ readonly description?: string | null | null;
1223
+ readonly namespaceId?: NamespaceId | null | null;
1224
+ readonly default?: "opt_out" | "opt_in" | null;
1225
+ readonly defaultSenderId?: EmailSenderId | null | null;
1226
+ readonly replyMailboxId?: MailboxId | null | null;
1227
+ readonly templateId?: TemplateId | null | null;
1228
+ };
1229
+ export declare const TopicCreatePayload: Schema.Struct<{
1230
+ readonly name: Schema.String;
1231
+ readonly description: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
1232
+ readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>, Schema.Null]>>;
1233
+ readonly default: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"opt_out">, Schema.Literal<"opt_in">]>, Schema.Null]>>;
1234
+ readonly defaultSenderId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "EmailSenderId">, Schema.Null]>, Schema.Null]>>;
1235
+ readonly replyMailboxId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "MailboxId">, Schema.Null]>, Schema.Null]>>;
1236
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>, Schema.Null]>>;
1237
+ }>;
1238
+ export type TopicUpdatePayload = {
1239
+ readonly name?: string | null;
1240
+ readonly description?: string | null | null;
1241
+ readonly default?: "opt_out" | "opt_in" | null;
1242
+ readonly defaultSenderId?: EmailSenderId | null | null;
1243
+ readonly replyMailboxId?: MailboxId | null | null;
1244
+ readonly templateId?: TemplateId | null | null;
1245
+ };
1246
+ export declare const TopicUpdatePayload: Schema.Struct<{
1247
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1248
+ readonly description: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
1249
+ readonly default: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"opt_out">, Schema.Literal<"opt_in">]>, Schema.Null]>>;
1250
+ readonly defaultSenderId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "EmailSenderId">, Schema.Null]>, Schema.Null]>>;
1251
+ readonly replyMailboxId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "MailboxId">, Schema.Null]>, Schema.Null]>>;
1252
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>, Schema.Null]>>;
1253
+ }>;
1100
1254
  export type ExtensionVersionRef = {
1101
1255
  readonly id: ExtensionVersionId;
1102
1256
  readonly version: string;
@@ -1463,24 +1617,6 @@ export declare const ApiKeyAccess: Schema.Union<readonly [Schema.Struct<{
1463
1617
  }>, Schema.Null]>>;
1464
1618
  readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>>;
1465
1619
  }>]>;
1466
- export type MessagePage = {
1467
- readonly items: ReadonlyArray<MessageSummary>;
1468
- readonly nextCursor: string | null;
1469
- };
1470
- export declare const MessagePage: Schema.Struct<{
1471
- readonly items: Schema.$Array<Schema.Struct<{
1472
- readonly id: Schema.brand<Schema.String, "MessageId">;
1473
- readonly channel: Schema.Literal<"email">;
1474
- readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
1475
- readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
1476
- readonly from: Schema.Union<readonly [Schema.String, Schema.Null]>;
1477
- readonly to: Schema.$Array<Schema.String>;
1478
- readonly subject: Schema.Union<readonly [Schema.String, Schema.Null]>;
1479
- readonly waitReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"rate">, Schema.Literal<"daily-quota">, Schema.Literal<"domain-health">, Schema.Literal<"sending-paused">, Schema.Literal<"upstream-unavailable">, Schema.Literal<"retry">, Schema.Literal<"campaign-paused">, Schema.Literal<"domain-warming">, Schema.Literal<"onboarding-review">, Schema.Literal<"content-review">, Schema.Literal<"screening-unavailable">]>, Schema.Null]>;
1480
- readonly createdAt: Schema.String;
1481
- }>>;
1482
- readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
1483
- }>;
1484
1620
  export type CreateBrand = {
1485
1621
  readonly slug: string;
1486
1622
  readonly name: string;
@@ -1500,6 +1636,7 @@ export declare const CreateBrand: Schema.Struct<{
1500
1636
  }>, Schema.Null]>>;
1501
1637
  readonly footer: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1502
1638
  readonly companyName: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1639
+ readonly websiteUrl: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1503
1640
  readonly address: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1504
1641
  readonly street1: Schema.String;
1505
1642
  readonly street2: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -1533,6 +1670,7 @@ export declare const UpdateBrand: Schema.Struct<{
1533
1670
  }>, Schema.Null]>>;
1534
1671
  readonly footer: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1535
1672
  readonly companyName: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1673
+ readonly websiteUrl: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1536
1674
  readonly address: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1537
1675
  readonly street1: Schema.String;
1538
1676
  readonly street2: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -1750,6 +1888,36 @@ export declare const EmailBccRecipients: Schema.Union<readonly [Schema.Union<rea
1750
1888
  readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1751
1889
  readonly displayName: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
1752
1890
  }>]>>, Schema.Null]>, Schema.Null]>;
1891
+ export type TopicContactRef = TopicContactById | TopicContactByEmail | TopicContactByPhone;
1892
+ export declare const TopicContactRef: Schema.Union<readonly [Schema.Struct<{
1893
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
1894
+ }>, Schema.Struct<{
1895
+ readonly email: Schema.String;
1896
+ }>, Schema.Struct<{
1897
+ readonly phone: Schema.String;
1898
+ }>]>;
1899
+ export type MessagePage = {
1900
+ readonly items: ReadonlyArray<MessageSummary>;
1901
+ readonly nextCursor: string | null;
1902
+ };
1903
+ export declare const MessagePage: Schema.Struct<{
1904
+ readonly items: Schema.$Array<Schema.Struct<{
1905
+ readonly id: Schema.brand<Schema.String, "MessageId">;
1906
+ readonly campaign: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1907
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1908
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1909
+ }>, Schema.Null]>>;
1910
+ readonly channel: Schema.Literal<"email">;
1911
+ readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
1912
+ readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
1913
+ readonly from: Schema.Union<readonly [Schema.String, Schema.Null]>;
1914
+ readonly to: Schema.$Array<Schema.String>;
1915
+ readonly subject: Schema.Union<readonly [Schema.String, Schema.Null]>;
1916
+ readonly waitReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"rate">, Schema.Literal<"daily-quota">, Schema.Literal<"domain-health">, Schema.Literal<"sending-paused">, Schema.Literal<"upstream-unavailable">, Schema.Literal<"retry">, Schema.Literal<"campaign-paused">, Schema.Literal<"domain-warming">, Schema.Literal<"onboarding-review">, Schema.Literal<"content-review">, Schema.Literal<"screening-unavailable">]>, Schema.Null]>;
1917
+ readonly createdAt: Schema.String;
1918
+ }>>;
1919
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
1920
+ }>;
1753
1921
  export type JourneyTrigger = JourneyCustomEventTrigger | JourneyContactCreatedTrigger | JourneyTagAddedTrigger | JourneyGroupJoinedTrigger;
1754
1922
  export declare const JourneyTrigger: Schema.Union<readonly [Schema.Struct<{
1755
1923
  readonly type: Schema.Literal<"event">;
@@ -1935,8 +2103,8 @@ export declare const MailboxSendReceipt: Schema.Struct<{
1935
2103
  readonly reviewExpectedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1936
2104
  readonly skippedRecipients: Schema.$Array<Schema.Struct<{
1937
2105
  readonly address: Schema.String;
1938
- readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"group-unsubscribe">]>;
1939
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2106
+ readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"topic-unsubscribe">]>;
2107
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>>;
1940
2108
  }>>;
1941
2109
  readonly executeUntil: Schema.Union<readonly [Schema.String, Schema.Null]>;
1942
2110
  readonly retryAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
@@ -2033,7 +2201,6 @@ export type AgentDefinition = {
2033
2201
  readonly integrationIds: ReadonlyArray<AgentIntegrationReference>;
2034
2202
  readonly mode: AgentMode;
2035
2203
  readonly model: AgentModel;
2036
- readonly approvalPolicy: AgentApprovalPolicy;
2037
2204
  readonly workingHours: WorkingHours | null;
2038
2205
  readonly takeoverTimeoutMinutes: number;
2039
2206
  };
@@ -2044,7 +2211,6 @@ export declare const AgentDefinition: Schema.Struct<{
2044
2211
  readonly integrationIds: Schema.$Array<Schema.String>;
2045
2212
  readonly mode: Schema.Union<readonly [Schema.Literal<"live">, Schema.Literal<"supervised">]>;
2046
2213
  readonly model: Schema.Union<readonly [Schema.Literal<"standard">, Schema.Literal<"max">]>;
2047
- readonly approvalPolicy: Schema.Union<readonly [Schema.Literal<"toolActions">, Schema.Literal<"none">]>;
2048
2214
  readonly workingHours: Schema.Union<readonly [Schema.Struct<{
2049
2215
  readonly timeZone: Schema.String;
2050
2216
  readonly ranges: Schema.$Array<Schema.Struct<{
@@ -2055,7 +2221,7 @@ export declare const AgentDefinition: Schema.Struct<{
2055
2221
  }>, Schema.Null]>;
2056
2222
  readonly takeoverTimeoutMinutes: Schema.Finite;
2057
2223
  }>;
2058
- export type EmailContent = {
2224
+ export type CampaignEmailInput = {
2059
2225
  readonly subject?: string | null;
2060
2226
  readonly html?: string | null;
2061
2227
  readonly text?: string | null;
@@ -2069,12 +2235,13 @@ export type EmailContent = {
2069
2235
  readonly timeZone?: RenderTimeZone;
2070
2236
  readonly inReplyToMessageId?: MessageId | null;
2071
2237
  readonly replyTo?: ReplyToAddresses;
2072
- readonly unsubscribeGroupId?: UnsubscribeId | null | null;
2238
+ readonly topicId?: TopicId | null | null;
2073
2239
  readonly tracking?: EmailTrackingOverrideV1;
2074
2240
  readonly footer?: EmailFooterOverride;
2075
2241
  readonly headers?: EmailCustomHeaders | null;
2242
+ readonly preheader?: string | null;
2076
2243
  };
2077
- export declare const EmailContent: Schema.Struct<{
2244
+ export declare const CampaignEmailInput: Schema.Struct<{
2078
2245
  readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2079
2246
  readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2080
2247
  readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -2094,7 +2261,7 @@ export declare const EmailContent: Schema.Struct<{
2094
2261
  readonly timeZone: Schema.optionalKey<Schema.String>;
2095
2262
  readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2096
2263
  readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2097
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2264
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
2098
2265
  readonly tracking: Schema.optionalKey<Schema.Struct<{
2099
2266
  readonly opens: Schema.optionalKey<Schema.Boolean>;
2100
2267
  readonly clicks: Schema.optionalKey<Schema.Boolean>;
@@ -2103,8 +2270,9 @@ export declare const EmailContent: Schema.Struct<{
2103
2270
  readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2104
2271
  }>>;
2105
2272
  readonly headers: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.String>, Schema.Null]>>;
2273
+ readonly preheader: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2106
2274
  }>;
2107
- export type EmailDispatchContent = {
2275
+ export type EmailContent = {
2108
2276
  readonly subject?: string | null;
2109
2277
  readonly html?: string | null;
2110
2278
  readonly text?: string | null;
@@ -2118,12 +2286,12 @@ export type EmailDispatchContent = {
2118
2286
  readonly timeZone?: RenderTimeZone;
2119
2287
  readonly inReplyToMessageId?: MessageId | null;
2120
2288
  readonly replyTo?: ReplyToAddresses;
2121
- readonly unsubscribeGroupId?: UnsubscribeId | null | null;
2289
+ readonly topicId?: TopicId | null | null;
2122
2290
  readonly tracking?: EmailTrackingOverrideV1;
2123
2291
  readonly footer?: EmailFooterOverride;
2124
2292
  readonly headers?: EmailCustomHeaders | null;
2125
2293
  };
2126
- export declare const EmailDispatchContent: Schema.Struct<{
2294
+ export declare const EmailContent: Schema.Struct<{
2127
2295
  readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2128
2296
  readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2129
2297
  readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -2143,7 +2311,7 @@ export declare const EmailDispatchContent: Schema.Struct<{
2143
2311
  readonly timeZone: Schema.optionalKey<Schema.String>;
2144
2312
  readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2145
2313
  readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2146
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2314
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
2147
2315
  readonly tracking: Schema.optionalKey<Schema.Struct<{
2148
2316
  readonly opens: Schema.optionalKey<Schema.Boolean>;
2149
2317
  readonly clicks: Schema.optionalKey<Schema.Boolean>;
@@ -2218,6 +2386,24 @@ export declare const BatchEventsPayload: Schema.Struct<{
2218
2386
  readonly idempotencyKey: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2219
2387
  }>]>;
2220
2388
  }>;
2389
+ export type TopicSetSubscriptionsPayload = {
2390
+ readonly contacts: ReadonlyArray<TopicContactRef>;
2391
+ readonly channel: "email";
2392
+ readonly status: "subscribed" | "unsubscribed";
2393
+ readonly source?: string | null;
2394
+ };
2395
+ export declare const TopicSetSubscriptionsPayload: Schema.Struct<{
2396
+ readonly contacts: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
2397
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
2398
+ }>, Schema.Struct<{
2399
+ readonly email: Schema.String;
2400
+ }>, Schema.Struct<{
2401
+ readonly phone: Schema.String;
2402
+ }>]>>;
2403
+ readonly channel: Schema.Literal<"email">;
2404
+ readonly status: Schema.Union<readonly [Schema.Literal<"subscribed">, Schema.Literal<"unsubscribed">]>;
2405
+ readonly source: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2406
+ }>;
2221
2407
  export type JourneyWaitForEventNode = {
2222
2408
  readonly type: "wait_for_event";
2223
2409
  readonly config: JourneyWaitForEventConfig;
@@ -2291,8 +2477,8 @@ declare const MailboxSendRefusedError_base: Schema.Class<MailboxSendRefusedError
2291
2477
  readonly reviewExpectedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2292
2478
  readonly skippedRecipients: Schema.$Array<Schema.Struct<{
2293
2479
  readonly address: Schema.String;
2294
- readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"group-unsubscribe">]>;
2295
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2480
+ readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"topic-unsubscribe">]>;
2481
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>>;
2296
2482
  }>>;
2297
2483
  readonly executeUntil: Schema.Union<readonly [Schema.String, Schema.Null]>;
2298
2484
  readonly retryAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
@@ -2359,8 +2545,8 @@ declare const MailboxSendConflictError_base: Schema.Class<MailboxSendConflictErr
2359
2545
  readonly reviewExpectedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2360
2546
  readonly skippedRecipients: Schema.$Array<Schema.Struct<{
2361
2547
  readonly address: Schema.String;
2362
- readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"group-unsubscribe">]>;
2363
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2548
+ readonly reason: Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">, Schema.Literal<"topic-unsubscribe">]>;
2549
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>>;
2364
2550
  }>>;
2365
2551
  readonly executeUntil: Schema.Union<readonly [Schema.String, Schema.Null]>;
2366
2552
  readonly retryAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
@@ -2426,7 +2612,6 @@ export declare const CreateAgentPayload: Schema.Struct<{
2426
2612
  readonly integrationIds: Schema.$Array<Schema.String>;
2427
2613
  readonly mode: Schema.Union<readonly [Schema.Literal<"live">, Schema.Literal<"supervised">]>;
2428
2614
  readonly model: Schema.Union<readonly [Schema.Literal<"standard">, Schema.Literal<"max">]>;
2429
- readonly approvalPolicy: Schema.Union<readonly [Schema.Literal<"toolActions">, Schema.Literal<"none">]>;
2430
2615
  readonly workingHours: Schema.Union<readonly [Schema.Struct<{
2431
2616
  readonly timeZone: Schema.String;
2432
2617
  readonly ranges: Schema.$Array<Schema.Struct<{
@@ -2451,7 +2636,6 @@ export declare const ReplaceAgentDraftPayload: Schema.Struct<{
2451
2636
  readonly integrationIds: Schema.$Array<Schema.String>;
2452
2637
  readonly mode: Schema.Union<readonly [Schema.Literal<"live">, Schema.Literal<"supervised">]>;
2453
2638
  readonly model: Schema.Union<readonly [Schema.Literal<"standard">, Schema.Literal<"max">]>;
2454
- readonly approvalPolicy: Schema.Union<readonly [Schema.Literal<"toolActions">, Schema.Literal<"none">]>;
2455
2639
  readonly workingHours: Schema.Union<readonly [Schema.Struct<{
2456
2640
  readonly timeZone: Schema.String;
2457
2641
  readonly ranges: Schema.$Array<Schema.Struct<{
@@ -2463,6 +2647,55 @@ export declare const ReplaceAgentDraftPayload: Schema.Struct<{
2463
2647
  readonly takeoverTimeoutMinutes: Schema.Finite;
2464
2648
  }>;
2465
2649
  }>;
2650
+ export type CampaignContentInput = {
2651
+ readonly channel: "email";
2652
+ readonly email: CampaignEmailInput;
2653
+ readonly from?: CampaignFrom;
2654
+ readonly replyMailboxId?: CampaignReplyMailbox;
2655
+ readonly conversationId?: CampaignConversationRef;
2656
+ readonly metadata?: CampaignContentMetadata;
2657
+ };
2658
+ export declare const CampaignContentInput: Schema.Struct<{
2659
+ readonly channel: Schema.Literal<"email">;
2660
+ readonly email: Schema.Struct<{
2661
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2662
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2663
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2664
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2665
+ readonly filename: Schema.String;
2666
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2667
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2668
+ readonly contentType: Schema.String;
2669
+ readonly size: Schema.Finite;
2670
+ }>>, Schema.Null]>>;
2671
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2672
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2673
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2674
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2675
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2676
+ readonly locale: Schema.optionalKey<Schema.String>;
2677
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2678
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2679
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2680
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
2681
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2682
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2683
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2684
+ }>>;
2685
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2686
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2687
+ }>>;
2688
+ readonly headers: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.String>, Schema.Null]>>;
2689
+ readonly preheader: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2690
+ }>;
2691
+ readonly from: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
2692
+ readonly email: Schema.String;
2693
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2694
+ }>, Schema.Null]>>;
2695
+ readonly replyMailboxId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "MailboxId">, Schema.Null]>, Schema.Null]>>;
2696
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2697
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2698
+ }>;
2466
2699
  export type EmailSendMessagePayload = {
2467
2700
  readonly conversationId?: ConversationId | null | null;
2468
2701
  readonly metadata?: MessageMetadata;
@@ -2522,7 +2755,7 @@ export declare const EmailSendMessagePayload: Schema.Struct<{
2522
2755
  readonly timeZone: Schema.optionalKey<Schema.String>;
2523
2756
  readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2524
2757
  readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2525
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2758
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
2526
2759
  readonly tracking: Schema.optionalKey<Schema.Struct<{
2527
2760
  readonly opens: Schema.optionalKey<Schema.Boolean>;
2528
2761
  readonly clicks: Schema.optionalKey<Schema.Boolean>;
@@ -2617,6 +2850,62 @@ export declare const JourneyCondition: Schema.Struct<{
2617
2850
  readonly occurred: Schema.Boolean;
2618
2851
  }>]>]>;
2619
2852
  }>;
2853
+ export type CampaignComposition = {
2854
+ readonly content: CampaignContentInput;
2855
+ readonly audience: CampaignAudience;
2856
+ readonly contactId?: ContactId | null;
2857
+ };
2858
+ export declare const CampaignComposition: Schema.Struct<{
2859
+ readonly content: Schema.Struct<{
2860
+ readonly channel: Schema.Literal<"email">;
2861
+ readonly email: Schema.Struct<{
2862
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2863
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2864
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2865
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2866
+ readonly filename: Schema.String;
2867
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2868
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2869
+ readonly contentType: Schema.String;
2870
+ readonly size: Schema.Finite;
2871
+ }>>, Schema.Null]>>;
2872
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2873
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2874
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2875
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2876
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2877
+ readonly locale: Schema.optionalKey<Schema.String>;
2878
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2879
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2880
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2881
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
2882
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2883
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2884
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2885
+ }>>;
2886
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2887
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2888
+ }>>;
2889
+ readonly headers: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.String>, Schema.Null]>>;
2890
+ readonly preheader: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2891
+ }>;
2892
+ readonly from: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
2893
+ readonly email: Schema.String;
2894
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2895
+ }>, Schema.Null]>>;
2896
+ readonly replyMailboxId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "MailboxId">, Schema.Null]>, Schema.Null]>>;
2897
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2898
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2899
+ }>;
2900
+ readonly audience: Schema.Struct<{
2901
+ readonly topicId: Schema.brand<Schema.String, "TopicId">;
2902
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2903
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2904
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2905
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2906
+ }>;
2907
+ readonly contactId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "ContactId">, Schema.Null]>>;
2908
+ }>;
2620
2909
  export type JourneyBranchEdge = {
2621
2910
  readonly nodeId: JourneyNodeId;
2622
2911
  readonly condition?: JourneyCondition;