samva 0.16.0 → 0.17.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 (127) hide show
  1. package/AGENTS.md +4 -1
  2. package/README.md +44 -1
  3. package/dist/analytics-CaqPRsry.js +207 -0
  4. package/dist/api-keys-Ce1Y4_Ip.js +274 -0
  5. package/dist/attachments-DYqVIraC.js +140 -0
  6. package/dist/brands-ZwuOGIWO.js +175 -0
  7. package/dist/campaigns-DZlz1E9E.js +522 -0
  8. package/dist/categories-CA4XIQAb.js +1011 -0
  9. package/dist/client/sdk.gen.d.ts +174 -3
  10. package/dist/client/types.gen.d.ts +1126 -11
  11. package/dist/client-DOzUrdTE.js +1115 -0
  12. package/dist/contact-groups-BLbFXnjq.js +446 -0
  13. package/dist/contacts-BbsoXXB4.js +787 -0
  14. package/dist/conversations-_sRHueML.js +494 -0
  15. package/dist/custom-fields-BHWbwlKn.js +176 -0
  16. package/dist/effect/analytics.js +2 -21
  17. package/dist/effect/api-keys.d.ts +1 -1
  18. package/dist/effect/api-keys.js +2 -28
  19. package/dist/effect/attachments.js +2 -17
  20. package/dist/effect/brands.d.ts +1 -1
  21. package/dist/effect/brands.js +3 -24
  22. package/dist/effect/campaigns.js +2 -33
  23. package/dist/effect/categories.js +1 -1
  24. package/dist/effect/client.d.ts +1 -1
  25. package/dist/effect/client.js +3 -4
  26. package/dist/effect/contact-groups.js +2 -29
  27. package/dist/effect/contacts.d.ts +52 -0
  28. package/dist/effect/contacts.js +2 -47
  29. package/dist/effect/conversations.js +2 -35
  30. package/dist/effect/custom-fields.js +2 -17
  31. package/dist/effect/email.d.ts +3 -2
  32. package/dist/effect/email.js +2 -137
  33. package/dist/effect/events.d.ts +121 -0
  34. package/dist/effect/events.js +3 -0
  35. package/dist/effect/extension-installations.js +2 -27
  36. package/dist/effect/extensions.js +2 -19
  37. package/dist/effect/feedback.d.ts +1 -1
  38. package/dist/effect/feedback.js +3 -13
  39. package/dist/effect/generated/analytics.d.ts +715 -0
  40. package/dist/effect/generated/api-keys.d.ts +1627 -0
  41. package/dist/effect/generated/attachments.d.ts +554 -0
  42. package/dist/effect/generated/brands.d.ts +1118 -0
  43. package/dist/effect/generated/campaigns.d.ts +3783 -0
  44. package/dist/effect/generated/contact-events.d.ts +158 -0
  45. package/dist/effect/generated/contact-groups.d.ts +1445 -0
  46. package/dist/effect/generated/contacts.d.ts +3789 -0
  47. package/dist/effect/generated/conversations.d.ts +2870 -0
  48. package/dist/effect/generated/custom-fields.d.ts +562 -0
  49. package/dist/effect/generated/email.d.ts +10622 -0
  50. package/dist/effect/generated/events.d.ts +463 -0
  51. package/dist/effect/generated/extension-installations.d.ts +1786 -0
  52. package/dist/effect/generated/extensions.d.ts +927 -0
  53. package/dist/effect/generated/feedback.d.ts +116 -0
  54. package/dist/effect/generated/index.d.ts +61 -0
  55. package/dist/effect/generated/journeys.d.ts +6135 -0
  56. package/dist/effect/generated/mailboxes.d.ts +13641 -0
  57. package/dist/effect/generated/media.d.ts +741 -0
  58. package/dist/effect/generated/messages.d.ts +2355 -0
  59. package/dist/effect/generated/namespaces.d.ts +654 -0
  60. package/dist/effect/generated/operations.d.ts +514 -0
  61. package/dist/effect/generated/organizations.d.ts +1111 -0
  62. package/dist/effect/generated/scheduled-messages.d.ts +1798 -0
  63. package/dist/effect/generated/shared.d.ts +3250 -0
  64. package/dist/effect/generated/subscriptions.d.ts +188 -0
  65. package/dist/effect/generated/templates.d.ts +8177 -0
  66. package/dist/effect/generated/unsubscribe-groups.d.ts +1153 -0
  67. package/dist/effect/generated/webhooks.d.ts +1697 -0
  68. package/dist/effect/generated/whoami.d.ts +291 -0
  69. package/dist/effect/generated-metadata.d.ts +1627 -0
  70. package/dist/effect/index.d.ts +3 -1
  71. package/dist/effect/index.js +29 -27
  72. package/dist/effect/internal/client.d.ts +10 -7
  73. package/dist/effect/internal/email-sender.d.ts +17 -0
  74. package/dist/effect/internal/operation.d.ts +12 -72
  75. package/dist/effect/internal/send.d.ts +60 -0
  76. package/dist/effect/journeys.d.ts +2153 -0
  77. package/dist/effect/journeys.js +2 -0
  78. package/dist/effect/mailboxes.d.ts +112 -112
  79. package/dist/effect/mailboxes.js +1 -1
  80. package/dist/effect/media.js +3 -1
  81. package/dist/effect/messages.d.ts +2 -2
  82. package/dist/effect/messages.js +3 -1
  83. package/dist/effect/namespaces.js +2 -19
  84. package/dist/effect/operations.js +2 -15
  85. package/dist/effect/organizations.js +2 -23
  86. package/dist/effect/retry.js +1 -1
  87. package/dist/effect/scheduled-messages.js +2 -19
  88. package/dist/effect/subscriptions.js +2 -9
  89. package/dist/effect/templates.d.ts +1 -1
  90. package/dist/effect/templates.js +3 -78
  91. package/dist/effect/unsubscribe-groups.js +2 -27
  92. package/dist/effect/webhooks.d.ts +9 -9
  93. package/dist/effect/webhooks.js +3 -33
  94. package/dist/effect/whoami.d.ts +8 -8
  95. package/dist/effect/whoami.js +2 -9
  96. package/dist/email-R0NAA9PW.js +2498 -0
  97. package/dist/events-CxbTUHYT.js +82 -0
  98. package/dist/extension-installations-CD94LPmk.js +407 -0
  99. package/dist/extensions-BKyNQLvu.js +220 -0
  100. package/dist/feedback-Bpa09JOS.js +52 -0
  101. package/dist/index.js +2 -2
  102. package/dist/{inline-attachments-Cegg6tTF.js → inline-attachments-Bi1hDltp.js} +2 -2
  103. package/dist/journeys-CARo_BJT.js +499 -0
  104. package/dist/mailboxes-BRDn7BIK.js +2470 -0
  105. package/dist/media-VrrtNnft.js +181 -0
  106. package/dist/namespaces-CcvEbG-y.js +152 -0
  107. package/dist/{operation-BTXjPrwf.js → operation-n_IYgNVK.js} +75 -90
  108. package/dist/operations-CmB3FHwf.js +93 -0
  109. package/dist/organizations-A-plufWc.js +252 -0
  110. package/dist/promises/index.d.ts +7 -3
  111. package/dist/promises/index.js +2 -2
  112. package/dist/promises/types.gen.d.ts +1 -1
  113. package/dist/{promises-KrA2nSLg.js → promises---Kbh-7z.js} +467 -3
  114. package/dist/runtime-P0l1_2-C.js +25 -0
  115. package/dist/scheduled-messages-DkKZRRaN.js +207 -0
  116. package/dist/send-Bxc0XfGE.js +722 -0
  117. package/dist/service-map.d.ts +85 -0
  118. package/dist/subscriptions-DEXYtMXg.js +67 -0
  119. package/dist/templates-DZomxsG7.js +2289 -0
  120. package/dist/unsubscribe-groups-Iqk4Isf9.js +291 -0
  121. package/dist/webhooks-CPXuu8Xf.js +530 -0
  122. package/dist/whoami-Ccz0jwlt.js +59 -0
  123. package/package.json +13 -3
  124. package/dist/categories-DV51kr2H.js +0 -187
  125. package/dist/client-BMUew5Wp.js +0 -13794
  126. package/dist/effect/generated.d.ts +0 -64004
  127. package/dist/mailboxes-Thp5z0oX.js +0 -161
@@ -0,0 +1,3783 @@
1
+ import type * as EffectBrand from "effect/Brand";
2
+ import { HttpApiEndpoint, HttpApiGroup } from "effect/http-api";
3
+ import * as Schema from "effect/Schema";
4
+ import { ApiKeySecurityMiddleware, BrandAddressRequiredError, CampaignFooterRequiredError, ConflictError, ContactGroupId, ContactId, ConversationId, Cursor, EmailContent, EmailDispatchContent, EmailDomainId, ExternalServiceError, FlagDisabledError, ForbiddenError, GatewayTimeoutError, InternalError, JsonValue, ResourceNotFoundError, SenderNotReadyError, SendsSeries, UnauthorizedError, UnsubscribeId, ValidationError, __SamvaRuntimeAbsoluteInstant } from "./shared";
5
+ export type CampaignId = string & EffectBrand.Brand<"CampaignId">;
6
+ export declare const CampaignId: Schema.brand<Schema.String, "CampaignId">;
7
+ export type CampaignContentMetadata = {
8
+ readonly [x: string]: JsonValue;
9
+ } | null;
10
+ export declare const CampaignContentMetadata: Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>;
11
+ export type CampaignDefinitionSummary = {
12
+ readonly state: "editable" | "frozen" | "archived";
13
+ readonly frozenAt: string | null;
14
+ };
15
+ export declare const CampaignDefinitionSummary: Schema.Struct<{
16
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
17
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
18
+ }>;
19
+ export type CampaignRunId = string & EffectBrand.Brand<"CampaignRunId">;
20
+ export declare const CampaignRunId: Schema.brand<Schema.String, "CampaignRunId">;
21
+ export type CampaignRecipientId = string & EffectBrand.Brand<"CampaignRecipientId">;
22
+ export declare const CampaignRecipientId: Schema.brand<Schema.String, "CampaignRecipientId">;
23
+ export type CampaignPolicy = {
24
+ readonly unsubscribeGroupId?: UnsubscribeId | null;
25
+ readonly pageSize?: number | null;
26
+ };
27
+ export declare const CampaignPolicy: Schema.Struct<{
28
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
29
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
30
+ }>;
31
+ export type CampaignConversationRef = ConversationId | null | null;
32
+ export declare const CampaignConversationRef: Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>;
33
+ export type CampaignAudience = {
34
+ readonly includeTags?: ReadonlyArray<string> | null;
35
+ readonly excludeTags?: ReadonlyArray<string> | null;
36
+ readonly contactIds?: ReadonlyArray<ContactId> | null;
37
+ readonly groupIds?: ReadonlyArray<ContactGroupId> | null;
38
+ };
39
+ export declare const CampaignAudience: Schema.Struct<{
40
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
41
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
42
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
43
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
44
+ }>;
45
+ export type CampaignLatestRun = {
46
+ readonly id: CampaignRunId;
47
+ readonly status: "scheduled" | "resolving" | "dispatching" | "paused" | "completed" | "cancelled" | "failed";
48
+ readonly scheduledFor: string;
49
+ readonly completedAt: string | null;
50
+ readonly totalRecipients: number;
51
+ readonly dispatchedCount: number;
52
+ readonly failedCount: number;
53
+ readonly skippedCount: number;
54
+ readonly estimatedCompletionAt: string | null;
55
+ };
56
+ export declare const CampaignLatestRun: Schema.Struct<{
57
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
58
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
59
+ readonly scheduledFor: Schema.String;
60
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
61
+ readonly totalRecipients: Schema.Finite;
62
+ readonly dispatchedCount: Schema.Finite;
63
+ readonly failedCount: Schema.Finite;
64
+ readonly skippedCount: Schema.Finite;
65
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
66
+ }>;
67
+ export type CampaignRecipientPage = {
68
+ readonly items: ReadonlyArray<{
69
+ readonly id: CampaignRecipientId;
70
+ readonly runId: CampaignRunId;
71
+ readonly contactId: ContactId;
72
+ readonly status: "pending" | "dispatching" | "dispatched" | "failed" | "skipped";
73
+ readonly messageId: string | null;
74
+ readonly failureReason: string | null;
75
+ readonly skippedReason: "unsubscribed" | "blocked" | "suppressed" | "no_identity" | "inactive" | "run_cancelled" | "run_failed" | null;
76
+ readonly createdAt: string;
77
+ readonly updatedAt: string;
78
+ }>;
79
+ readonly nextCursor: string | null;
80
+ };
81
+ export declare const CampaignRecipientPage: Schema.Struct<{
82
+ readonly items: Schema.$Array<Schema.Struct<{
83
+ readonly id: Schema.brand<Schema.String, "CampaignRecipientId">;
84
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
85
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
86
+ readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"dispatching">, Schema.Literal<"dispatched">, Schema.Literal<"failed">, Schema.Literal<"skipped">]>;
87
+ readonly messageId: Schema.Union<readonly [Schema.String, Schema.Null]>;
88
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
89
+ readonly skippedReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"unsubscribed">, Schema.Literal<"blocked">, Schema.Literal<"suppressed">, Schema.Literal<"no_identity">, Schema.Literal<"inactive">, Schema.Literal<"run_cancelled">, Schema.Literal<"run_failed">]>, Schema.Null]>;
90
+ readonly createdAt: Schema.String;
91
+ readonly updatedAt: Schema.String;
92
+ }>>;
93
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
94
+ }>;
95
+ export type CampaignContent = {
96
+ readonly channel: "email";
97
+ readonly email: EmailContent;
98
+ readonly conversationId?: CampaignConversationRef;
99
+ readonly metadata?: CampaignContentMetadata;
100
+ };
101
+ export declare const CampaignContent: Schema.Struct<{
102
+ readonly channel: Schema.Literal<"email">;
103
+ readonly email: Schema.Struct<{
104
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
105
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
106
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
107
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
108
+ readonly filename: Schema.String;
109
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
110
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
111
+ readonly contentType: Schema.String;
112
+ readonly size: Schema.Finite;
113
+ }>>, Schema.Null]>>;
114
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
115
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
116
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
117
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
118
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
119
+ readonly locale: Schema.optionalKey<Schema.String>;
120
+ readonly timeZone: Schema.optionalKey<Schema.String>;
121
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
122
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
123
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
124
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
125
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
126
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
127
+ }>>;
128
+ readonly footer: Schema.optionalKey<Schema.Struct<{
129
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
130
+ }>>;
131
+ }>;
132
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
133
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
134
+ }>;
135
+ export type CampaignContentInput = {
136
+ readonly channel: "email";
137
+ readonly email: EmailDispatchContent;
138
+ readonly conversationId?: CampaignConversationRef;
139
+ readonly metadata?: CampaignContentMetadata;
140
+ };
141
+ export declare const CampaignContentInput: Schema.Struct<{
142
+ readonly channel: Schema.Literal<"email">;
143
+ readonly email: Schema.Struct<{
144
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
145
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
146
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
147
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
148
+ readonly filename: Schema.String;
149
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
150
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
151
+ readonly contentType: Schema.String;
152
+ readonly size: Schema.Finite;
153
+ }>>, Schema.Null]>>;
154
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
155
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
156
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
157
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
158
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
159
+ readonly locale: Schema.optionalKey<Schema.String>;
160
+ readonly timeZone: Schema.optionalKey<Schema.String>;
161
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
162
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
163
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
164
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
165
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
166
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
167
+ }>>;
168
+ readonly footer: Schema.optionalKey<Schema.Struct<{
169
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
170
+ }>>;
171
+ }>;
172
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
173
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
174
+ }>;
175
+ export type CampaignListItem = {
176
+ readonly id: CampaignId;
177
+ readonly name: string;
178
+ readonly channel: "email";
179
+ readonly content: CampaignContent;
180
+ readonly audience: CampaignAudience;
181
+ readonly policy: CampaignPolicy;
182
+ readonly definition: CampaignDefinitionSummary;
183
+ readonly latestRun: CampaignLatestRun | null;
184
+ readonly createdBy: string | null;
185
+ readonly actorEmail: string;
186
+ readonly memberRole: string;
187
+ readonly createdAt: string;
188
+ readonly updatedAt: string;
189
+ readonly series: SendsSeries;
190
+ };
191
+ export declare const CampaignListItem: Schema.Struct<{
192
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
193
+ readonly name: Schema.String;
194
+ readonly channel: Schema.Literal<"email">;
195
+ readonly content: Schema.Struct<{
196
+ readonly channel: Schema.Literal<"email">;
197
+ readonly email: Schema.Struct<{
198
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
199
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
200
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
201
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
202
+ readonly filename: Schema.String;
203
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
204
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
205
+ readonly contentType: Schema.String;
206
+ readonly size: Schema.Finite;
207
+ }>>, Schema.Null]>>;
208
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
209
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
210
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
211
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
212
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
213
+ readonly locale: Schema.optionalKey<Schema.String>;
214
+ readonly timeZone: Schema.optionalKey<Schema.String>;
215
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
216
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
217
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
218
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
219
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
220
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
221
+ }>>;
222
+ readonly footer: Schema.optionalKey<Schema.Struct<{
223
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
224
+ }>>;
225
+ }>;
226
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
227
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
228
+ }>;
229
+ readonly audience: Schema.Struct<{
230
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
231
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
232
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
233
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
234
+ }>;
235
+ readonly policy: Schema.Struct<{
236
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
237
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
238
+ }>;
239
+ readonly definition: Schema.Struct<{
240
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
241
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
242
+ }>;
243
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
244
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
245
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
246
+ readonly scheduledFor: Schema.String;
247
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
248
+ readonly totalRecipients: Schema.Finite;
249
+ readonly dispatchedCount: Schema.Finite;
250
+ readonly failedCount: Schema.Finite;
251
+ readonly skippedCount: Schema.Finite;
252
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
253
+ }>, Schema.Null]>;
254
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
255
+ readonly actorEmail: Schema.String;
256
+ readonly memberRole: Schema.String;
257
+ readonly createdAt: Schema.String;
258
+ readonly updatedAt: Schema.String;
259
+ readonly series: Schema.$Array<Schema.Finite>;
260
+ }>;
261
+ export type Campaign = {
262
+ readonly id: CampaignId;
263
+ readonly name: string;
264
+ readonly channel: "email";
265
+ readonly content: CampaignContent;
266
+ readonly audience: CampaignAudience;
267
+ readonly policy: CampaignPolicy;
268
+ readonly definition: CampaignDefinitionSummary;
269
+ readonly latestRun: CampaignLatestRun | null;
270
+ readonly createdBy: string | null;
271
+ readonly actorEmail: string;
272
+ readonly memberRole: string;
273
+ readonly createdAt: string;
274
+ readonly updatedAt: string;
275
+ };
276
+ export declare const Campaign: Schema.Struct<{
277
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
278
+ readonly name: Schema.String;
279
+ readonly channel: Schema.Literal<"email">;
280
+ readonly content: Schema.Struct<{
281
+ readonly channel: Schema.Literal<"email">;
282
+ readonly email: Schema.Struct<{
283
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
284
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
285
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
286
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
287
+ readonly filename: Schema.String;
288
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
289
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
290
+ readonly contentType: Schema.String;
291
+ readonly size: Schema.Finite;
292
+ }>>, Schema.Null]>>;
293
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
294
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
295
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
296
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
297
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
298
+ readonly locale: Schema.optionalKey<Schema.String>;
299
+ readonly timeZone: Schema.optionalKey<Schema.String>;
300
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
301
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
302
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
303
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
304
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
305
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
306
+ }>>;
307
+ readonly footer: Schema.optionalKey<Schema.Struct<{
308
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
309
+ }>>;
310
+ }>;
311
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
312
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
313
+ }>;
314
+ readonly audience: Schema.Struct<{
315
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
316
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
317
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
318
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
319
+ }>;
320
+ readonly policy: Schema.Struct<{
321
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
322
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
323
+ }>;
324
+ readonly definition: Schema.Struct<{
325
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
326
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
327
+ }>;
328
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
329
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
330
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
331
+ readonly scheduledFor: Schema.String;
332
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
333
+ readonly totalRecipients: Schema.Finite;
334
+ readonly dispatchedCount: Schema.Finite;
335
+ readonly failedCount: Schema.Finite;
336
+ readonly skippedCount: Schema.Finite;
337
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
338
+ }>, Schema.Null]>;
339
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
340
+ readonly actorEmail: Schema.String;
341
+ readonly memberRole: Schema.String;
342
+ readonly createdAt: Schema.String;
343
+ readonly updatedAt: Schema.String;
344
+ }>;
345
+ export type CampaignRun = {
346
+ readonly id: CampaignRunId;
347
+ readonly campaignId: CampaignId;
348
+ readonly status: "scheduled" | "resolving" | "dispatching" | "paused" | "completed" | "cancelled" | "failed";
349
+ readonly scheduledFor: string;
350
+ readonly idempotencyKey: string | null;
351
+ readonly startedAt: string | null;
352
+ readonly completedAt: string | null;
353
+ readonly contentSnapshot: CampaignContent;
354
+ readonly audienceSnapshot: CampaignAudience;
355
+ readonly policySnapshot: CampaignPolicy;
356
+ readonly totalRecipients: number;
357
+ readonly dispatchedCount: number;
358
+ readonly failedCount: number;
359
+ readonly skippedCount: number;
360
+ readonly estimatedCompletionAt: string | null;
361
+ readonly failureReason: string | null;
362
+ readonly holdReason: string | null;
363
+ readonly holdDomainId: EmailDomainId | null;
364
+ readonly lastContactId: string | null;
365
+ readonly createdBy: string | null;
366
+ readonly actorEmail: string;
367
+ readonly memberRole: string;
368
+ readonly createdAt: string;
369
+ readonly updatedAt: string;
370
+ };
371
+ export declare const CampaignRun: Schema.Struct<{
372
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
373
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
374
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
375
+ readonly scheduledFor: Schema.String;
376
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
377
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
378
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
379
+ readonly contentSnapshot: Schema.Struct<{
380
+ readonly channel: Schema.Literal<"email">;
381
+ readonly email: Schema.Struct<{
382
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
383
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
384
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
385
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
386
+ readonly filename: Schema.String;
387
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
388
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
389
+ readonly contentType: Schema.String;
390
+ readonly size: Schema.Finite;
391
+ }>>, Schema.Null]>>;
392
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
393
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
394
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
395
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
396
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
397
+ readonly locale: Schema.optionalKey<Schema.String>;
398
+ readonly timeZone: Schema.optionalKey<Schema.String>;
399
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
400
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
401
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
402
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
403
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
404
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
405
+ }>>;
406
+ readonly footer: Schema.optionalKey<Schema.Struct<{
407
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
408
+ }>>;
409
+ }>;
410
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
411
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
412
+ }>;
413
+ readonly audienceSnapshot: Schema.Struct<{
414
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
415
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
416
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
417
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
418
+ }>;
419
+ readonly policySnapshot: Schema.Struct<{
420
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
421
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
422
+ }>;
423
+ readonly totalRecipients: Schema.Finite;
424
+ readonly dispatchedCount: Schema.Finite;
425
+ readonly failedCount: Schema.Finite;
426
+ readonly skippedCount: Schema.Finite;
427
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
428
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
429
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
430
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
431
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
432
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
433
+ readonly actorEmail: Schema.String;
434
+ readonly memberRole: Schema.String;
435
+ readonly createdAt: Schema.String;
436
+ readonly updatedAt: Schema.String;
437
+ }>;
438
+ export type CampaignPage = {
439
+ readonly items: ReadonlyArray<CampaignListItem>;
440
+ readonly nextCursor: string | null;
441
+ };
442
+ export declare const CampaignPage: Schema.Struct<{
443
+ readonly items: Schema.$Array<Schema.Struct<{
444
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
445
+ readonly name: Schema.String;
446
+ readonly channel: Schema.Literal<"email">;
447
+ readonly content: Schema.Struct<{
448
+ readonly channel: Schema.Literal<"email">;
449
+ readonly email: Schema.Struct<{
450
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
451
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
452
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
453
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
454
+ readonly filename: Schema.String;
455
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
456
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
457
+ readonly contentType: Schema.String;
458
+ readonly size: Schema.Finite;
459
+ }>>, Schema.Null]>>;
460
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
461
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
462
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
463
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
464
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
465
+ readonly locale: Schema.optionalKey<Schema.String>;
466
+ readonly timeZone: Schema.optionalKey<Schema.String>;
467
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
468
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
469
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
470
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
471
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
472
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
473
+ }>>;
474
+ readonly footer: Schema.optionalKey<Schema.Struct<{
475
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
476
+ }>>;
477
+ }>;
478
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
479
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
480
+ }>;
481
+ readonly audience: Schema.Struct<{
482
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
483
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
484
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
485
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
486
+ }>;
487
+ readonly policy: Schema.Struct<{
488
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
489
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
490
+ }>;
491
+ readonly definition: Schema.Struct<{
492
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
493
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
494
+ }>;
495
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
496
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
497
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
498
+ readonly scheduledFor: Schema.String;
499
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
500
+ readonly totalRecipients: Schema.Finite;
501
+ readonly dispatchedCount: Schema.Finite;
502
+ readonly failedCount: Schema.Finite;
503
+ readonly skippedCount: Schema.Finite;
504
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
505
+ }>, Schema.Null]>;
506
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
507
+ readonly actorEmail: Schema.String;
508
+ readonly memberRole: Schema.String;
509
+ readonly createdAt: Schema.String;
510
+ readonly updatedAt: Schema.String;
511
+ readonly series: Schema.$Array<Schema.Finite>;
512
+ }>>;
513
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
514
+ }>;
515
+ export type CampaignRunPage = {
516
+ readonly items: ReadonlyArray<CampaignRun>;
517
+ readonly nextCursor: string | null;
518
+ };
519
+ export declare const CampaignRunPage: Schema.Struct<{
520
+ readonly items: Schema.$Array<Schema.Struct<{
521
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
522
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
523
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
524
+ readonly scheduledFor: Schema.String;
525
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
526
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
527
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
528
+ readonly contentSnapshot: Schema.Struct<{
529
+ readonly channel: Schema.Literal<"email">;
530
+ readonly email: Schema.Struct<{
531
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
532
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
533
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
534
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
535
+ readonly filename: Schema.String;
536
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
537
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
538
+ readonly contentType: Schema.String;
539
+ readonly size: Schema.Finite;
540
+ }>>, Schema.Null]>>;
541
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
542
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
543
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
544
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
545
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
546
+ readonly locale: Schema.optionalKey<Schema.String>;
547
+ readonly timeZone: Schema.optionalKey<Schema.String>;
548
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
549
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
550
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
551
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
552
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
553
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
554
+ }>>;
555
+ readonly footer: Schema.optionalKey<Schema.Struct<{
556
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
557
+ }>>;
558
+ }>;
559
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
560
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
561
+ }>;
562
+ readonly audienceSnapshot: Schema.Struct<{
563
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
564
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
565
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
566
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
567
+ }>;
568
+ readonly policySnapshot: Schema.Struct<{
569
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
570
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
571
+ }>;
572
+ readonly totalRecipients: Schema.Finite;
573
+ readonly dispatchedCount: Schema.Finite;
574
+ readonly failedCount: Schema.Finite;
575
+ readonly skippedCount: Schema.Finite;
576
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
577
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
578
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
579
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
580
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
581
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
582
+ readonly actorEmail: Schema.String;
583
+ readonly memberRole: Schema.String;
584
+ readonly createdAt: Schema.String;
585
+ readonly updatedAt: Schema.String;
586
+ }>>;
587
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
588
+ }>;
589
+ export type CampaignRunAction = {
590
+ readonly success: boolean;
591
+ readonly item: CampaignRun;
592
+ };
593
+ export declare const CampaignRunAction: Schema.Struct<{
594
+ readonly success: Schema.Boolean;
595
+ readonly item: Schema.Struct<{
596
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
597
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
598
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
599
+ readonly scheduledFor: Schema.String;
600
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
601
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
602
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
603
+ readonly contentSnapshot: Schema.Struct<{
604
+ readonly channel: Schema.Literal<"email">;
605
+ readonly email: Schema.Struct<{
606
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
607
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
608
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
609
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
610
+ readonly filename: Schema.String;
611
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
612
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
613
+ readonly contentType: Schema.String;
614
+ readonly size: Schema.Finite;
615
+ }>>, Schema.Null]>>;
616
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
617
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
618
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
619
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
620
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
621
+ readonly locale: Schema.optionalKey<Schema.String>;
622
+ readonly timeZone: Schema.optionalKey<Schema.String>;
623
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
624
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
625
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
626
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
627
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
628
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
629
+ }>>;
630
+ readonly footer: Schema.optionalKey<Schema.Struct<{
631
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
632
+ }>>;
633
+ }>;
634
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
635
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
636
+ }>;
637
+ readonly audienceSnapshot: Schema.Struct<{
638
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
639
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
640
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
641
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
642
+ }>;
643
+ readonly policySnapshot: Schema.Struct<{
644
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
645
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
646
+ }>;
647
+ readonly totalRecipients: Schema.Finite;
648
+ readonly dispatchedCount: Schema.Finite;
649
+ readonly failedCount: Schema.Finite;
650
+ readonly skippedCount: Schema.Finite;
651
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
652
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
653
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
654
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
655
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
656
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
657
+ readonly actorEmail: Schema.String;
658
+ readonly memberRole: Schema.String;
659
+ readonly createdAt: Schema.String;
660
+ readonly updatedAt: Schema.String;
661
+ }>;
662
+ }>;
663
+ export type CampaignsListQuery = {
664
+ readonly status?: "draft" | "archived" | null;
665
+ readonly limit?: string | null;
666
+ readonly cursor?: Cursor | null;
667
+ };
668
+ export declare const CampaignsListQuery: Schema.Struct<{
669
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"draft">, Schema.Literal<"archived">]>, Schema.Null]>>;
670
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
671
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
672
+ }>;
673
+ export type CampaignsList200 = CampaignPage;
674
+ export declare const CampaignsList200: Schema.Struct<{
675
+ readonly items: Schema.$Array<Schema.Struct<{
676
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
677
+ readonly name: Schema.String;
678
+ readonly channel: Schema.Literal<"email">;
679
+ readonly content: Schema.Struct<{
680
+ readonly channel: Schema.Literal<"email">;
681
+ readonly email: Schema.Struct<{
682
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
683
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
684
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
685
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
686
+ readonly filename: Schema.String;
687
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
688
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
689
+ readonly contentType: Schema.String;
690
+ readonly size: Schema.Finite;
691
+ }>>, Schema.Null]>>;
692
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
693
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
694
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
695
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
696
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
697
+ readonly locale: Schema.optionalKey<Schema.String>;
698
+ readonly timeZone: Schema.optionalKey<Schema.String>;
699
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
700
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
701
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
702
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
703
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
704
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
705
+ }>>;
706
+ readonly footer: Schema.optionalKey<Schema.Struct<{
707
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
708
+ }>>;
709
+ }>;
710
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
711
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
712
+ }>;
713
+ readonly audience: Schema.Struct<{
714
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
715
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
716
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
717
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
718
+ }>;
719
+ readonly policy: Schema.Struct<{
720
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
721
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
722
+ }>;
723
+ readonly definition: Schema.Struct<{
724
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
725
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
726
+ }>;
727
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
728
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
729
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
730
+ readonly scheduledFor: Schema.String;
731
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
732
+ readonly totalRecipients: Schema.Finite;
733
+ readonly dispatchedCount: Schema.Finite;
734
+ readonly failedCount: Schema.Finite;
735
+ readonly skippedCount: Schema.Finite;
736
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
737
+ }>, Schema.Null]>;
738
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
739
+ readonly actorEmail: Schema.String;
740
+ readonly memberRole: Schema.String;
741
+ readonly createdAt: Schema.String;
742
+ readonly updatedAt: Schema.String;
743
+ readonly series: Schema.$Array<Schema.Finite>;
744
+ }>>;
745
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
746
+ }>;
747
+ export type CampaignsList401 = UnauthorizedError;
748
+ export declare const CampaignsList401: typeof UnauthorizedError;
749
+ export type CampaignsList403 = ForbiddenError;
750
+ export declare const CampaignsList403: typeof ForbiddenError;
751
+ export type CampaignsList422 = ValidationError;
752
+ export declare const CampaignsList422: typeof ValidationError;
753
+ export type CampaignsList500 = InternalError;
754
+ export declare const CampaignsList500: typeof InternalError;
755
+ export type CampaignsList504 = GatewayTimeoutError;
756
+ export declare const CampaignsList504: typeof GatewayTimeoutError;
757
+ export type CampaignsCreateRequestJson = {
758
+ readonly name: string;
759
+ readonly channel: "email";
760
+ readonly content: CampaignContentInput;
761
+ readonly audience: CampaignAudience;
762
+ readonly policy?: CampaignPolicy | null;
763
+ };
764
+ export declare const CampaignsCreateRequestJson: Schema.Struct<{
765
+ readonly name: Schema.String;
766
+ readonly channel: Schema.Literal<"email">;
767
+ readonly content: Schema.Struct<{
768
+ readonly channel: Schema.Literal<"email">;
769
+ readonly email: Schema.Struct<{
770
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
771
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
772
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
773
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
774
+ readonly filename: Schema.String;
775
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
776
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
777
+ readonly contentType: Schema.String;
778
+ readonly size: Schema.Finite;
779
+ }>>, Schema.Null]>>;
780
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
781
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
782
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
783
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
784
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
785
+ readonly locale: Schema.optionalKey<Schema.String>;
786
+ readonly timeZone: Schema.optionalKey<Schema.String>;
787
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
788
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
789
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
790
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
791
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
792
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
793
+ }>>;
794
+ readonly footer: Schema.optionalKey<Schema.Struct<{
795
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
796
+ }>>;
797
+ }>;
798
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
799
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
800
+ }>;
801
+ readonly audience: Schema.Struct<{
802
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
803
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
804
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
805
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
806
+ }>;
807
+ readonly policy: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
808
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
809
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
810
+ }>, Schema.Null]>>;
811
+ }>;
812
+ export type CampaignsCreate201 = Campaign;
813
+ export declare const CampaignsCreate201: Schema.Struct<{
814
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
815
+ readonly name: Schema.String;
816
+ readonly channel: Schema.Literal<"email">;
817
+ readonly content: Schema.Struct<{
818
+ readonly channel: Schema.Literal<"email">;
819
+ readonly email: Schema.Struct<{
820
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
821
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
822
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
823
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
824
+ readonly filename: Schema.String;
825
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
826
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
827
+ readonly contentType: Schema.String;
828
+ readonly size: Schema.Finite;
829
+ }>>, Schema.Null]>>;
830
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
831
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
832
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
833
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
834
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
835
+ readonly locale: Schema.optionalKey<Schema.String>;
836
+ readonly timeZone: Schema.optionalKey<Schema.String>;
837
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
838
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
839
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
840
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
841
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
842
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
843
+ }>>;
844
+ readonly footer: Schema.optionalKey<Schema.Struct<{
845
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
846
+ }>>;
847
+ }>;
848
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
849
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
850
+ }>;
851
+ readonly audience: Schema.Struct<{
852
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
853
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
854
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
855
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
856
+ }>;
857
+ readonly policy: Schema.Struct<{
858
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
859
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
860
+ }>;
861
+ readonly definition: Schema.Struct<{
862
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
863
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
864
+ }>;
865
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
866
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
867
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
868
+ readonly scheduledFor: Schema.String;
869
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
870
+ readonly totalRecipients: Schema.Finite;
871
+ readonly dispatchedCount: Schema.Finite;
872
+ readonly failedCount: Schema.Finite;
873
+ readonly skippedCount: Schema.Finite;
874
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
875
+ }>, Schema.Null]>;
876
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
877
+ readonly actorEmail: Schema.String;
878
+ readonly memberRole: Schema.String;
879
+ readonly createdAt: Schema.String;
880
+ readonly updatedAt: Schema.String;
881
+ }>;
882
+ export type CampaignsCreate401 = UnauthorizedError;
883
+ export declare const CampaignsCreate401: typeof UnauthorizedError;
884
+ export type CampaignsCreate403 = FlagDisabledError | ForbiddenError;
885
+ export declare const CampaignsCreate403: Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]>;
886
+ export type CampaignsCreate422 = ValidationError;
887
+ export declare const CampaignsCreate422: typeof ValidationError;
888
+ export type CampaignsCreate500 = InternalError;
889
+ export declare const CampaignsCreate500: typeof InternalError;
890
+ export type CampaignsCreate504 = GatewayTimeoutError;
891
+ export declare const CampaignsCreate504: typeof GatewayTimeoutError;
892
+ export type CampaignsGetPathParams = {
893
+ readonly id: CampaignId;
894
+ };
895
+ export declare const CampaignsGetPathParams: Schema.Struct<{
896
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
897
+ }>;
898
+ export type CampaignsGet200 = Campaign;
899
+ export declare const CampaignsGet200: Schema.Struct<{
900
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
901
+ readonly name: Schema.String;
902
+ readonly channel: Schema.Literal<"email">;
903
+ readonly content: Schema.Struct<{
904
+ readonly channel: Schema.Literal<"email">;
905
+ readonly email: Schema.Struct<{
906
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
907
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
908
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
909
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
910
+ readonly filename: Schema.String;
911
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
912
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
913
+ readonly contentType: Schema.String;
914
+ readonly size: Schema.Finite;
915
+ }>>, Schema.Null]>>;
916
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
917
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
918
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
919
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
920
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
921
+ readonly locale: Schema.optionalKey<Schema.String>;
922
+ readonly timeZone: Schema.optionalKey<Schema.String>;
923
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
924
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
925
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
926
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
927
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
928
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
929
+ }>>;
930
+ readonly footer: Schema.optionalKey<Schema.Struct<{
931
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
932
+ }>>;
933
+ }>;
934
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
935
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
936
+ }>;
937
+ readonly audience: Schema.Struct<{
938
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
939
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
940
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
941
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
942
+ }>;
943
+ readonly policy: Schema.Struct<{
944
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
945
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
946
+ }>;
947
+ readonly definition: Schema.Struct<{
948
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
949
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
950
+ }>;
951
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
952
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
953
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
954
+ readonly scheduledFor: Schema.String;
955
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
956
+ readonly totalRecipients: Schema.Finite;
957
+ readonly dispatchedCount: Schema.Finite;
958
+ readonly failedCount: Schema.Finite;
959
+ readonly skippedCount: Schema.Finite;
960
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
961
+ }>, Schema.Null]>;
962
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
963
+ readonly actorEmail: Schema.String;
964
+ readonly memberRole: Schema.String;
965
+ readonly createdAt: Schema.String;
966
+ readonly updatedAt: Schema.String;
967
+ }>;
968
+ export type CampaignsGet401 = UnauthorizedError;
969
+ export declare const CampaignsGet401: typeof UnauthorizedError;
970
+ export type CampaignsGet403 = ForbiddenError;
971
+ export declare const CampaignsGet403: typeof ForbiddenError;
972
+ export type CampaignsGet404 = ResourceNotFoundError;
973
+ export declare const CampaignsGet404: typeof ResourceNotFoundError;
974
+ export type CampaignsGet422 = ValidationError;
975
+ export declare const CampaignsGet422: typeof ValidationError;
976
+ export type CampaignsGet500 = InternalError;
977
+ export declare const CampaignsGet500: typeof InternalError;
978
+ export type CampaignsGet504 = GatewayTimeoutError;
979
+ export declare const CampaignsGet504: typeof GatewayTimeoutError;
980
+ export type CampaignsUpdatePathParams = {
981
+ readonly id: CampaignId;
982
+ };
983
+ export declare const CampaignsUpdatePathParams: Schema.Struct<{
984
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
985
+ }>;
986
+ export type CampaignsUpdateRequestJson = {
987
+ readonly name?: string | null;
988
+ readonly content?: CampaignContentInput | null;
989
+ readonly audience?: CampaignAudience | null;
990
+ readonly policy?: CampaignPolicy | null;
991
+ };
992
+ export declare const CampaignsUpdateRequestJson: Schema.Struct<{
993
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
994
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
995
+ readonly channel: Schema.Literal<"email">;
996
+ readonly email: Schema.Struct<{
997
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
998
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
999
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1000
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1001
+ readonly filename: Schema.String;
1002
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1003
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1004
+ readonly contentType: Schema.String;
1005
+ readonly size: Schema.Finite;
1006
+ }>>, Schema.Null]>>;
1007
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1008
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1009
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1010
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1011
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1012
+ readonly locale: Schema.optionalKey<Schema.String>;
1013
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1014
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1015
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1016
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1017
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1018
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1019
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1020
+ }>>;
1021
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1022
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1023
+ }>>;
1024
+ }>;
1025
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1026
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1027
+ }>, Schema.Null]>>;
1028
+ readonly audience: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1029
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1030
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1031
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1032
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1033
+ }>, Schema.Null]>>;
1034
+ readonly policy: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1035
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1036
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1037
+ }>, Schema.Null]>>;
1038
+ }>;
1039
+ export type CampaignsUpdate200 = Campaign;
1040
+ export declare const CampaignsUpdate200: Schema.Struct<{
1041
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1042
+ readonly name: Schema.String;
1043
+ readonly channel: Schema.Literal<"email">;
1044
+ readonly content: Schema.Struct<{
1045
+ readonly channel: Schema.Literal<"email">;
1046
+ readonly email: Schema.Struct<{
1047
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1048
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1049
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1050
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1051
+ readonly filename: Schema.String;
1052
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1053
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1054
+ readonly contentType: Schema.String;
1055
+ readonly size: Schema.Finite;
1056
+ }>>, Schema.Null]>>;
1057
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1058
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1059
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1060
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1061
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1062
+ readonly locale: Schema.optionalKey<Schema.String>;
1063
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1064
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1065
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1066
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1067
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1068
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1069
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1070
+ }>>;
1071
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1072
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1073
+ }>>;
1074
+ }>;
1075
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1076
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1077
+ }>;
1078
+ readonly audience: Schema.Struct<{
1079
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1080
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1081
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1082
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1083
+ }>;
1084
+ readonly policy: Schema.Struct<{
1085
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1086
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1087
+ }>;
1088
+ readonly definition: Schema.Struct<{
1089
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
1090
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1091
+ }>;
1092
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
1093
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1094
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1095
+ readonly scheduledFor: Schema.String;
1096
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1097
+ readonly totalRecipients: Schema.Finite;
1098
+ readonly dispatchedCount: Schema.Finite;
1099
+ readonly failedCount: Schema.Finite;
1100
+ readonly skippedCount: Schema.Finite;
1101
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1102
+ }>, Schema.Null]>;
1103
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1104
+ readonly actorEmail: Schema.String;
1105
+ readonly memberRole: Schema.String;
1106
+ readonly createdAt: Schema.String;
1107
+ readonly updatedAt: Schema.String;
1108
+ }>;
1109
+ export type CampaignsUpdate401 = UnauthorizedError;
1110
+ export declare const CampaignsUpdate401: typeof UnauthorizedError;
1111
+ export type CampaignsUpdate403 = FlagDisabledError | ForbiddenError;
1112
+ export declare const CampaignsUpdate403: Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]>;
1113
+ export type CampaignsUpdate404 = ResourceNotFoundError;
1114
+ export declare const CampaignsUpdate404: typeof ResourceNotFoundError;
1115
+ export type CampaignsUpdate409 = ConflictError;
1116
+ export declare const CampaignsUpdate409: typeof ConflictError;
1117
+ export type CampaignsUpdate422 = ValidationError;
1118
+ export declare const CampaignsUpdate422: typeof ValidationError;
1119
+ export type CampaignsUpdate500 = InternalError;
1120
+ export declare const CampaignsUpdate500: typeof InternalError;
1121
+ export type CampaignsUpdate504 = GatewayTimeoutError;
1122
+ export declare const CampaignsUpdate504: typeof GatewayTimeoutError;
1123
+ export type CampaignsArchivePathParams = {
1124
+ readonly id: CampaignId;
1125
+ };
1126
+ export declare const CampaignsArchivePathParams: Schema.Struct<{
1127
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1128
+ }>;
1129
+ export type CampaignsArchive200 = Campaign;
1130
+ export declare const CampaignsArchive200: Schema.Struct<{
1131
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1132
+ readonly name: Schema.String;
1133
+ readonly channel: Schema.Literal<"email">;
1134
+ readonly content: Schema.Struct<{
1135
+ readonly channel: Schema.Literal<"email">;
1136
+ readonly email: Schema.Struct<{
1137
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1138
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1139
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1140
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1141
+ readonly filename: Schema.String;
1142
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1143
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1144
+ readonly contentType: Schema.String;
1145
+ readonly size: Schema.Finite;
1146
+ }>>, Schema.Null]>>;
1147
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1148
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1149
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1150
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1151
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1152
+ readonly locale: Schema.optionalKey<Schema.String>;
1153
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1154
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1155
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1156
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1157
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1158
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1159
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1160
+ }>>;
1161
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1162
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1163
+ }>>;
1164
+ }>;
1165
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1166
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1167
+ }>;
1168
+ readonly audience: Schema.Struct<{
1169
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1170
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1171
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1172
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1173
+ }>;
1174
+ readonly policy: Schema.Struct<{
1175
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1176
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1177
+ }>;
1178
+ readonly definition: Schema.Struct<{
1179
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
1180
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1181
+ }>;
1182
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
1183
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1184
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1185
+ readonly scheduledFor: Schema.String;
1186
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1187
+ readonly totalRecipients: Schema.Finite;
1188
+ readonly dispatchedCount: Schema.Finite;
1189
+ readonly failedCount: Schema.Finite;
1190
+ readonly skippedCount: Schema.Finite;
1191
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1192
+ }>, Schema.Null]>;
1193
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1194
+ readonly actorEmail: Schema.String;
1195
+ readonly memberRole: Schema.String;
1196
+ readonly createdAt: Schema.String;
1197
+ readonly updatedAt: Schema.String;
1198
+ }>;
1199
+ export type CampaignsArchive401 = UnauthorizedError;
1200
+ export declare const CampaignsArchive401: typeof UnauthorizedError;
1201
+ export type CampaignsArchive403 = ForbiddenError;
1202
+ export declare const CampaignsArchive403: typeof ForbiddenError;
1203
+ export type CampaignsArchive404 = ResourceNotFoundError;
1204
+ export declare const CampaignsArchive404: typeof ResourceNotFoundError;
1205
+ export type CampaignsArchive409 = ConflictError;
1206
+ export declare const CampaignsArchive409: typeof ConflictError;
1207
+ export type CampaignsArchive422 = ValidationError;
1208
+ export declare const CampaignsArchive422: typeof ValidationError;
1209
+ export type CampaignsArchive500 = InternalError;
1210
+ export declare const CampaignsArchive500: typeof InternalError;
1211
+ export type CampaignsArchive504 = GatewayTimeoutError;
1212
+ export declare const CampaignsArchive504: typeof GatewayTimeoutError;
1213
+ export type CampaignsListRunsPathParams = {
1214
+ readonly id: CampaignId;
1215
+ };
1216
+ export declare const CampaignsListRunsPathParams: Schema.Struct<{
1217
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1218
+ }>;
1219
+ export type CampaignsListRunsQuery = {
1220
+ readonly status?: "scheduled" | "resolving" | "dispatching" | "paused" | "completed" | "cancelled" | "failed" | null;
1221
+ readonly limit?: string | null;
1222
+ readonly cursor?: Cursor | null;
1223
+ };
1224
+ export declare const CampaignsListRunsQuery: Schema.Struct<{
1225
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>, Schema.Null]>>;
1226
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1227
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1228
+ }>;
1229
+ export type CampaignsListRuns200 = CampaignRunPage;
1230
+ export declare const CampaignsListRuns200: Schema.Struct<{
1231
+ readonly items: Schema.$Array<Schema.Struct<{
1232
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1233
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1234
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1235
+ readonly scheduledFor: Schema.String;
1236
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1237
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1238
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1239
+ readonly contentSnapshot: Schema.Struct<{
1240
+ readonly channel: Schema.Literal<"email">;
1241
+ readonly email: Schema.Struct<{
1242
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1243
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1244
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1245
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1246
+ readonly filename: Schema.String;
1247
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1248
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1249
+ readonly contentType: Schema.String;
1250
+ readonly size: Schema.Finite;
1251
+ }>>, Schema.Null]>>;
1252
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1253
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1254
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1255
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1256
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1257
+ readonly locale: Schema.optionalKey<Schema.String>;
1258
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1259
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1260
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1261
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1262
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1263
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1264
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1265
+ }>>;
1266
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1267
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1268
+ }>>;
1269
+ }>;
1270
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1271
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1272
+ }>;
1273
+ readonly audienceSnapshot: Schema.Struct<{
1274
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1275
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1276
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1277
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1278
+ }>;
1279
+ readonly policySnapshot: Schema.Struct<{
1280
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1281
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1282
+ }>;
1283
+ readonly totalRecipients: Schema.Finite;
1284
+ readonly dispatchedCount: Schema.Finite;
1285
+ readonly failedCount: Schema.Finite;
1286
+ readonly skippedCount: Schema.Finite;
1287
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1288
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1289
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1290
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1291
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1292
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1293
+ readonly actorEmail: Schema.String;
1294
+ readonly memberRole: Schema.String;
1295
+ readonly createdAt: Schema.String;
1296
+ readonly updatedAt: Schema.String;
1297
+ }>>;
1298
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
1299
+ }>;
1300
+ export type CampaignsListRuns401 = UnauthorizedError;
1301
+ export declare const CampaignsListRuns401: typeof UnauthorizedError;
1302
+ export type CampaignsListRuns403 = ForbiddenError;
1303
+ export declare const CampaignsListRuns403: typeof ForbiddenError;
1304
+ export type CampaignsListRuns404 = ResourceNotFoundError;
1305
+ export declare const CampaignsListRuns404: typeof ResourceNotFoundError;
1306
+ export type CampaignsListRuns422 = ValidationError;
1307
+ export declare const CampaignsListRuns422: typeof ValidationError;
1308
+ export type CampaignsListRuns500 = InternalError;
1309
+ export declare const CampaignsListRuns500: typeof InternalError;
1310
+ export type CampaignsListRuns504 = GatewayTimeoutError;
1311
+ export declare const CampaignsListRuns504: typeof GatewayTimeoutError;
1312
+ export type CampaignsScheduleRunPathParams = {
1313
+ readonly id: CampaignId;
1314
+ };
1315
+ export declare const CampaignsScheduleRunPathParams: Schema.Struct<{
1316
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1317
+ }>;
1318
+ export type CampaignsScheduleRunRequestJson = {
1319
+ readonly scheduledFor?: __SamvaRuntimeAbsoluteInstant | null;
1320
+ readonly idempotencyKey?: string | null;
1321
+ };
1322
+ export declare const CampaignsScheduleRunRequestJson: Schema.Struct<{
1323
+ readonly scheduledFor: Schema.optionalKey<Schema.Union<readonly [Schema.decodeTo<Schema.Date, Schema.String, never, never>, Schema.Null]>>;
1324
+ readonly idempotencyKey: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1325
+ }>;
1326
+ export type CampaignsScheduleRun201 = CampaignRun;
1327
+ export declare const CampaignsScheduleRun201: Schema.Struct<{
1328
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1329
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1330
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1331
+ readonly scheduledFor: Schema.String;
1332
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1333
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1334
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1335
+ readonly contentSnapshot: Schema.Struct<{
1336
+ readonly channel: Schema.Literal<"email">;
1337
+ readonly email: Schema.Struct<{
1338
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1339
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1340
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1341
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1342
+ readonly filename: Schema.String;
1343
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1344
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1345
+ readonly contentType: Schema.String;
1346
+ readonly size: Schema.Finite;
1347
+ }>>, Schema.Null]>>;
1348
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1349
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1350
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1351
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1352
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1353
+ readonly locale: Schema.optionalKey<Schema.String>;
1354
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1355
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1356
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1357
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1358
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1359
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1360
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1361
+ }>>;
1362
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1363
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1364
+ }>>;
1365
+ }>;
1366
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1367
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1368
+ }>;
1369
+ readonly audienceSnapshot: Schema.Struct<{
1370
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1371
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1372
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1373
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1374
+ }>;
1375
+ readonly policySnapshot: Schema.Struct<{
1376
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1377
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1378
+ }>;
1379
+ readonly totalRecipients: Schema.Finite;
1380
+ readonly dispatchedCount: Schema.Finite;
1381
+ readonly failedCount: Schema.Finite;
1382
+ readonly skippedCount: Schema.Finite;
1383
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1384
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1385
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1386
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1387
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1388
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1389
+ readonly actorEmail: Schema.String;
1390
+ readonly memberRole: Schema.String;
1391
+ readonly createdAt: Schema.String;
1392
+ readonly updatedAt: Schema.String;
1393
+ }>;
1394
+ export type CampaignsScheduleRun401 = UnauthorizedError;
1395
+ export declare const CampaignsScheduleRun401: typeof UnauthorizedError;
1396
+ export type CampaignsScheduleRun403 = FlagDisabledError | ForbiddenError;
1397
+ export declare const CampaignsScheduleRun403: Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]>;
1398
+ export type CampaignsScheduleRun404 = ResourceNotFoundError;
1399
+ export declare const CampaignsScheduleRun404: typeof ResourceNotFoundError;
1400
+ export type CampaignsScheduleRun409 = ConflictError;
1401
+ export declare const CampaignsScheduleRun409: typeof ConflictError;
1402
+ export type CampaignsScheduleRun422 = ValidationError | BrandAddressRequiredError | CampaignFooterRequiredError;
1403
+ export declare const CampaignsScheduleRun422: Schema.Union<readonly [typeof ValidationError, typeof BrandAddressRequiredError, typeof CampaignFooterRequiredError]>;
1404
+ export type CampaignsScheduleRun500 = InternalError;
1405
+ export declare const CampaignsScheduleRun500: typeof InternalError;
1406
+ export type CampaignsScheduleRun502 = ExternalServiceError;
1407
+ export declare const CampaignsScheduleRun502: typeof ExternalServiceError;
1408
+ export type CampaignsScheduleRun503 = SenderNotReadyError;
1409
+ export declare const CampaignsScheduleRun503: typeof SenderNotReadyError;
1410
+ export type CampaignsScheduleRun504 = GatewayTimeoutError;
1411
+ export declare const CampaignsScheduleRun504: typeof GatewayTimeoutError;
1412
+ export type CampaignsGetRunPathParams = {
1413
+ readonly id: CampaignId;
1414
+ readonly runId: CampaignRunId;
1415
+ };
1416
+ export declare const CampaignsGetRunPathParams: Schema.Struct<{
1417
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1418
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1419
+ }>;
1420
+ export type CampaignsGetRun200 = CampaignRun;
1421
+ export declare const CampaignsGetRun200: Schema.Struct<{
1422
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1423
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1424
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1425
+ readonly scheduledFor: Schema.String;
1426
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1427
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1428
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1429
+ readonly contentSnapshot: Schema.Struct<{
1430
+ readonly channel: Schema.Literal<"email">;
1431
+ readonly email: Schema.Struct<{
1432
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1433
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1434
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1435
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1436
+ readonly filename: Schema.String;
1437
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1438
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1439
+ readonly contentType: Schema.String;
1440
+ readonly size: Schema.Finite;
1441
+ }>>, Schema.Null]>>;
1442
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1443
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1444
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1445
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1446
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1447
+ readonly locale: Schema.optionalKey<Schema.String>;
1448
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1449
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1450
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1451
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1452
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1453
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1454
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1455
+ }>>;
1456
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1457
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1458
+ }>>;
1459
+ }>;
1460
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1461
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1462
+ }>;
1463
+ readonly audienceSnapshot: Schema.Struct<{
1464
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1465
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1466
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1467
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1468
+ }>;
1469
+ readonly policySnapshot: Schema.Struct<{
1470
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1471
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1472
+ }>;
1473
+ readonly totalRecipients: Schema.Finite;
1474
+ readonly dispatchedCount: Schema.Finite;
1475
+ readonly failedCount: Schema.Finite;
1476
+ readonly skippedCount: Schema.Finite;
1477
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1478
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1479
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1480
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1481
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1482
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1483
+ readonly actorEmail: Schema.String;
1484
+ readonly memberRole: Schema.String;
1485
+ readonly createdAt: Schema.String;
1486
+ readonly updatedAt: Schema.String;
1487
+ }>;
1488
+ export type CampaignsGetRun401 = UnauthorizedError;
1489
+ export declare const CampaignsGetRun401: typeof UnauthorizedError;
1490
+ export type CampaignsGetRun403 = ForbiddenError;
1491
+ export declare const CampaignsGetRun403: typeof ForbiddenError;
1492
+ export type CampaignsGetRun404 = ResourceNotFoundError;
1493
+ export declare const CampaignsGetRun404: typeof ResourceNotFoundError;
1494
+ export type CampaignsGetRun422 = ValidationError;
1495
+ export declare const CampaignsGetRun422: typeof ValidationError;
1496
+ export type CampaignsGetRun500 = InternalError;
1497
+ export declare const CampaignsGetRun500: typeof InternalError;
1498
+ export type CampaignsGetRun504 = GatewayTimeoutError;
1499
+ export declare const CampaignsGetRun504: typeof GatewayTimeoutError;
1500
+ export type CampaignsCancelRunPathParams = {
1501
+ readonly id: CampaignId;
1502
+ readonly runId: CampaignRunId;
1503
+ };
1504
+ export declare const CampaignsCancelRunPathParams: Schema.Struct<{
1505
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1506
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1507
+ }>;
1508
+ export type CampaignsCancelRun200 = CampaignRunAction;
1509
+ export declare const CampaignsCancelRun200: Schema.Struct<{
1510
+ readonly success: Schema.Boolean;
1511
+ readonly item: Schema.Struct<{
1512
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1513
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1514
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1515
+ readonly scheduledFor: Schema.String;
1516
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1517
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1518
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1519
+ readonly contentSnapshot: Schema.Struct<{
1520
+ readonly channel: Schema.Literal<"email">;
1521
+ readonly email: Schema.Struct<{
1522
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1523
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1524
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1525
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1526
+ readonly filename: Schema.String;
1527
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1528
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1529
+ readonly contentType: Schema.String;
1530
+ readonly size: Schema.Finite;
1531
+ }>>, Schema.Null]>>;
1532
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1533
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1534
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1535
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1536
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1537
+ readonly locale: Schema.optionalKey<Schema.String>;
1538
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1539
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1540
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1541
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1542
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1543
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1544
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1545
+ }>>;
1546
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1547
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1548
+ }>>;
1549
+ }>;
1550
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1551
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1552
+ }>;
1553
+ readonly audienceSnapshot: Schema.Struct<{
1554
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1555
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1556
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1557
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1558
+ }>;
1559
+ readonly policySnapshot: Schema.Struct<{
1560
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1561
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1562
+ }>;
1563
+ readonly totalRecipients: Schema.Finite;
1564
+ readonly dispatchedCount: Schema.Finite;
1565
+ readonly failedCount: Schema.Finite;
1566
+ readonly skippedCount: Schema.Finite;
1567
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1568
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1569
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1570
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1571
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1572
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1573
+ readonly actorEmail: Schema.String;
1574
+ readonly memberRole: Schema.String;
1575
+ readonly createdAt: Schema.String;
1576
+ readonly updatedAt: Schema.String;
1577
+ }>;
1578
+ }>;
1579
+ export type CampaignsCancelRun401 = UnauthorizedError;
1580
+ export declare const CampaignsCancelRun401: typeof UnauthorizedError;
1581
+ export type CampaignsCancelRun403 = ForbiddenError;
1582
+ export declare const CampaignsCancelRun403: typeof ForbiddenError;
1583
+ export type CampaignsCancelRun404 = ResourceNotFoundError;
1584
+ export declare const CampaignsCancelRun404: typeof ResourceNotFoundError;
1585
+ export type CampaignsCancelRun409 = ConflictError;
1586
+ export declare const CampaignsCancelRun409: typeof ConflictError;
1587
+ export type CampaignsCancelRun422 = ValidationError;
1588
+ export declare const CampaignsCancelRun422: typeof ValidationError;
1589
+ export type CampaignsCancelRun500 = InternalError;
1590
+ export declare const CampaignsCancelRun500: typeof InternalError;
1591
+ export type CampaignsCancelRun502 = ExternalServiceError;
1592
+ export declare const CampaignsCancelRun502: typeof ExternalServiceError;
1593
+ export type CampaignsCancelRun504 = GatewayTimeoutError;
1594
+ export declare const CampaignsCancelRun504: typeof GatewayTimeoutError;
1595
+ export type CampaignsPauseRunPathParams = {
1596
+ readonly id: CampaignId;
1597
+ readonly runId: CampaignRunId;
1598
+ };
1599
+ export declare const CampaignsPauseRunPathParams: Schema.Struct<{
1600
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1601
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1602
+ }>;
1603
+ export type CampaignsPauseRun200 = CampaignRunAction;
1604
+ export declare const CampaignsPauseRun200: Schema.Struct<{
1605
+ readonly success: Schema.Boolean;
1606
+ readonly item: Schema.Struct<{
1607
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1608
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1609
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1610
+ readonly scheduledFor: Schema.String;
1611
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1612
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1613
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1614
+ readonly contentSnapshot: Schema.Struct<{
1615
+ readonly channel: Schema.Literal<"email">;
1616
+ readonly email: Schema.Struct<{
1617
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1618
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1619
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1620
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1621
+ readonly filename: Schema.String;
1622
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1623
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1624
+ readonly contentType: Schema.String;
1625
+ readonly size: Schema.Finite;
1626
+ }>>, Schema.Null]>>;
1627
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1628
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1629
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1630
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1631
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1632
+ readonly locale: Schema.optionalKey<Schema.String>;
1633
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1634
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1635
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1636
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1637
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1638
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1639
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1640
+ }>>;
1641
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1642
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1643
+ }>>;
1644
+ }>;
1645
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1646
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1647
+ }>;
1648
+ readonly audienceSnapshot: Schema.Struct<{
1649
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1650
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1651
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1652
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1653
+ }>;
1654
+ readonly policySnapshot: Schema.Struct<{
1655
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1656
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1657
+ }>;
1658
+ readonly totalRecipients: Schema.Finite;
1659
+ readonly dispatchedCount: Schema.Finite;
1660
+ readonly failedCount: Schema.Finite;
1661
+ readonly skippedCount: Schema.Finite;
1662
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1663
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1664
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1665
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1666
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1667
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1668
+ readonly actorEmail: Schema.String;
1669
+ readonly memberRole: Schema.String;
1670
+ readonly createdAt: Schema.String;
1671
+ readonly updatedAt: Schema.String;
1672
+ }>;
1673
+ }>;
1674
+ export type CampaignsPauseRun401 = UnauthorizedError;
1675
+ export declare const CampaignsPauseRun401: typeof UnauthorizedError;
1676
+ export type CampaignsPauseRun403 = ForbiddenError;
1677
+ export declare const CampaignsPauseRun403: typeof ForbiddenError;
1678
+ export type CampaignsPauseRun404 = ResourceNotFoundError;
1679
+ export declare const CampaignsPauseRun404: typeof ResourceNotFoundError;
1680
+ export type CampaignsPauseRun409 = ConflictError;
1681
+ export declare const CampaignsPauseRun409: typeof ConflictError;
1682
+ export type CampaignsPauseRun422 = ValidationError;
1683
+ export declare const CampaignsPauseRun422: typeof ValidationError;
1684
+ export type CampaignsPauseRun500 = InternalError;
1685
+ export declare const CampaignsPauseRun500: typeof InternalError;
1686
+ export type CampaignsPauseRun502 = ExternalServiceError;
1687
+ export declare const CampaignsPauseRun502: typeof ExternalServiceError;
1688
+ export type CampaignsPauseRun504 = GatewayTimeoutError;
1689
+ export declare const CampaignsPauseRun504: typeof GatewayTimeoutError;
1690
+ export type CampaignsListRecipientsPathParams = {
1691
+ readonly id: CampaignId;
1692
+ readonly runId: CampaignRunId;
1693
+ };
1694
+ export declare const CampaignsListRecipientsPathParams: Schema.Struct<{
1695
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1696
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1697
+ }>;
1698
+ export type CampaignsListRecipientsQuery = {
1699
+ readonly status?: "pending" | "dispatching" | "dispatched" | "failed" | "skipped" | null;
1700
+ readonly limit?: string | null;
1701
+ readonly cursor?: Cursor | null;
1702
+ };
1703
+ export declare const CampaignsListRecipientsQuery: Schema.Struct<{
1704
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"dispatching">, Schema.Literal<"dispatched">, Schema.Literal<"failed">, Schema.Literal<"skipped">]>, Schema.Null]>>;
1705
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1706
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1707
+ }>;
1708
+ export type CampaignsListRecipients200 = CampaignRecipientPage;
1709
+ export declare const CampaignsListRecipients200: Schema.Struct<{
1710
+ readonly items: Schema.$Array<Schema.Struct<{
1711
+ readonly id: Schema.brand<Schema.String, "CampaignRecipientId">;
1712
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1713
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
1714
+ readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"dispatching">, Schema.Literal<"dispatched">, Schema.Literal<"failed">, Schema.Literal<"skipped">]>;
1715
+ readonly messageId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1716
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1717
+ readonly skippedReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"unsubscribed">, Schema.Literal<"blocked">, Schema.Literal<"suppressed">, Schema.Literal<"no_identity">, Schema.Literal<"inactive">, Schema.Literal<"run_cancelled">, Schema.Literal<"run_failed">]>, Schema.Null]>;
1718
+ readonly createdAt: Schema.String;
1719
+ readonly updatedAt: Schema.String;
1720
+ }>>;
1721
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
1722
+ }>;
1723
+ export type CampaignsListRecipients401 = UnauthorizedError;
1724
+ export declare const CampaignsListRecipients401: typeof UnauthorizedError;
1725
+ export type CampaignsListRecipients403 = ForbiddenError;
1726
+ export declare const CampaignsListRecipients403: typeof ForbiddenError;
1727
+ export type CampaignsListRecipients404 = ResourceNotFoundError;
1728
+ export declare const CampaignsListRecipients404: typeof ResourceNotFoundError;
1729
+ export type CampaignsListRecipients422 = ValidationError;
1730
+ export declare const CampaignsListRecipients422: typeof ValidationError;
1731
+ export type CampaignsListRecipients500 = InternalError;
1732
+ export declare const CampaignsListRecipients500: typeof InternalError;
1733
+ export type CampaignsListRecipients504 = GatewayTimeoutError;
1734
+ export declare const CampaignsListRecipients504: typeof GatewayTimeoutError;
1735
+ export type CampaignsResumeRunPathParams = {
1736
+ readonly id: CampaignId;
1737
+ readonly runId: CampaignRunId;
1738
+ };
1739
+ export declare const CampaignsResumeRunPathParams: Schema.Struct<{
1740
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1741
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1742
+ }>;
1743
+ export type CampaignsResumeRun200 = CampaignRunAction;
1744
+ export declare const CampaignsResumeRun200: Schema.Struct<{
1745
+ readonly success: Schema.Boolean;
1746
+ readonly item: Schema.Struct<{
1747
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1748
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1749
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1750
+ readonly scheduledFor: Schema.String;
1751
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
1752
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1753
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1754
+ readonly contentSnapshot: Schema.Struct<{
1755
+ readonly channel: Schema.Literal<"email">;
1756
+ readonly email: Schema.Struct<{
1757
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1758
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1759
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1760
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1761
+ readonly filename: Schema.String;
1762
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1763
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1764
+ readonly contentType: Schema.String;
1765
+ readonly size: Schema.Finite;
1766
+ }>>, Schema.Null]>>;
1767
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1768
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1769
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1770
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1771
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1772
+ readonly locale: Schema.optionalKey<Schema.String>;
1773
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1774
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1775
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1776
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1777
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1778
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1779
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1780
+ }>>;
1781
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1782
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1783
+ }>>;
1784
+ }>;
1785
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1786
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1787
+ }>;
1788
+ readonly audienceSnapshot: Schema.Struct<{
1789
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1790
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1791
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1792
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1793
+ }>;
1794
+ readonly policySnapshot: Schema.Struct<{
1795
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1796
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1797
+ }>;
1798
+ readonly totalRecipients: Schema.Finite;
1799
+ readonly dispatchedCount: Schema.Finite;
1800
+ readonly failedCount: Schema.Finite;
1801
+ readonly skippedCount: Schema.Finite;
1802
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1803
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1804
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
1805
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
1806
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
1807
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1808
+ readonly actorEmail: Schema.String;
1809
+ readonly memberRole: Schema.String;
1810
+ readonly createdAt: Schema.String;
1811
+ readonly updatedAt: Schema.String;
1812
+ }>;
1813
+ }>;
1814
+ export type CampaignsResumeRun401 = UnauthorizedError;
1815
+ export declare const CampaignsResumeRun401: typeof UnauthorizedError;
1816
+ export type CampaignsResumeRun403 = ForbiddenError;
1817
+ export declare const CampaignsResumeRun403: typeof ForbiddenError;
1818
+ export type CampaignsResumeRun404 = ResourceNotFoundError;
1819
+ export declare const CampaignsResumeRun404: typeof ResourceNotFoundError;
1820
+ export type CampaignsResumeRun409 = ConflictError;
1821
+ export declare const CampaignsResumeRun409: typeof ConflictError;
1822
+ export type CampaignsResumeRun422 = ValidationError;
1823
+ export declare const CampaignsResumeRun422: typeof ValidationError;
1824
+ export type CampaignsResumeRun500 = InternalError;
1825
+ export declare const CampaignsResumeRun500: typeof InternalError;
1826
+ export type CampaignsResumeRun502 = ExternalServiceError;
1827
+ export declare const CampaignsResumeRun502: typeof ExternalServiceError;
1828
+ export type CampaignsResumeRun504 = GatewayTimeoutError;
1829
+ export declare const CampaignsResumeRun504: typeof GatewayTimeoutError;
1830
+ declare const CampaignsGroup_base: HttpApiGroup.HttpApiGroup<"Campaigns", HttpApiEndpoint.HttpApiEndpoint<"campaignsArchive", "POST", "/v1/campaigns/:id/archive", Schema.toCodecStringTree<Schema.Struct<{
1831
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1832
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
1833
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
1834
+ readonly name: Schema.String;
1835
+ readonly channel: Schema.Literal<"email">;
1836
+ readonly content: Schema.Struct<{
1837
+ readonly channel: Schema.Literal<"email">;
1838
+ readonly email: Schema.Struct<{
1839
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1840
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1841
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1842
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
1843
+ readonly filename: Schema.String;
1844
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1845
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
1846
+ readonly contentType: Schema.String;
1847
+ readonly size: Schema.Finite;
1848
+ }>>, Schema.Null]>>;
1849
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
1850
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
1851
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
1852
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1853
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1854
+ readonly locale: Schema.optionalKey<Schema.String>;
1855
+ readonly timeZone: Schema.optionalKey<Schema.String>;
1856
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
1857
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1858
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1859
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
1860
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
1861
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
1862
+ }>>;
1863
+ readonly footer: Schema.optionalKey<Schema.Struct<{
1864
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1865
+ }>>;
1866
+ }>;
1867
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
1868
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
1869
+ }>;
1870
+ readonly audience: Schema.Struct<{
1871
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1872
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
1873
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
1874
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
1875
+ }>;
1876
+ readonly policy: Schema.Struct<{
1877
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
1878
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1879
+ }>;
1880
+ readonly definition: Schema.Struct<{
1881
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
1882
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1883
+ }>;
1884
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
1885
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
1886
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
1887
+ readonly scheduledFor: Schema.String;
1888
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1889
+ readonly totalRecipients: Schema.Finite;
1890
+ readonly dispatchedCount: Schema.Finite;
1891
+ readonly failedCount: Schema.Finite;
1892
+ readonly skippedCount: Schema.Finite;
1893
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
1894
+ }>, Schema.Null]>;
1895
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
1896
+ readonly actorEmail: Schema.String;
1897
+ readonly memberRole: Schema.String;
1898
+ readonly createdAt: Schema.String;
1899
+ readonly updatedAt: Schema.String;
1900
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ConflictError, {
1901
+ readonly _tag: "ConflictError";
1902
+ readonly message: string;
1903
+ readonly resource: string;
1904
+ readonly id?: string | null;
1905
+ }, readonly [Schema.Struct<{
1906
+ readonly _tag: Schema.tag<"ConflictError">;
1907
+ readonly message: Schema.String;
1908
+ readonly resource: Schema.String;
1909
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1910
+ }>], {
1911
+ readonly _tag: "ConflictError";
1912
+ readonly message: string;
1913
+ readonly resource: string;
1914
+ readonly id?: string | null;
1915
+ }>, Schema.Struct<{
1916
+ readonly _tag: Schema.tag<"ConflictError">;
1917
+ readonly message: Schema.String;
1918
+ readonly resource: Schema.String;
1919
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1920
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
1921
+ readonly _tag: "ForbiddenError";
1922
+ readonly message: string;
1923
+ }, readonly [Schema.Struct<{
1924
+ readonly _tag: Schema.tag<"ForbiddenError">;
1925
+ readonly message: Schema.String;
1926
+ }>], {
1927
+ readonly _tag: "ForbiddenError";
1928
+ readonly message: string;
1929
+ }>, Schema.Struct<{
1930
+ readonly _tag: Schema.tag<"ForbiddenError">;
1931
+ readonly message: Schema.String;
1932
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
1933
+ readonly _tag: "GatewayTimeoutError";
1934
+ readonly message: string;
1935
+ readonly retryAfterSeconds: number;
1936
+ }, readonly [Schema.Struct<{
1937
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
1938
+ readonly message: Schema.String;
1939
+ readonly retryAfterSeconds: Schema.Finite;
1940
+ }>], {
1941
+ readonly _tag: "GatewayTimeoutError";
1942
+ readonly message: string;
1943
+ readonly retryAfterSeconds: number;
1944
+ }>, Schema.Struct<{
1945
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
1946
+ readonly message: Schema.String;
1947
+ readonly retryAfterSeconds: Schema.Finite;
1948
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
1949
+ readonly _tag: "ResourceNotFoundError";
1950
+ readonly resource: string;
1951
+ readonly id: string;
1952
+ readonly message: string;
1953
+ }, readonly [Schema.Struct<{
1954
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
1955
+ readonly resource: Schema.String;
1956
+ readonly id: Schema.String;
1957
+ readonly message: Schema.String;
1958
+ }>], {
1959
+ readonly _tag: "ResourceNotFoundError";
1960
+ readonly resource: string;
1961
+ readonly id: string;
1962
+ readonly message: string;
1963
+ }>, Schema.Struct<{
1964
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
1965
+ readonly resource: Schema.String;
1966
+ readonly id: Schema.String;
1967
+ readonly message: Schema.String;
1968
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
1969
+ readonly _tag: "UnauthorizedError";
1970
+ readonly message: string;
1971
+ }, readonly [Schema.Struct<{
1972
+ readonly _tag: Schema.tag<"UnauthorizedError">;
1973
+ readonly message: Schema.String;
1974
+ }>], {
1975
+ readonly _tag: "UnauthorizedError";
1976
+ readonly message: string;
1977
+ }>, Schema.Struct<{
1978
+ readonly _tag: Schema.tag<"UnauthorizedError">;
1979
+ readonly message: Schema.String;
1980
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
1981
+ readonly _tag: "ValidationError";
1982
+ readonly message: string;
1983
+ readonly fields?: {
1984
+ readonly [x: string]: readonly string[];
1985
+ } | null;
1986
+ }, readonly [Schema.Struct<{
1987
+ readonly _tag: Schema.tag<"ValidationError">;
1988
+ readonly message: Schema.String;
1989
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
1990
+ }>], {
1991
+ readonly _tag: "ValidationError";
1992
+ readonly message: string;
1993
+ readonly fields?: {
1994
+ readonly [x: string]: readonly string[];
1995
+ } | null;
1996
+ }>, Schema.Struct<{
1997
+ readonly _tag: Schema.tag<"ValidationError">;
1998
+ readonly message: Schema.String;
1999
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2000
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsCancelRun", "POST", "/v1/campaigns/:id/runs/:runId/cancel", Schema.toCodecStringTree<Schema.Struct<{
2001
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2002
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
2003
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
2004
+ readonly success: Schema.Boolean;
2005
+ readonly item: Schema.Struct<{
2006
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2007
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
2008
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2009
+ readonly scheduledFor: Schema.String;
2010
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
2011
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2012
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2013
+ readonly contentSnapshot: Schema.Struct<{
2014
+ readonly channel: Schema.Literal<"email">;
2015
+ readonly email: Schema.Struct<{
2016
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2017
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2018
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2019
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2020
+ readonly filename: Schema.String;
2021
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2022
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2023
+ readonly contentType: Schema.String;
2024
+ readonly size: Schema.Finite;
2025
+ }>>, Schema.Null]>>;
2026
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2027
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2028
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2029
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2030
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2031
+ readonly locale: Schema.optionalKey<Schema.String>;
2032
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2033
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2034
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2035
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2036
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2037
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2038
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2039
+ }>>;
2040
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2041
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2042
+ }>>;
2043
+ }>;
2044
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2045
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2046
+ }>;
2047
+ readonly audienceSnapshot: Schema.Struct<{
2048
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2049
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2050
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2051
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2052
+ }>;
2053
+ readonly policySnapshot: Schema.Struct<{
2054
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2055
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2056
+ }>;
2057
+ readonly totalRecipients: Schema.Finite;
2058
+ readonly dispatchedCount: Schema.Finite;
2059
+ readonly failedCount: Schema.Finite;
2060
+ readonly skippedCount: Schema.Finite;
2061
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2062
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2063
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2064
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
2065
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
2066
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2067
+ readonly actorEmail: Schema.String;
2068
+ readonly memberRole: Schema.String;
2069
+ readonly createdAt: Schema.String;
2070
+ readonly updatedAt: Schema.String;
2071
+ }>;
2072
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ConflictError, {
2073
+ readonly _tag: "ConflictError";
2074
+ readonly message: string;
2075
+ readonly resource: string;
2076
+ readonly id?: string | null;
2077
+ }, readonly [Schema.Struct<{
2078
+ readonly _tag: Schema.tag<"ConflictError">;
2079
+ readonly message: Schema.String;
2080
+ readonly resource: Schema.String;
2081
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2082
+ }>], {
2083
+ readonly _tag: "ConflictError";
2084
+ readonly message: string;
2085
+ readonly resource: string;
2086
+ readonly id?: string | null;
2087
+ }>, Schema.Struct<{
2088
+ readonly _tag: Schema.tag<"ConflictError">;
2089
+ readonly message: Schema.String;
2090
+ readonly resource: Schema.String;
2091
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2092
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ExternalServiceError, {
2093
+ readonly _tag: "ExternalServiceError";
2094
+ readonly message: string;
2095
+ }, readonly [Schema.Struct<{
2096
+ readonly _tag: Schema.tag<"ExternalServiceError">;
2097
+ readonly message: Schema.String;
2098
+ }>], {
2099
+ readonly _tag: "ExternalServiceError";
2100
+ readonly message: string;
2101
+ }>, Schema.Struct<{
2102
+ readonly _tag: Schema.tag<"ExternalServiceError">;
2103
+ readonly message: Schema.String;
2104
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2105
+ readonly _tag: "ForbiddenError";
2106
+ readonly message: string;
2107
+ }, readonly [Schema.Struct<{
2108
+ readonly _tag: Schema.tag<"ForbiddenError">;
2109
+ readonly message: Schema.String;
2110
+ }>], {
2111
+ readonly _tag: "ForbiddenError";
2112
+ readonly message: string;
2113
+ }>, Schema.Struct<{
2114
+ readonly _tag: Schema.tag<"ForbiddenError">;
2115
+ readonly message: Schema.String;
2116
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2117
+ readonly _tag: "GatewayTimeoutError";
2118
+ readonly message: string;
2119
+ readonly retryAfterSeconds: number;
2120
+ }, readonly [Schema.Struct<{
2121
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2122
+ readonly message: Schema.String;
2123
+ readonly retryAfterSeconds: Schema.Finite;
2124
+ }>], {
2125
+ readonly _tag: "GatewayTimeoutError";
2126
+ readonly message: string;
2127
+ readonly retryAfterSeconds: number;
2128
+ }>, Schema.Struct<{
2129
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2130
+ readonly message: Schema.String;
2131
+ readonly retryAfterSeconds: Schema.Finite;
2132
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
2133
+ readonly _tag: "ResourceNotFoundError";
2134
+ readonly resource: string;
2135
+ readonly id: string;
2136
+ readonly message: string;
2137
+ }, readonly [Schema.Struct<{
2138
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2139
+ readonly resource: Schema.String;
2140
+ readonly id: Schema.String;
2141
+ readonly message: Schema.String;
2142
+ }>], {
2143
+ readonly _tag: "ResourceNotFoundError";
2144
+ readonly resource: string;
2145
+ readonly id: string;
2146
+ readonly message: string;
2147
+ }>, Schema.Struct<{
2148
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2149
+ readonly resource: Schema.String;
2150
+ readonly id: Schema.String;
2151
+ readonly message: Schema.String;
2152
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2153
+ readonly _tag: "UnauthorizedError";
2154
+ readonly message: string;
2155
+ }, readonly [Schema.Struct<{
2156
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2157
+ readonly message: Schema.String;
2158
+ }>], {
2159
+ readonly _tag: "UnauthorizedError";
2160
+ readonly message: string;
2161
+ }>, Schema.Struct<{
2162
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2163
+ readonly message: Schema.String;
2164
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2165
+ readonly _tag: "ValidationError";
2166
+ readonly message: string;
2167
+ readonly fields?: {
2168
+ readonly [x: string]: readonly string[];
2169
+ } | null;
2170
+ }, readonly [Schema.Struct<{
2171
+ readonly _tag: Schema.tag<"ValidationError">;
2172
+ readonly message: Schema.String;
2173
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2174
+ }>], {
2175
+ readonly _tag: "ValidationError";
2176
+ readonly message: string;
2177
+ readonly fields?: {
2178
+ readonly [x: string]: readonly string[];
2179
+ } | null;
2180
+ }>, Schema.Struct<{
2181
+ readonly _tag: Schema.tag<"ValidationError">;
2182
+ readonly message: Schema.String;
2183
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2184
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsCreate", "POST", "/v1/campaigns", never, never, Schema.toCodecJson<Schema.Struct<{
2185
+ readonly name: Schema.String;
2186
+ readonly channel: Schema.Literal<"email">;
2187
+ readonly content: Schema.Struct<{
2188
+ readonly channel: Schema.Literal<"email">;
2189
+ readonly email: Schema.Struct<{
2190
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2191
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2192
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2193
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2194
+ readonly filename: Schema.String;
2195
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2196
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2197
+ readonly contentType: Schema.String;
2198
+ readonly size: Schema.Finite;
2199
+ }>>, Schema.Null]>>;
2200
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2201
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2202
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2203
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2204
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2205
+ readonly locale: Schema.optionalKey<Schema.String>;
2206
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2207
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2208
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2209
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2210
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2211
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2212
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2213
+ }>>;
2214
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2215
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2216
+ }>>;
2217
+ }>;
2218
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2219
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2220
+ }>;
2221
+ readonly audience: Schema.Struct<{
2222
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2223
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2224
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2225
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2226
+ }>;
2227
+ readonly policy: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
2228
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2229
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2230
+ }>, Schema.Null]>>;
2231
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
2232
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2233
+ readonly name: Schema.String;
2234
+ readonly channel: Schema.Literal<"email">;
2235
+ readonly content: Schema.Struct<{
2236
+ readonly channel: Schema.Literal<"email">;
2237
+ readonly email: Schema.Struct<{
2238
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2239
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2240
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2241
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2242
+ readonly filename: Schema.String;
2243
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2244
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2245
+ readonly contentType: Schema.String;
2246
+ readonly size: Schema.Finite;
2247
+ }>>, Schema.Null]>>;
2248
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2249
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2250
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2251
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2252
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2253
+ readonly locale: Schema.optionalKey<Schema.String>;
2254
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2255
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2256
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2257
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2258
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2259
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2260
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2261
+ }>>;
2262
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2263
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2264
+ }>>;
2265
+ }>;
2266
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2267
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2268
+ }>;
2269
+ readonly audience: Schema.Struct<{
2270
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2271
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2272
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2273
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2274
+ }>;
2275
+ readonly policy: Schema.Struct<{
2276
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2277
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2278
+ }>;
2279
+ readonly definition: Schema.Struct<{
2280
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
2281
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2282
+ }>;
2283
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
2284
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2285
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2286
+ readonly scheduledFor: Schema.String;
2287
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2288
+ readonly totalRecipients: Schema.Finite;
2289
+ readonly dispatchedCount: Schema.Finite;
2290
+ readonly failedCount: Schema.Finite;
2291
+ readonly skippedCount: Schema.Finite;
2292
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2293
+ }>, Schema.Null]>;
2294
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2295
+ readonly actorEmail: Schema.String;
2296
+ readonly memberRole: Schema.String;
2297
+ readonly createdAt: Schema.String;
2298
+ readonly updatedAt: Schema.String;
2299
+ }>>, Schema.toCodecJson<Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2300
+ readonly _tag: "GatewayTimeoutError";
2301
+ readonly message: string;
2302
+ readonly retryAfterSeconds: number;
2303
+ }, readonly [Schema.Struct<{
2304
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2305
+ readonly message: Schema.String;
2306
+ readonly retryAfterSeconds: Schema.Finite;
2307
+ }>], {
2308
+ readonly _tag: "GatewayTimeoutError";
2309
+ readonly message: string;
2310
+ readonly retryAfterSeconds: number;
2311
+ }>, Schema.Struct<{
2312
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2313
+ readonly message: Schema.String;
2314
+ readonly retryAfterSeconds: Schema.Finite;
2315
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2316
+ readonly _tag: "UnauthorizedError";
2317
+ readonly message: string;
2318
+ }, readonly [Schema.Struct<{
2319
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2320
+ readonly message: Schema.String;
2321
+ }>], {
2322
+ readonly _tag: "UnauthorizedError";
2323
+ readonly message: string;
2324
+ }>, Schema.Struct<{
2325
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2326
+ readonly message: Schema.String;
2327
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2328
+ readonly _tag: "ValidationError";
2329
+ readonly message: string;
2330
+ readonly fields?: {
2331
+ readonly [x: string]: readonly string[];
2332
+ } | null;
2333
+ }, readonly [Schema.Struct<{
2334
+ readonly _tag: Schema.tag<"ValidationError">;
2335
+ readonly message: Schema.String;
2336
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2337
+ }>], {
2338
+ readonly _tag: "ValidationError";
2339
+ readonly message: string;
2340
+ readonly fields?: {
2341
+ readonly [x: string]: readonly string[];
2342
+ } | null;
2343
+ }>, Schema.Struct<{
2344
+ readonly _tag: Schema.tag<"ValidationError">;
2345
+ readonly message: Schema.String;
2346
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2347
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsGet", "GET", "/v1/campaigns/:id", Schema.toCodecStringTree<Schema.Struct<{
2348
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2349
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
2350
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2351
+ readonly name: Schema.String;
2352
+ readonly channel: Schema.Literal<"email">;
2353
+ readonly content: Schema.Struct<{
2354
+ readonly channel: Schema.Literal<"email">;
2355
+ readonly email: Schema.Struct<{
2356
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2357
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2358
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2359
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2360
+ readonly filename: Schema.String;
2361
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2362
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2363
+ readonly contentType: Schema.String;
2364
+ readonly size: Schema.Finite;
2365
+ }>>, Schema.Null]>>;
2366
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2367
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2368
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2369
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2370
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2371
+ readonly locale: Schema.optionalKey<Schema.String>;
2372
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2373
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2374
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2375
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2376
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2377
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2378
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2379
+ }>>;
2380
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2381
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2382
+ }>>;
2383
+ }>;
2384
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2385
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2386
+ }>;
2387
+ readonly audience: Schema.Struct<{
2388
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2389
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2390
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2391
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2392
+ }>;
2393
+ readonly policy: Schema.Struct<{
2394
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2395
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2396
+ }>;
2397
+ readonly definition: Schema.Struct<{
2398
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
2399
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2400
+ }>;
2401
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
2402
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2403
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2404
+ readonly scheduledFor: Schema.String;
2405
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2406
+ readonly totalRecipients: Schema.Finite;
2407
+ readonly dispatchedCount: Schema.Finite;
2408
+ readonly failedCount: Schema.Finite;
2409
+ readonly skippedCount: Schema.Finite;
2410
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2411
+ }>, Schema.Null]>;
2412
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2413
+ readonly actorEmail: Schema.String;
2414
+ readonly memberRole: Schema.String;
2415
+ readonly createdAt: Schema.String;
2416
+ readonly updatedAt: Schema.String;
2417
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2418
+ readonly _tag: "ForbiddenError";
2419
+ readonly message: string;
2420
+ }, readonly [Schema.Struct<{
2421
+ readonly _tag: Schema.tag<"ForbiddenError">;
2422
+ readonly message: Schema.String;
2423
+ }>], {
2424
+ readonly _tag: "ForbiddenError";
2425
+ readonly message: string;
2426
+ }>, Schema.Struct<{
2427
+ readonly _tag: Schema.tag<"ForbiddenError">;
2428
+ readonly message: Schema.String;
2429
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2430
+ readonly _tag: "GatewayTimeoutError";
2431
+ readonly message: string;
2432
+ readonly retryAfterSeconds: number;
2433
+ }, readonly [Schema.Struct<{
2434
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2435
+ readonly message: Schema.String;
2436
+ readonly retryAfterSeconds: Schema.Finite;
2437
+ }>], {
2438
+ readonly _tag: "GatewayTimeoutError";
2439
+ readonly message: string;
2440
+ readonly retryAfterSeconds: number;
2441
+ }>, Schema.Struct<{
2442
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2443
+ readonly message: Schema.String;
2444
+ readonly retryAfterSeconds: Schema.Finite;
2445
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
2446
+ readonly _tag: "ResourceNotFoundError";
2447
+ readonly resource: string;
2448
+ readonly id: string;
2449
+ readonly message: string;
2450
+ }, readonly [Schema.Struct<{
2451
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2452
+ readonly resource: Schema.String;
2453
+ readonly id: Schema.String;
2454
+ readonly message: Schema.String;
2455
+ }>], {
2456
+ readonly _tag: "ResourceNotFoundError";
2457
+ readonly resource: string;
2458
+ readonly id: string;
2459
+ readonly message: string;
2460
+ }>, Schema.Struct<{
2461
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2462
+ readonly resource: Schema.String;
2463
+ readonly id: Schema.String;
2464
+ readonly message: Schema.String;
2465
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2466
+ readonly _tag: "UnauthorizedError";
2467
+ readonly message: string;
2468
+ }, readonly [Schema.Struct<{
2469
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2470
+ readonly message: Schema.String;
2471
+ }>], {
2472
+ readonly _tag: "UnauthorizedError";
2473
+ readonly message: string;
2474
+ }>, Schema.Struct<{
2475
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2476
+ readonly message: Schema.String;
2477
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2478
+ readonly _tag: "ValidationError";
2479
+ readonly message: string;
2480
+ readonly fields?: {
2481
+ readonly [x: string]: readonly string[];
2482
+ } | null;
2483
+ }, readonly [Schema.Struct<{
2484
+ readonly _tag: Schema.tag<"ValidationError">;
2485
+ readonly message: Schema.String;
2486
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2487
+ }>], {
2488
+ readonly _tag: "ValidationError";
2489
+ readonly message: string;
2490
+ readonly fields?: {
2491
+ readonly [x: string]: readonly string[];
2492
+ } | null;
2493
+ }>, Schema.Struct<{
2494
+ readonly _tag: Schema.tag<"ValidationError">;
2495
+ readonly message: Schema.String;
2496
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2497
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsGetRun", "GET", "/v1/campaigns/:id/runs/:runId", Schema.toCodecStringTree<Schema.Struct<{
2498
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2499
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
2500
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
2501
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2502
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
2503
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2504
+ readonly scheduledFor: Schema.String;
2505
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
2506
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2507
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2508
+ readonly contentSnapshot: Schema.Struct<{
2509
+ readonly channel: Schema.Literal<"email">;
2510
+ readonly email: Schema.Struct<{
2511
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2512
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2513
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2514
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2515
+ readonly filename: Schema.String;
2516
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2517
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2518
+ readonly contentType: Schema.String;
2519
+ readonly size: Schema.Finite;
2520
+ }>>, Schema.Null]>>;
2521
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2522
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2523
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2524
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2525
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2526
+ readonly locale: Schema.optionalKey<Schema.String>;
2527
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2528
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2529
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2530
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2531
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2532
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2533
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2534
+ }>>;
2535
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2536
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2537
+ }>>;
2538
+ }>;
2539
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2540
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2541
+ }>;
2542
+ readonly audienceSnapshot: Schema.Struct<{
2543
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2544
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2545
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2546
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2547
+ }>;
2548
+ readonly policySnapshot: Schema.Struct<{
2549
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2550
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2551
+ }>;
2552
+ readonly totalRecipients: Schema.Finite;
2553
+ readonly dispatchedCount: Schema.Finite;
2554
+ readonly failedCount: Schema.Finite;
2555
+ readonly skippedCount: Schema.Finite;
2556
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2557
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2558
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2559
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
2560
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
2561
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2562
+ readonly actorEmail: Schema.String;
2563
+ readonly memberRole: Schema.String;
2564
+ readonly createdAt: Schema.String;
2565
+ readonly updatedAt: Schema.String;
2566
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2567
+ readonly _tag: "ForbiddenError";
2568
+ readonly message: string;
2569
+ }, readonly [Schema.Struct<{
2570
+ readonly _tag: Schema.tag<"ForbiddenError">;
2571
+ readonly message: Schema.String;
2572
+ }>], {
2573
+ readonly _tag: "ForbiddenError";
2574
+ readonly message: string;
2575
+ }>, Schema.Struct<{
2576
+ readonly _tag: Schema.tag<"ForbiddenError">;
2577
+ readonly message: Schema.String;
2578
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2579
+ readonly _tag: "GatewayTimeoutError";
2580
+ readonly message: string;
2581
+ readonly retryAfterSeconds: number;
2582
+ }, readonly [Schema.Struct<{
2583
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2584
+ readonly message: Schema.String;
2585
+ readonly retryAfterSeconds: Schema.Finite;
2586
+ }>], {
2587
+ readonly _tag: "GatewayTimeoutError";
2588
+ readonly message: string;
2589
+ readonly retryAfterSeconds: number;
2590
+ }>, Schema.Struct<{
2591
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2592
+ readonly message: Schema.String;
2593
+ readonly retryAfterSeconds: Schema.Finite;
2594
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
2595
+ readonly _tag: "ResourceNotFoundError";
2596
+ readonly resource: string;
2597
+ readonly id: string;
2598
+ readonly message: string;
2599
+ }, readonly [Schema.Struct<{
2600
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2601
+ readonly resource: Schema.String;
2602
+ readonly id: Schema.String;
2603
+ readonly message: Schema.String;
2604
+ }>], {
2605
+ readonly _tag: "ResourceNotFoundError";
2606
+ readonly resource: string;
2607
+ readonly id: string;
2608
+ readonly message: string;
2609
+ }>, Schema.Struct<{
2610
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2611
+ readonly resource: Schema.String;
2612
+ readonly id: Schema.String;
2613
+ readonly message: Schema.String;
2614
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2615
+ readonly _tag: "UnauthorizedError";
2616
+ readonly message: string;
2617
+ }, readonly [Schema.Struct<{
2618
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2619
+ readonly message: Schema.String;
2620
+ }>], {
2621
+ readonly _tag: "UnauthorizedError";
2622
+ readonly message: string;
2623
+ }>, Schema.Struct<{
2624
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2625
+ readonly message: Schema.String;
2626
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2627
+ readonly _tag: "ValidationError";
2628
+ readonly message: string;
2629
+ readonly fields?: {
2630
+ readonly [x: string]: readonly string[];
2631
+ } | null;
2632
+ }, readonly [Schema.Struct<{
2633
+ readonly _tag: Schema.tag<"ValidationError">;
2634
+ readonly message: Schema.String;
2635
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2636
+ }>], {
2637
+ readonly _tag: "ValidationError";
2638
+ readonly message: string;
2639
+ readonly fields?: {
2640
+ readonly [x: string]: readonly string[];
2641
+ } | null;
2642
+ }>, Schema.Struct<{
2643
+ readonly _tag: Schema.tag<"ValidationError">;
2644
+ readonly message: Schema.String;
2645
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2646
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsList", "GET", "/v1/campaigns", never, Schema.toCodecStringTree<Schema.Struct<{
2647
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"draft">, Schema.Literal<"archived">]>, Schema.Null]>>;
2648
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2649
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2650
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
2651
+ readonly items: Schema.$Array<Schema.Struct<{
2652
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2653
+ readonly name: Schema.String;
2654
+ readonly channel: Schema.Literal<"email">;
2655
+ readonly content: Schema.Struct<{
2656
+ readonly channel: Schema.Literal<"email">;
2657
+ readonly email: Schema.Struct<{
2658
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2659
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2660
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2661
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2662
+ readonly filename: Schema.String;
2663
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2664
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2665
+ readonly contentType: Schema.String;
2666
+ readonly size: Schema.Finite;
2667
+ }>>, Schema.Null]>>;
2668
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2669
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2670
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2671
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2672
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2673
+ readonly locale: Schema.optionalKey<Schema.String>;
2674
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2675
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2676
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2677
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2678
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2679
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2680
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2681
+ }>>;
2682
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2683
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2684
+ }>>;
2685
+ }>;
2686
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2687
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2688
+ }>;
2689
+ readonly audience: Schema.Struct<{
2690
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2691
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2692
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2693
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2694
+ }>;
2695
+ readonly policy: Schema.Struct<{
2696
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2697
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2698
+ }>;
2699
+ readonly definition: Schema.Struct<{
2700
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
2701
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2702
+ }>;
2703
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
2704
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2705
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2706
+ readonly scheduledFor: Schema.String;
2707
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2708
+ readonly totalRecipients: Schema.Finite;
2709
+ readonly dispatchedCount: Schema.Finite;
2710
+ readonly failedCount: Schema.Finite;
2711
+ readonly skippedCount: Schema.Finite;
2712
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2713
+ }>, Schema.Null]>;
2714
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2715
+ readonly actorEmail: Schema.String;
2716
+ readonly memberRole: Schema.String;
2717
+ readonly createdAt: Schema.String;
2718
+ readonly updatedAt: Schema.String;
2719
+ readonly series: Schema.$Array<Schema.Finite>;
2720
+ }>>;
2721
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
2722
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2723
+ readonly _tag: "ForbiddenError";
2724
+ readonly message: string;
2725
+ }, readonly [Schema.Struct<{
2726
+ readonly _tag: Schema.tag<"ForbiddenError">;
2727
+ readonly message: Schema.String;
2728
+ }>], {
2729
+ readonly _tag: "ForbiddenError";
2730
+ readonly message: string;
2731
+ }>, Schema.Struct<{
2732
+ readonly _tag: Schema.tag<"ForbiddenError">;
2733
+ readonly message: Schema.String;
2734
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2735
+ readonly _tag: "GatewayTimeoutError";
2736
+ readonly message: string;
2737
+ readonly retryAfterSeconds: number;
2738
+ }, readonly [Schema.Struct<{
2739
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2740
+ readonly message: Schema.String;
2741
+ readonly retryAfterSeconds: Schema.Finite;
2742
+ }>], {
2743
+ readonly _tag: "GatewayTimeoutError";
2744
+ readonly message: string;
2745
+ readonly retryAfterSeconds: number;
2746
+ }>, Schema.Struct<{
2747
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2748
+ readonly message: Schema.String;
2749
+ readonly retryAfterSeconds: Schema.Finite;
2750
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2751
+ readonly _tag: "UnauthorizedError";
2752
+ readonly message: string;
2753
+ }, readonly [Schema.Struct<{
2754
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2755
+ readonly message: Schema.String;
2756
+ }>], {
2757
+ readonly _tag: "UnauthorizedError";
2758
+ readonly message: string;
2759
+ }>, Schema.Struct<{
2760
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2761
+ readonly message: Schema.String;
2762
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2763
+ readonly _tag: "ValidationError";
2764
+ readonly message: string;
2765
+ readonly fields?: {
2766
+ readonly [x: string]: readonly string[];
2767
+ } | null;
2768
+ }, readonly [Schema.Struct<{
2769
+ readonly _tag: Schema.tag<"ValidationError">;
2770
+ readonly message: Schema.String;
2771
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2772
+ }>], {
2773
+ readonly _tag: "ValidationError";
2774
+ readonly message: string;
2775
+ readonly fields?: {
2776
+ readonly [x: string]: readonly string[];
2777
+ } | null;
2778
+ }>, Schema.Struct<{
2779
+ readonly _tag: Schema.tag<"ValidationError">;
2780
+ readonly message: Schema.String;
2781
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2782
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsListRecipients", "GET", "/v1/campaigns/:id/runs/:runId/recipients", Schema.toCodecStringTree<Schema.Struct<{
2783
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2784
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
2785
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
2786
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"dispatching">, Schema.Literal<"dispatched">, Schema.Literal<"failed">, Schema.Literal<"skipped">]>, Schema.Null]>>;
2787
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2788
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2789
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
2790
+ readonly items: Schema.$Array<Schema.Struct<{
2791
+ readonly id: Schema.brand<Schema.String, "CampaignRecipientId">;
2792
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
2793
+ readonly contactId: Schema.brand<Schema.String, "ContactId">;
2794
+ readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"dispatching">, Schema.Literal<"dispatched">, Schema.Literal<"failed">, Schema.Literal<"skipped">]>;
2795
+ readonly messageId: Schema.Union<readonly [Schema.String, Schema.Null]>;
2796
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2797
+ readonly skippedReason: Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"unsubscribed">, Schema.Literal<"blocked">, Schema.Literal<"suppressed">, Schema.Literal<"no_identity">, Schema.Literal<"inactive">, Schema.Literal<"run_cancelled">, Schema.Literal<"run_failed">]>, Schema.Null]>;
2798
+ readonly createdAt: Schema.String;
2799
+ readonly updatedAt: Schema.String;
2800
+ }>>;
2801
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
2802
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2803
+ readonly _tag: "ForbiddenError";
2804
+ readonly message: string;
2805
+ }, readonly [Schema.Struct<{
2806
+ readonly _tag: Schema.tag<"ForbiddenError">;
2807
+ readonly message: Schema.String;
2808
+ }>], {
2809
+ readonly _tag: "ForbiddenError";
2810
+ readonly message: string;
2811
+ }>, Schema.Struct<{
2812
+ readonly _tag: Schema.tag<"ForbiddenError">;
2813
+ readonly message: Schema.String;
2814
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2815
+ readonly _tag: "GatewayTimeoutError";
2816
+ readonly message: string;
2817
+ readonly retryAfterSeconds: number;
2818
+ }, readonly [Schema.Struct<{
2819
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2820
+ readonly message: Schema.String;
2821
+ readonly retryAfterSeconds: Schema.Finite;
2822
+ }>], {
2823
+ readonly _tag: "GatewayTimeoutError";
2824
+ readonly message: string;
2825
+ readonly retryAfterSeconds: number;
2826
+ }>, Schema.Struct<{
2827
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2828
+ readonly message: Schema.String;
2829
+ readonly retryAfterSeconds: Schema.Finite;
2830
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
2831
+ readonly _tag: "ResourceNotFoundError";
2832
+ readonly resource: string;
2833
+ readonly id: string;
2834
+ readonly message: string;
2835
+ }, readonly [Schema.Struct<{
2836
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2837
+ readonly resource: Schema.String;
2838
+ readonly id: Schema.String;
2839
+ readonly message: Schema.String;
2840
+ }>], {
2841
+ readonly _tag: "ResourceNotFoundError";
2842
+ readonly resource: string;
2843
+ readonly id: string;
2844
+ readonly message: string;
2845
+ }>, Schema.Struct<{
2846
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2847
+ readonly resource: Schema.String;
2848
+ readonly id: Schema.String;
2849
+ readonly message: Schema.String;
2850
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
2851
+ readonly _tag: "UnauthorizedError";
2852
+ readonly message: string;
2853
+ }, readonly [Schema.Struct<{
2854
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2855
+ readonly message: Schema.String;
2856
+ }>], {
2857
+ readonly _tag: "UnauthorizedError";
2858
+ readonly message: string;
2859
+ }>, Schema.Struct<{
2860
+ readonly _tag: Schema.tag<"UnauthorizedError">;
2861
+ readonly message: Schema.String;
2862
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
2863
+ readonly _tag: "ValidationError";
2864
+ readonly message: string;
2865
+ readonly fields?: {
2866
+ readonly [x: string]: readonly string[];
2867
+ } | null;
2868
+ }, readonly [Schema.Struct<{
2869
+ readonly _tag: Schema.tag<"ValidationError">;
2870
+ readonly message: Schema.String;
2871
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2872
+ }>], {
2873
+ readonly _tag: "ValidationError";
2874
+ readonly message: string;
2875
+ readonly fields?: {
2876
+ readonly [x: string]: readonly string[];
2877
+ } | null;
2878
+ }>, Schema.Struct<{
2879
+ readonly _tag: Schema.tag<"ValidationError">;
2880
+ readonly message: Schema.String;
2881
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
2882
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsListRuns", "GET", "/v1/campaigns/:id/runs", Schema.toCodecStringTree<Schema.Struct<{
2883
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
2884
+ }>>, Schema.toCodecStringTree<Schema.Struct<{
2885
+ readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>, Schema.Null]>>;
2886
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2887
+ readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2888
+ }>>, never, never, Schema.toCodecJson<Schema.Struct<{
2889
+ readonly items: Schema.$Array<Schema.Struct<{
2890
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
2891
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
2892
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
2893
+ readonly scheduledFor: Schema.String;
2894
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
2895
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2896
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2897
+ readonly contentSnapshot: Schema.Struct<{
2898
+ readonly channel: Schema.Literal<"email">;
2899
+ readonly email: Schema.Struct<{
2900
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2901
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2902
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2903
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
2904
+ readonly filename: Schema.String;
2905
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2906
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
2907
+ readonly contentType: Schema.String;
2908
+ readonly size: Schema.Finite;
2909
+ }>>, Schema.Null]>>;
2910
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
2911
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
2912
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
2913
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2914
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2915
+ readonly locale: Schema.optionalKey<Schema.String>;
2916
+ readonly timeZone: Schema.optionalKey<Schema.String>;
2917
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
2918
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
2919
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
2920
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
2921
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
2922
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
2923
+ }>>;
2924
+ readonly footer: Schema.optionalKey<Schema.Struct<{
2925
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
2926
+ }>>;
2927
+ }>;
2928
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
2929
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
2930
+ }>;
2931
+ readonly audienceSnapshot: Schema.Struct<{
2932
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2933
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
2934
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
2935
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
2936
+ }>;
2937
+ readonly policySnapshot: Schema.Struct<{
2938
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
2939
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2940
+ }>;
2941
+ readonly totalRecipients: Schema.Finite;
2942
+ readonly dispatchedCount: Schema.Finite;
2943
+ readonly failedCount: Schema.Finite;
2944
+ readonly skippedCount: Schema.Finite;
2945
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
2946
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2947
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
2948
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
2949
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
2950
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
2951
+ readonly actorEmail: Schema.String;
2952
+ readonly memberRole: Schema.String;
2953
+ readonly createdAt: Schema.String;
2954
+ readonly updatedAt: Schema.String;
2955
+ }>>;
2956
+ readonly nextCursor: Schema.Union<readonly [Schema.String, Schema.Null]>;
2957
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
2958
+ readonly _tag: "ForbiddenError";
2959
+ readonly message: string;
2960
+ }, readonly [Schema.Struct<{
2961
+ readonly _tag: Schema.tag<"ForbiddenError">;
2962
+ readonly message: Schema.String;
2963
+ }>], {
2964
+ readonly _tag: "ForbiddenError";
2965
+ readonly message: string;
2966
+ }>, Schema.Struct<{
2967
+ readonly _tag: Schema.tag<"ForbiddenError">;
2968
+ readonly message: Schema.String;
2969
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
2970
+ readonly _tag: "GatewayTimeoutError";
2971
+ readonly message: string;
2972
+ readonly retryAfterSeconds: number;
2973
+ }, readonly [Schema.Struct<{
2974
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2975
+ readonly message: Schema.String;
2976
+ readonly retryAfterSeconds: Schema.Finite;
2977
+ }>], {
2978
+ readonly _tag: "GatewayTimeoutError";
2979
+ readonly message: string;
2980
+ readonly retryAfterSeconds: number;
2981
+ }>, Schema.Struct<{
2982
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
2983
+ readonly message: Schema.String;
2984
+ readonly retryAfterSeconds: Schema.Finite;
2985
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
2986
+ readonly _tag: "ResourceNotFoundError";
2987
+ readonly resource: string;
2988
+ readonly id: string;
2989
+ readonly message: string;
2990
+ }, readonly [Schema.Struct<{
2991
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
2992
+ readonly resource: Schema.String;
2993
+ readonly id: Schema.String;
2994
+ readonly message: Schema.String;
2995
+ }>], {
2996
+ readonly _tag: "ResourceNotFoundError";
2997
+ readonly resource: string;
2998
+ readonly id: string;
2999
+ readonly message: string;
3000
+ }>, Schema.Struct<{
3001
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3002
+ readonly resource: Schema.String;
3003
+ readonly id: Schema.String;
3004
+ readonly message: Schema.String;
3005
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
3006
+ readonly _tag: "UnauthorizedError";
3007
+ readonly message: string;
3008
+ }, readonly [Schema.Struct<{
3009
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3010
+ readonly message: Schema.String;
3011
+ }>], {
3012
+ readonly _tag: "UnauthorizedError";
3013
+ readonly message: string;
3014
+ }>, Schema.Struct<{
3015
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3016
+ readonly message: Schema.String;
3017
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
3018
+ readonly _tag: "ValidationError";
3019
+ readonly message: string;
3020
+ readonly fields?: {
3021
+ readonly [x: string]: readonly string[];
3022
+ } | null;
3023
+ }, readonly [Schema.Struct<{
3024
+ readonly _tag: Schema.tag<"ValidationError">;
3025
+ readonly message: Schema.String;
3026
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3027
+ }>], {
3028
+ readonly _tag: "ValidationError";
3029
+ readonly message: string;
3030
+ readonly fields?: {
3031
+ readonly [x: string]: readonly string[];
3032
+ } | null;
3033
+ }>, Schema.Struct<{
3034
+ readonly _tag: Schema.tag<"ValidationError">;
3035
+ readonly message: Schema.String;
3036
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3037
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsPauseRun", "POST", "/v1/campaigns/:id/runs/:runId/pause", Schema.toCodecStringTree<Schema.Struct<{
3038
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
3039
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
3040
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
3041
+ readonly success: Schema.Boolean;
3042
+ readonly item: Schema.Struct<{
3043
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
3044
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
3045
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
3046
+ readonly scheduledFor: Schema.String;
3047
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
3048
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3049
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3050
+ readonly contentSnapshot: Schema.Struct<{
3051
+ readonly channel: Schema.Literal<"email">;
3052
+ readonly email: Schema.Struct<{
3053
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3054
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3055
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3056
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
3057
+ readonly filename: Schema.String;
3058
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3059
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
3060
+ readonly contentType: Schema.String;
3061
+ readonly size: Schema.Finite;
3062
+ }>>, Schema.Null]>>;
3063
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
3064
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
3065
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
3066
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3067
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3068
+ readonly locale: Schema.optionalKey<Schema.String>;
3069
+ readonly timeZone: Schema.optionalKey<Schema.String>;
3070
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
3071
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
3072
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
3073
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
3074
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
3075
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
3076
+ }>>;
3077
+ readonly footer: Schema.optionalKey<Schema.Struct<{
3078
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3079
+ }>>;
3080
+ }>;
3081
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
3082
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3083
+ }>;
3084
+ readonly audienceSnapshot: Schema.Struct<{
3085
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3086
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3087
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
3088
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
3089
+ }>;
3090
+ readonly policySnapshot: Schema.Struct<{
3091
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
3092
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3093
+ }>;
3094
+ readonly totalRecipients: Schema.Finite;
3095
+ readonly dispatchedCount: Schema.Finite;
3096
+ readonly failedCount: Schema.Finite;
3097
+ readonly skippedCount: Schema.Finite;
3098
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3099
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3100
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3101
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
3102
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
3103
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
3104
+ readonly actorEmail: Schema.String;
3105
+ readonly memberRole: Schema.String;
3106
+ readonly createdAt: Schema.String;
3107
+ readonly updatedAt: Schema.String;
3108
+ }>;
3109
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ConflictError, {
3110
+ readonly _tag: "ConflictError";
3111
+ readonly message: string;
3112
+ readonly resource: string;
3113
+ readonly id?: string | null;
3114
+ }, readonly [Schema.Struct<{
3115
+ readonly _tag: Schema.tag<"ConflictError">;
3116
+ readonly message: Schema.String;
3117
+ readonly resource: Schema.String;
3118
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3119
+ }>], {
3120
+ readonly _tag: "ConflictError";
3121
+ readonly message: string;
3122
+ readonly resource: string;
3123
+ readonly id?: string | null;
3124
+ }>, Schema.Struct<{
3125
+ readonly _tag: Schema.tag<"ConflictError">;
3126
+ readonly message: Schema.String;
3127
+ readonly resource: Schema.String;
3128
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3129
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ExternalServiceError, {
3130
+ readonly _tag: "ExternalServiceError";
3131
+ readonly message: string;
3132
+ }, readonly [Schema.Struct<{
3133
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3134
+ readonly message: Schema.String;
3135
+ }>], {
3136
+ readonly _tag: "ExternalServiceError";
3137
+ readonly message: string;
3138
+ }>, Schema.Struct<{
3139
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3140
+ readonly message: Schema.String;
3141
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
3142
+ readonly _tag: "ForbiddenError";
3143
+ readonly message: string;
3144
+ }, readonly [Schema.Struct<{
3145
+ readonly _tag: Schema.tag<"ForbiddenError">;
3146
+ readonly message: Schema.String;
3147
+ }>], {
3148
+ readonly _tag: "ForbiddenError";
3149
+ readonly message: string;
3150
+ }>, Schema.Struct<{
3151
+ readonly _tag: Schema.tag<"ForbiddenError">;
3152
+ readonly message: Schema.String;
3153
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
3154
+ readonly _tag: "GatewayTimeoutError";
3155
+ readonly message: string;
3156
+ readonly retryAfterSeconds: number;
3157
+ }, readonly [Schema.Struct<{
3158
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3159
+ readonly message: Schema.String;
3160
+ readonly retryAfterSeconds: Schema.Finite;
3161
+ }>], {
3162
+ readonly _tag: "GatewayTimeoutError";
3163
+ readonly message: string;
3164
+ readonly retryAfterSeconds: number;
3165
+ }>, Schema.Struct<{
3166
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3167
+ readonly message: Schema.String;
3168
+ readonly retryAfterSeconds: Schema.Finite;
3169
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
3170
+ readonly _tag: "ResourceNotFoundError";
3171
+ readonly resource: string;
3172
+ readonly id: string;
3173
+ readonly message: string;
3174
+ }, readonly [Schema.Struct<{
3175
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3176
+ readonly resource: Schema.String;
3177
+ readonly id: Schema.String;
3178
+ readonly message: Schema.String;
3179
+ }>], {
3180
+ readonly _tag: "ResourceNotFoundError";
3181
+ readonly resource: string;
3182
+ readonly id: string;
3183
+ readonly message: string;
3184
+ }>, Schema.Struct<{
3185
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3186
+ readonly resource: Schema.String;
3187
+ readonly id: Schema.String;
3188
+ readonly message: Schema.String;
3189
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
3190
+ readonly _tag: "UnauthorizedError";
3191
+ readonly message: string;
3192
+ }, readonly [Schema.Struct<{
3193
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3194
+ readonly message: Schema.String;
3195
+ }>], {
3196
+ readonly _tag: "UnauthorizedError";
3197
+ readonly message: string;
3198
+ }>, Schema.Struct<{
3199
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3200
+ readonly message: Schema.String;
3201
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
3202
+ readonly _tag: "ValidationError";
3203
+ readonly message: string;
3204
+ readonly fields?: {
3205
+ readonly [x: string]: readonly string[];
3206
+ } | null;
3207
+ }, readonly [Schema.Struct<{
3208
+ readonly _tag: Schema.tag<"ValidationError">;
3209
+ readonly message: Schema.String;
3210
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3211
+ }>], {
3212
+ readonly _tag: "ValidationError";
3213
+ readonly message: string;
3214
+ readonly fields?: {
3215
+ readonly [x: string]: readonly string[];
3216
+ } | null;
3217
+ }>, Schema.Struct<{
3218
+ readonly _tag: Schema.tag<"ValidationError">;
3219
+ readonly message: Schema.String;
3220
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3221
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsResumeRun", "POST", "/v1/campaigns/:id/runs/:runId/resume", Schema.toCodecStringTree<Schema.Struct<{
3222
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
3223
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
3224
+ }>>, never, never, never, Schema.toCodecJson<Schema.Struct<{
3225
+ readonly success: Schema.Boolean;
3226
+ readonly item: Schema.Struct<{
3227
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
3228
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
3229
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
3230
+ readonly scheduledFor: Schema.String;
3231
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
3232
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3233
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3234
+ readonly contentSnapshot: Schema.Struct<{
3235
+ readonly channel: Schema.Literal<"email">;
3236
+ readonly email: Schema.Struct<{
3237
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3238
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3239
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3240
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
3241
+ readonly filename: Schema.String;
3242
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3243
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
3244
+ readonly contentType: Schema.String;
3245
+ readonly size: Schema.Finite;
3246
+ }>>, Schema.Null]>>;
3247
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
3248
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
3249
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
3250
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3251
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3252
+ readonly locale: Schema.optionalKey<Schema.String>;
3253
+ readonly timeZone: Schema.optionalKey<Schema.String>;
3254
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
3255
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
3256
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
3257
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
3258
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
3259
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
3260
+ }>>;
3261
+ readonly footer: Schema.optionalKey<Schema.Struct<{
3262
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3263
+ }>>;
3264
+ }>;
3265
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
3266
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3267
+ }>;
3268
+ readonly audienceSnapshot: Schema.Struct<{
3269
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3270
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3271
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
3272
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
3273
+ }>;
3274
+ readonly policySnapshot: Schema.Struct<{
3275
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
3276
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3277
+ }>;
3278
+ readonly totalRecipients: Schema.Finite;
3279
+ readonly dispatchedCount: Schema.Finite;
3280
+ readonly failedCount: Schema.Finite;
3281
+ readonly skippedCount: Schema.Finite;
3282
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3283
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3284
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3285
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
3286
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
3287
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
3288
+ readonly actorEmail: Schema.String;
3289
+ readonly memberRole: Schema.String;
3290
+ readonly createdAt: Schema.String;
3291
+ readonly updatedAt: Schema.String;
3292
+ }>;
3293
+ }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ConflictError, {
3294
+ readonly _tag: "ConflictError";
3295
+ readonly message: string;
3296
+ readonly resource: string;
3297
+ readonly id?: string | null;
3298
+ }, readonly [Schema.Struct<{
3299
+ readonly _tag: Schema.tag<"ConflictError">;
3300
+ readonly message: Schema.String;
3301
+ readonly resource: Schema.String;
3302
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3303
+ }>], {
3304
+ readonly _tag: "ConflictError";
3305
+ readonly message: string;
3306
+ readonly resource: string;
3307
+ readonly id?: string | null;
3308
+ }>, Schema.Struct<{
3309
+ readonly _tag: Schema.tag<"ConflictError">;
3310
+ readonly message: Schema.String;
3311
+ readonly resource: Schema.String;
3312
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3313
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ExternalServiceError, {
3314
+ readonly _tag: "ExternalServiceError";
3315
+ readonly message: string;
3316
+ }, readonly [Schema.Struct<{
3317
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3318
+ readonly message: Schema.String;
3319
+ }>], {
3320
+ readonly _tag: "ExternalServiceError";
3321
+ readonly message: string;
3322
+ }>, Schema.Struct<{
3323
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3324
+ readonly message: Schema.String;
3325
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
3326
+ readonly _tag: "ForbiddenError";
3327
+ readonly message: string;
3328
+ }, readonly [Schema.Struct<{
3329
+ readonly _tag: Schema.tag<"ForbiddenError">;
3330
+ readonly message: Schema.String;
3331
+ }>], {
3332
+ readonly _tag: "ForbiddenError";
3333
+ readonly message: string;
3334
+ }>, Schema.Struct<{
3335
+ readonly _tag: Schema.tag<"ForbiddenError">;
3336
+ readonly message: Schema.String;
3337
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
3338
+ readonly _tag: "GatewayTimeoutError";
3339
+ readonly message: string;
3340
+ readonly retryAfterSeconds: number;
3341
+ }, readonly [Schema.Struct<{
3342
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3343
+ readonly message: Schema.String;
3344
+ readonly retryAfterSeconds: Schema.Finite;
3345
+ }>], {
3346
+ readonly _tag: "GatewayTimeoutError";
3347
+ readonly message: string;
3348
+ readonly retryAfterSeconds: number;
3349
+ }>, Schema.Struct<{
3350
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3351
+ readonly message: Schema.String;
3352
+ readonly retryAfterSeconds: Schema.Finite;
3353
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
3354
+ readonly _tag: "ResourceNotFoundError";
3355
+ readonly resource: string;
3356
+ readonly id: string;
3357
+ readonly message: string;
3358
+ }, readonly [Schema.Struct<{
3359
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3360
+ readonly resource: Schema.String;
3361
+ readonly id: Schema.String;
3362
+ readonly message: Schema.String;
3363
+ }>], {
3364
+ readonly _tag: "ResourceNotFoundError";
3365
+ readonly resource: string;
3366
+ readonly id: string;
3367
+ readonly message: string;
3368
+ }>, Schema.Struct<{
3369
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3370
+ readonly resource: Schema.String;
3371
+ readonly id: Schema.String;
3372
+ readonly message: Schema.String;
3373
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
3374
+ readonly _tag: "UnauthorizedError";
3375
+ readonly message: string;
3376
+ }, readonly [Schema.Struct<{
3377
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3378
+ readonly message: Schema.String;
3379
+ }>], {
3380
+ readonly _tag: "UnauthorizedError";
3381
+ readonly message: string;
3382
+ }>, Schema.Struct<{
3383
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3384
+ readonly message: Schema.String;
3385
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
3386
+ readonly _tag: "ValidationError";
3387
+ readonly message: string;
3388
+ readonly fields?: {
3389
+ readonly [x: string]: readonly string[];
3390
+ } | null;
3391
+ }, readonly [Schema.Struct<{
3392
+ readonly _tag: Schema.tag<"ValidationError">;
3393
+ readonly message: Schema.String;
3394
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3395
+ }>], {
3396
+ readonly _tag: "ValidationError";
3397
+ readonly message: string;
3398
+ readonly fields?: {
3399
+ readonly [x: string]: readonly string[];
3400
+ } | null;
3401
+ }>, Schema.Struct<{
3402
+ readonly _tag: Schema.tag<"ValidationError">;
3403
+ readonly message: Schema.String;
3404
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3405
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsScheduleRun", "POST", "/v1/campaigns/:id/runs", Schema.toCodecStringTree<Schema.Struct<{
3406
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
3407
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
3408
+ readonly scheduledFor: Schema.optionalKey<Schema.Union<readonly [Schema.decodeTo<Schema.Date, Schema.String, never, never>, Schema.Null]>>;
3409
+ readonly idempotencyKey: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3410
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
3411
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
3412
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
3413
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
3414
+ readonly scheduledFor: Schema.String;
3415
+ readonly idempotencyKey: Schema.Union<readonly [Schema.String, Schema.Null]>;
3416
+ readonly startedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3417
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3418
+ readonly contentSnapshot: Schema.Struct<{
3419
+ readonly channel: Schema.Literal<"email">;
3420
+ readonly email: Schema.Struct<{
3421
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3422
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3423
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3424
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
3425
+ readonly filename: Schema.String;
3426
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3427
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
3428
+ readonly contentType: Schema.String;
3429
+ readonly size: Schema.Finite;
3430
+ }>>, Schema.Null]>>;
3431
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
3432
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
3433
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
3434
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3435
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3436
+ readonly locale: Schema.optionalKey<Schema.String>;
3437
+ readonly timeZone: Schema.optionalKey<Schema.String>;
3438
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
3439
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
3440
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
3441
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
3442
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
3443
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
3444
+ }>>;
3445
+ readonly footer: Schema.optionalKey<Schema.Struct<{
3446
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3447
+ }>>;
3448
+ }>;
3449
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
3450
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3451
+ }>;
3452
+ readonly audienceSnapshot: Schema.Struct<{
3453
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3454
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3455
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
3456
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
3457
+ }>;
3458
+ readonly policySnapshot: Schema.Struct<{
3459
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
3460
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3461
+ }>;
3462
+ readonly totalRecipients: Schema.Finite;
3463
+ readonly dispatchedCount: Schema.Finite;
3464
+ readonly failedCount: Schema.Finite;
3465
+ readonly skippedCount: Schema.Finite;
3466
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3467
+ readonly failureReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3468
+ readonly holdReason: Schema.Union<readonly [Schema.String, Schema.Null]>;
3469
+ readonly holdDomainId: Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>;
3470
+ readonly lastContactId: Schema.Union<readonly [Schema.String, Schema.Null]>;
3471
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
3472
+ readonly actorEmail: Schema.String;
3473
+ readonly memberRole: Schema.String;
3474
+ readonly createdAt: Schema.String;
3475
+ readonly updatedAt: Schema.String;
3476
+ }>>, Schema.toCodecJson<Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]> | Schema.Union<readonly [typeof ValidationError, typeof BrandAddressRequiredError, typeof CampaignFooterRequiredError]> | Schema.decodeTo<Schema.declareConstructor<ConflictError, {
3477
+ readonly _tag: "ConflictError";
3478
+ readonly message: string;
3479
+ readonly resource: string;
3480
+ readonly id?: string | null;
3481
+ }, readonly [Schema.Struct<{
3482
+ readonly _tag: Schema.tag<"ConflictError">;
3483
+ readonly message: Schema.String;
3484
+ readonly resource: Schema.String;
3485
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3486
+ }>], {
3487
+ readonly _tag: "ConflictError";
3488
+ readonly message: string;
3489
+ readonly resource: string;
3490
+ readonly id?: string | null;
3491
+ }>, Schema.Struct<{
3492
+ readonly _tag: Schema.tag<"ConflictError">;
3493
+ readonly message: Schema.String;
3494
+ readonly resource: Schema.String;
3495
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3496
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ExternalServiceError, {
3497
+ readonly _tag: "ExternalServiceError";
3498
+ readonly message: string;
3499
+ }, readonly [Schema.Struct<{
3500
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3501
+ readonly message: Schema.String;
3502
+ }>], {
3503
+ readonly _tag: "ExternalServiceError";
3504
+ readonly message: string;
3505
+ }>, Schema.Struct<{
3506
+ readonly _tag: Schema.tag<"ExternalServiceError">;
3507
+ readonly message: Schema.String;
3508
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
3509
+ readonly _tag: "GatewayTimeoutError";
3510
+ readonly message: string;
3511
+ readonly retryAfterSeconds: number;
3512
+ }, readonly [Schema.Struct<{
3513
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3514
+ readonly message: Schema.String;
3515
+ readonly retryAfterSeconds: Schema.Finite;
3516
+ }>], {
3517
+ readonly _tag: "GatewayTimeoutError";
3518
+ readonly message: string;
3519
+ readonly retryAfterSeconds: number;
3520
+ }>, Schema.Struct<{
3521
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3522
+ readonly message: Schema.String;
3523
+ readonly retryAfterSeconds: Schema.Finite;
3524
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
3525
+ readonly _tag: "ResourceNotFoundError";
3526
+ readonly resource: string;
3527
+ readonly id: string;
3528
+ readonly message: string;
3529
+ }, readonly [Schema.Struct<{
3530
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3531
+ readonly resource: Schema.String;
3532
+ readonly id: Schema.String;
3533
+ readonly message: Schema.String;
3534
+ }>], {
3535
+ readonly _tag: "ResourceNotFoundError";
3536
+ readonly resource: string;
3537
+ readonly id: string;
3538
+ readonly message: string;
3539
+ }>, Schema.Struct<{
3540
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3541
+ readonly resource: Schema.String;
3542
+ readonly id: Schema.String;
3543
+ readonly message: Schema.String;
3544
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<SenderNotReadyError, {
3545
+ readonly _tag: "SenderNotReadyError";
3546
+ readonly message: string;
3547
+ readonly sender: string;
3548
+ readonly retryAfterSeconds?: number | null;
3549
+ }, readonly [Schema.Struct<{
3550
+ readonly _tag: Schema.tag<"SenderNotReadyError">;
3551
+ readonly message: Schema.String;
3552
+ readonly sender: Schema.String;
3553
+ readonly retryAfterSeconds: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3554
+ }>], {
3555
+ readonly _tag: "SenderNotReadyError";
3556
+ readonly message: string;
3557
+ readonly sender: string;
3558
+ readonly retryAfterSeconds?: number | null;
3559
+ }>, Schema.Struct<{
3560
+ readonly _tag: Schema.tag<"SenderNotReadyError">;
3561
+ readonly message: Schema.String;
3562
+ readonly sender: Schema.String;
3563
+ readonly retryAfterSeconds: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3564
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
3565
+ readonly _tag: "UnauthorizedError";
3566
+ readonly message: string;
3567
+ }, readonly [Schema.Struct<{
3568
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3569
+ readonly message: Schema.String;
3570
+ }>], {
3571
+ readonly _tag: "UnauthorizedError";
3572
+ readonly message: string;
3573
+ }>, Schema.Struct<{
3574
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3575
+ readonly message: Schema.String;
3576
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"campaignsUpdate", "PATCH", "/v1/campaigns/:id", Schema.toCodecStringTree<Schema.Struct<{
3577
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
3578
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
3579
+ readonly name: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3580
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
3581
+ readonly channel: Schema.Literal<"email">;
3582
+ readonly email: Schema.Struct<{
3583
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3584
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3585
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3586
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
3587
+ readonly filename: Schema.String;
3588
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3589
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
3590
+ readonly contentType: Schema.String;
3591
+ readonly size: Schema.Finite;
3592
+ }>>, Schema.Null]>>;
3593
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
3594
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
3595
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
3596
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3597
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3598
+ readonly locale: Schema.optionalKey<Schema.String>;
3599
+ readonly timeZone: Schema.optionalKey<Schema.String>;
3600
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
3601
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
3602
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
3603
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
3604
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
3605
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
3606
+ }>>;
3607
+ readonly footer: Schema.optionalKey<Schema.Struct<{
3608
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3609
+ }>>;
3610
+ }>;
3611
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
3612
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3613
+ }>, Schema.Null]>>;
3614
+ readonly audience: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
3615
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3616
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3617
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
3618
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
3619
+ }>, Schema.Null]>>;
3620
+ readonly policy: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
3621
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
3622
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3623
+ }>, Schema.Null]>>;
3624
+ }>>, never, Schema.toCodecJson<Schema.Struct<{
3625
+ readonly id: Schema.brand<Schema.String, "CampaignId">;
3626
+ readonly name: Schema.String;
3627
+ readonly channel: Schema.Literal<"email">;
3628
+ readonly content: Schema.Struct<{
3629
+ readonly channel: Schema.Literal<"email">;
3630
+ readonly email: Schema.Struct<{
3631
+ readonly subject: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3632
+ readonly html: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3633
+ readonly text: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3634
+ readonly attachments: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.Struct<{
3635
+ readonly filename: Schema.String;
3636
+ readonly content: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3637
+ readonly mediaId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MediaId">, Schema.Null]>>;
3638
+ readonly contentType: Schema.String;
3639
+ readonly size: Schema.Finite;
3640
+ }>>, Schema.Null]>>;
3641
+ readonly publicationId: Schema.optionalKey<Schema.brand<Schema.String, "TemplatePublicationId">>;
3642
+ readonly inputContractId: Schema.optionalKey<Schema.brand<Schema.String, "TemplateInputContractId">>;
3643
+ readonly templateId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "TemplateId">, Schema.Null]>>;
3644
+ readonly templateSlug: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3645
+ readonly templateData: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3646
+ readonly locale: Schema.optionalKey<Schema.String>;
3647
+ readonly timeZone: Schema.optionalKey<Schema.String>;
3648
+ readonly inReplyToMessageId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "MessageId">, Schema.Null]>>;
3649
+ readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
3650
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
3651
+ readonly tracking: Schema.optionalKey<Schema.Struct<{
3652
+ readonly opens: Schema.optionalKey<Schema.Boolean>;
3653
+ readonly clicks: Schema.optionalKey<Schema.Boolean>;
3654
+ }>>;
3655
+ readonly footer: Schema.optionalKey<Schema.Struct<{
3656
+ readonly enabled: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3657
+ }>>;
3658
+ }>;
3659
+ readonly conversationId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "ConversationId">, Schema.Null]>, Schema.Null]>>;
3660
+ readonly metadata: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.suspend<Schema.Codec<JsonValue, JsonValue, never, never>>>, Schema.Null]>>;
3661
+ }>;
3662
+ readonly audience: Schema.Struct<{
3663
+ readonly includeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3664
+ readonly excludeTags: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>>;
3665
+ readonly contactIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactId">>, Schema.Null]>>;
3666
+ readonly groupIds: Schema.optionalKey<Schema.Union<readonly [Schema.$Array<Schema.brand<Schema.String, "ContactGroupId">>, Schema.Null]>>;
3667
+ }>;
3668
+ readonly policy: Schema.Struct<{
3669
+ readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>>;
3670
+ readonly pageSize: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3671
+ }>;
3672
+ readonly definition: Schema.Struct<{
3673
+ readonly state: Schema.Union<readonly [Schema.Literal<"editable">, Schema.Literal<"frozen">, Schema.Literal<"archived">]>;
3674
+ readonly frozenAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3675
+ }>;
3676
+ readonly latestRun: Schema.Union<readonly [Schema.Struct<{
3677
+ readonly id: Schema.brand<Schema.String, "CampaignRunId">;
3678
+ readonly status: Schema.Union<readonly [Schema.Literal<"scheduled">, Schema.Literal<"resolving">, Schema.Literal<"dispatching">, Schema.Literal<"paused">, Schema.Literal<"completed">, Schema.Literal<"cancelled">, Schema.Literal<"failed">]>;
3679
+ readonly scheduledFor: Schema.String;
3680
+ readonly completedAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3681
+ readonly totalRecipients: Schema.Finite;
3682
+ readonly dispatchedCount: Schema.Finite;
3683
+ readonly failedCount: Schema.Finite;
3684
+ readonly skippedCount: Schema.Finite;
3685
+ readonly estimatedCompletionAt: Schema.Union<readonly [Schema.String, Schema.Null]>;
3686
+ }>, Schema.Null]>;
3687
+ readonly createdBy: Schema.Union<readonly [Schema.String, Schema.Null]>;
3688
+ readonly actorEmail: Schema.String;
3689
+ readonly memberRole: Schema.String;
3690
+ readonly createdAt: Schema.String;
3691
+ readonly updatedAt: Schema.String;
3692
+ }>>, Schema.toCodecJson<Schema.Union<readonly [typeof FlagDisabledError, typeof ForbiddenError]> | Schema.decodeTo<Schema.declareConstructor<ConflictError, {
3693
+ readonly _tag: "ConflictError";
3694
+ readonly message: string;
3695
+ readonly resource: string;
3696
+ readonly id?: string | null;
3697
+ }, readonly [Schema.Struct<{
3698
+ readonly _tag: Schema.tag<"ConflictError">;
3699
+ readonly message: Schema.String;
3700
+ readonly resource: Schema.String;
3701
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3702
+ }>], {
3703
+ readonly _tag: "ConflictError";
3704
+ readonly message: string;
3705
+ readonly resource: string;
3706
+ readonly id?: string | null;
3707
+ }>, Schema.Struct<{
3708
+ readonly _tag: Schema.tag<"ConflictError">;
3709
+ readonly message: Schema.String;
3710
+ readonly resource: Schema.String;
3711
+ readonly id: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3712
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<GatewayTimeoutError, {
3713
+ readonly _tag: "GatewayTimeoutError";
3714
+ readonly message: string;
3715
+ readonly retryAfterSeconds: number;
3716
+ }, readonly [Schema.Struct<{
3717
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3718
+ readonly message: Schema.String;
3719
+ readonly retryAfterSeconds: Schema.Finite;
3720
+ }>], {
3721
+ readonly _tag: "GatewayTimeoutError";
3722
+ readonly message: string;
3723
+ readonly retryAfterSeconds: number;
3724
+ }>, Schema.Struct<{
3725
+ readonly _tag: Schema.tag<"GatewayTimeoutError">;
3726
+ readonly message: Schema.String;
3727
+ readonly retryAfterSeconds: Schema.Finite;
3728
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ResourceNotFoundError, {
3729
+ readonly _tag: "ResourceNotFoundError";
3730
+ readonly resource: string;
3731
+ readonly id: string;
3732
+ readonly message: string;
3733
+ }, readonly [Schema.Struct<{
3734
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3735
+ readonly resource: Schema.String;
3736
+ readonly id: Schema.String;
3737
+ readonly message: Schema.String;
3738
+ }>], {
3739
+ readonly _tag: "ResourceNotFoundError";
3740
+ readonly resource: string;
3741
+ readonly id: string;
3742
+ readonly message: string;
3743
+ }>, Schema.Struct<{
3744
+ readonly _tag: Schema.tag<"ResourceNotFoundError">;
3745
+ readonly resource: Schema.String;
3746
+ readonly id: Schema.String;
3747
+ readonly message: Schema.String;
3748
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<UnauthorizedError, {
3749
+ readonly _tag: "UnauthorizedError";
3750
+ readonly message: string;
3751
+ }, readonly [Schema.Struct<{
3752
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3753
+ readonly message: Schema.String;
3754
+ }>], {
3755
+ readonly _tag: "UnauthorizedError";
3756
+ readonly message: string;
3757
+ }>, Schema.Struct<{
3758
+ readonly _tag: Schema.tag<"UnauthorizedError">;
3759
+ readonly message: Schema.String;
3760
+ }>, never, never> | Schema.decodeTo<Schema.declareConstructor<ValidationError, {
3761
+ readonly _tag: "ValidationError";
3762
+ readonly message: string;
3763
+ readonly fields?: {
3764
+ readonly [x: string]: readonly string[];
3765
+ } | null;
3766
+ }, readonly [Schema.Struct<{
3767
+ readonly _tag: Schema.tag<"ValidationError">;
3768
+ readonly message: Schema.String;
3769
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3770
+ }>], {
3771
+ readonly _tag: "ValidationError";
3772
+ readonly message: string;
3773
+ readonly fields?: {
3774
+ readonly [x: string]: readonly string[];
3775
+ } | null;
3776
+ }>, Schema.Struct<{
3777
+ readonly _tag: Schema.tag<"ValidationError">;
3778
+ readonly message: Schema.String;
3779
+ readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
3780
+ }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never>, false>;
3781
+ export declare class CampaignsGroup extends CampaignsGroup_base {
3782
+ }
3783
+ export {};