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,522 @@
1
+ import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
+ import { t as AbsoluteInstant } from "./runtime-P0l1_2-C.js";
3
+ import { Bt as SendsSeries, D as Cursor, F as EmailDomainId, G as FlagDisabledError, Jt as UnauthorizedError, K as ForbiddenError, Lt as ResourceNotFoundError, N as EmailContent, P as EmailDispatchContent, U as ExternalServiceError, Y as InternalError, Yt as UnsubscribeId, _ as ContactGroupId, en as ValidationError, et as JsonValue, m as ConflictError, p as CampaignFooterRequiredError, q as GatewayTimeoutError, s as ApiKeySecurityMiddleware, u as BrandAddressRequiredError, v as ContactId, x as ConversationId, zt as SenderNotReadyError } from "./client-DOzUrdTE.js";
4
+ import { n as forGroup } from "./operation-n_IYgNVK.js";
5
+ import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/http-api";
6
+ import * as Schema from "effect/Schema";
7
+ //#region src/effect/generated/campaigns.ts
8
+ const CampaignId = /* @__PURE__ */ Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^camp_[0-9a-hjkmnp-tv-z]{16,24}$", "u")).annotate({
9
+ expected: "a string matching the RegExp ^camp_[0-9a-hjkmnp-tv-z]{16,24}$",
10
+ identifier: "CampaignId"
11
+ })).pipe(Schema.brand("CampaignId"));
12
+ const CampaignContentMetadata = /* @__PURE__ */ Schema.Union([Schema.Record(Schema.String, JsonValue), Schema.Null]).annotate({ identifier: "CampaignContentMetadata" });
13
+ const CampaignDefinitionSummary = /* @__PURE__ */ Schema.Struct({
14
+ state: Schema.Union([
15
+ Schema.Literal("editable"),
16
+ Schema.Literal("frozen"),
17
+ Schema.Literal("archived")
18
+ ]),
19
+ frozenAt: Schema.Union([Schema.String, Schema.Null])
20
+ }).annotate({ identifier: "CampaignDefinitionSummary" });
21
+ const CampaignRunId = /* @__PURE__ */ Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^crun_[0-9a-hjkmnp-tv-z]{16,24}$", "u")).annotate({
22
+ expected: "a string matching the RegExp ^crun_[0-9a-hjkmnp-tv-z]{16,24}$",
23
+ identifier: "CampaignRunId"
24
+ })).pipe(Schema.brand("CampaignRunId"));
25
+ const CampaignRecipientId = /* @__PURE__ */ Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^crcpt_[0-9a-hjkmnp-tv-z]{16,24}$", "u")).annotate({
26
+ expected: "a string matching the RegExp ^crcpt_[0-9a-hjkmnp-tv-z]{16,24}$",
27
+ identifier: "CampaignRecipientId"
28
+ })).pipe(Schema.brand("CampaignRecipientId"));
29
+ const CampaignPolicy = /* @__PURE__ */ Schema.Struct({
30
+ unsubscribeGroupId: Schema.optionalKey(Schema.Union([UnsubscribeId, Schema.Null])),
31
+ pageSize: Schema.optionalKey(Schema.Union([Schema.Finite.check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isGreaterThanOrEqualTo(100).annotate({ expected: "a value greater than or equal to 100" })).check(Schema.isLessThanOrEqualTo(1e3).annotate({ expected: "a value less than or equal to 1000" })), Schema.Null]))
32
+ }).annotate({ identifier: "CampaignPolicy" });
33
+ const CampaignConversationRef = /* @__PURE__ */ Schema.Union([Schema.Union([ConversationId, Schema.Null]), Schema.Null]).annotate({ identifier: "CampaignConversationRef" });
34
+ const CampaignAudience = /* @__PURE__ */ Schema.Struct({
35
+ includeTags: Schema.optionalKey(Schema.Union([Schema.Array(Schema.String), Schema.Null])),
36
+ excludeTags: Schema.optionalKey(Schema.Union([Schema.Array(Schema.String), Schema.Null])),
37
+ contactIds: Schema.optionalKey(Schema.Union([Schema.Array(ContactId).check(Schema.isMaxLength(25e3).annotate({ expected: "a value with a length of at most 25000" })), Schema.Null])),
38
+ groupIds: Schema.optionalKey(Schema.Union([Schema.Array(ContactGroupId).check(Schema.isMaxLength(100).annotate({ expected: "a value with a length of at most 100" })), Schema.Null]))
39
+ }).annotate({ identifier: "CampaignAudience" });
40
+ const CampaignLatestRun = /* @__PURE__ */ Schema.Struct({
41
+ id: CampaignRunId,
42
+ status: Schema.Union([
43
+ Schema.Literal("scheduled"),
44
+ Schema.Literal("resolving"),
45
+ Schema.Literal("dispatching"),
46
+ Schema.Literal("paused"),
47
+ Schema.Literal("completed"),
48
+ Schema.Literal("cancelled"),
49
+ Schema.Literal("failed")
50
+ ]),
51
+ scheduledFor: Schema.String,
52
+ completedAt: Schema.Union([Schema.String, Schema.Null]),
53
+ totalRecipients: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
54
+ dispatchedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
55
+ failedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
56
+ skippedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
57
+ estimatedCompletionAt: Schema.Union([Schema.String, Schema.Null])
58
+ }).annotate({ identifier: "CampaignLatestRun" });
59
+ const CampaignRecipientPage = /* @__PURE__ */ Schema.Struct({
60
+ items: Schema.Array(Schema.Struct({
61
+ id: CampaignRecipientId,
62
+ runId: CampaignRunId,
63
+ contactId: ContactId,
64
+ status: Schema.Union([
65
+ Schema.Literal("pending"),
66
+ Schema.Literal("dispatching"),
67
+ Schema.Literal("dispatched"),
68
+ Schema.Literal("failed"),
69
+ Schema.Literal("skipped")
70
+ ]),
71
+ messageId: Schema.Union([Schema.String, Schema.Null]),
72
+ failureReason: Schema.Union([Schema.String, Schema.Null]),
73
+ skippedReason: Schema.Union([Schema.Union([
74
+ Schema.Literal("unsubscribed"),
75
+ Schema.Literal("blocked"),
76
+ Schema.Literal("suppressed"),
77
+ Schema.Literal("no_identity"),
78
+ Schema.Literal("inactive"),
79
+ Schema.Literal("run_cancelled"),
80
+ Schema.Literal("run_failed")
81
+ ]), Schema.Null]),
82
+ createdAt: Schema.String,
83
+ updatedAt: Schema.String
84
+ })),
85
+ nextCursor: Schema.Union([Schema.String, Schema.Null])
86
+ }).annotate({ identifier: "CampaignRecipientPage" });
87
+ const CampaignContent = /* @__PURE__ */ Schema.Struct({
88
+ channel: Schema.Literal("email"),
89
+ email: EmailContent,
90
+ conversationId: Schema.optionalKey(CampaignConversationRef),
91
+ metadata: Schema.optionalKey(CampaignContentMetadata)
92
+ }).annotate({ identifier: "CampaignContent" });
93
+ const CampaignContentInput = /* @__PURE__ */ Schema.Struct({
94
+ channel: Schema.Literal("email"),
95
+ email: EmailDispatchContent,
96
+ conversationId: Schema.optionalKey(CampaignConversationRef),
97
+ metadata: Schema.optionalKey(CampaignContentMetadata)
98
+ }).annotate({ identifier: "CampaignContentInput" });
99
+ const CampaignListItem = /* @__PURE__ */ Schema.Struct({
100
+ id: CampaignId,
101
+ name: Schema.String,
102
+ channel: Schema.Literal("email"),
103
+ content: CampaignContent,
104
+ audience: CampaignAudience,
105
+ policy: CampaignPolicy,
106
+ definition: CampaignDefinitionSummary,
107
+ latestRun: Schema.Union([CampaignLatestRun, Schema.Null]),
108
+ createdBy: Schema.Union([Schema.String, Schema.Null]),
109
+ actorEmail: Schema.String,
110
+ memberRole: Schema.String,
111
+ createdAt: Schema.String,
112
+ updatedAt: Schema.String,
113
+ series: SendsSeries
114
+ }).annotate({ identifier: "CampaignListItem" });
115
+ const Campaign = /* @__PURE__ */ Schema.Struct({
116
+ id: CampaignId,
117
+ name: Schema.String,
118
+ channel: Schema.Literal("email"),
119
+ content: CampaignContent,
120
+ audience: CampaignAudience,
121
+ policy: CampaignPolicy,
122
+ definition: CampaignDefinitionSummary,
123
+ latestRun: Schema.Union([CampaignLatestRun, Schema.Null]),
124
+ createdBy: Schema.Union([Schema.String, Schema.Null]),
125
+ actorEmail: Schema.String,
126
+ memberRole: Schema.String,
127
+ createdAt: Schema.String,
128
+ updatedAt: Schema.String
129
+ }).annotate({ identifier: "Campaign" });
130
+ const CampaignRun = /* @__PURE__ */ Schema.Struct({
131
+ id: CampaignRunId,
132
+ campaignId: CampaignId,
133
+ status: Schema.Union([
134
+ Schema.Literal("scheduled"),
135
+ Schema.Literal("resolving"),
136
+ Schema.Literal("dispatching"),
137
+ Schema.Literal("paused"),
138
+ Schema.Literal("completed"),
139
+ Schema.Literal("cancelled"),
140
+ Schema.Literal("failed")
141
+ ]),
142
+ scheduledFor: Schema.String,
143
+ idempotencyKey: Schema.Union([Schema.String, Schema.Null]),
144
+ startedAt: Schema.Union([Schema.String, Schema.Null]),
145
+ completedAt: Schema.Union([Schema.String, Schema.Null]),
146
+ contentSnapshot: CampaignContent,
147
+ audienceSnapshot: CampaignAudience,
148
+ policySnapshot: CampaignPolicy,
149
+ totalRecipients: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
150
+ dispatchedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
151
+ failedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
152
+ skippedCount: Schema.Finite.check(Schema.isFinite().annotate({ expected: "a finite number" })),
153
+ estimatedCompletionAt: Schema.Union([Schema.String, Schema.Null]),
154
+ failureReason: Schema.Union([Schema.String, Schema.Null]),
155
+ holdReason: Schema.Union([Schema.String, Schema.Null]),
156
+ holdDomainId: Schema.Union([EmailDomainId, Schema.Null]),
157
+ lastContactId: Schema.Union([Schema.String, Schema.Null]),
158
+ createdBy: Schema.Union([Schema.String, Schema.Null]),
159
+ actorEmail: Schema.String,
160
+ memberRole: Schema.String,
161
+ createdAt: Schema.String,
162
+ updatedAt: Schema.String
163
+ }).annotate({ identifier: "CampaignRun" });
164
+ const CampaignPage = /* @__PURE__ */ Schema.Struct({
165
+ items: Schema.Array(CampaignListItem),
166
+ nextCursor: Schema.Union([Schema.String, Schema.Null])
167
+ }).annotate({ identifier: "CampaignPage" });
168
+ const CampaignRunPage = /* @__PURE__ */ Schema.Struct({
169
+ items: Schema.Array(CampaignRun),
170
+ nextCursor: Schema.Union([Schema.String, Schema.Null])
171
+ }).annotate({ identifier: "CampaignRunPage" });
172
+ const CampaignRunAction = /* @__PURE__ */ Schema.Struct({
173
+ success: Schema.Boolean,
174
+ item: CampaignRun
175
+ }).annotate({ identifier: "CampaignRunAction" });
176
+ const CampaignsListQuery = /* @__PURE__ */ Schema.Struct({
177
+ status: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Literal("draft"), Schema.Literal("archived")]), Schema.Null])),
178
+ limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
179
+ cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
180
+ });
181
+ const CampaignsList200 = CampaignPage;
182
+ const CampaignsList401 = UnauthorizedError;
183
+ const CampaignsList403 = ForbiddenError;
184
+ const CampaignsList422 = ValidationError;
185
+ const CampaignsList500 = InternalError;
186
+ const CampaignsList504 = GatewayTimeoutError;
187
+ const CampaignsCreateRequestJson = /* @__PURE__ */ Schema.Struct({
188
+ name: Schema.String,
189
+ channel: Schema.Literal("email"),
190
+ content: CampaignContentInput,
191
+ audience: CampaignAudience,
192
+ policy: Schema.optionalKey(Schema.Union([CampaignPolicy, Schema.Null]))
193
+ });
194
+ const CampaignsCreate201 = Campaign;
195
+ const CampaignsCreate401 = UnauthorizedError;
196
+ const CampaignsCreate403 = /* @__PURE__ */ Schema.Union([FlagDisabledError, ForbiddenError]);
197
+ const CampaignsCreate422 = ValidationError;
198
+ const CampaignsCreate500 = InternalError;
199
+ const CampaignsCreate504 = GatewayTimeoutError;
200
+ const CampaignsGetPathParams = /* @__PURE__ */ Schema.Struct({ id: CampaignId });
201
+ const CampaignsGet200 = Campaign;
202
+ const CampaignsGet401 = UnauthorizedError;
203
+ const CampaignsGet403 = ForbiddenError;
204
+ const CampaignsGet404 = ResourceNotFoundError;
205
+ const CampaignsGet422 = ValidationError;
206
+ const CampaignsGet500 = InternalError;
207
+ const CampaignsGet504 = GatewayTimeoutError;
208
+ const CampaignsUpdatePathParams = /* @__PURE__ */ Schema.Struct({ id: CampaignId });
209
+ const CampaignsUpdateRequestJson = /* @__PURE__ */ Schema.Struct({
210
+ name: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
211
+ content: Schema.optionalKey(Schema.Union([CampaignContentInput, Schema.Null])),
212
+ audience: Schema.optionalKey(Schema.Union([CampaignAudience, Schema.Null])),
213
+ policy: Schema.optionalKey(Schema.Union([CampaignPolicy, Schema.Null]))
214
+ });
215
+ const CampaignsUpdate200 = Campaign;
216
+ const CampaignsUpdate401 = UnauthorizedError;
217
+ const CampaignsUpdate403 = /* @__PURE__ */ Schema.Union([FlagDisabledError, ForbiddenError]);
218
+ const CampaignsUpdate404 = ResourceNotFoundError;
219
+ const CampaignsUpdate409 = ConflictError;
220
+ const CampaignsUpdate422 = ValidationError;
221
+ const CampaignsUpdate500 = InternalError;
222
+ const CampaignsUpdate504 = GatewayTimeoutError;
223
+ const CampaignsArchivePathParams = /* @__PURE__ */ Schema.Struct({ id: CampaignId });
224
+ const CampaignsArchive200 = Campaign;
225
+ const CampaignsArchive401 = UnauthorizedError;
226
+ const CampaignsArchive403 = ForbiddenError;
227
+ const CampaignsArchive404 = ResourceNotFoundError;
228
+ const CampaignsArchive409 = ConflictError;
229
+ const CampaignsArchive422 = ValidationError;
230
+ const CampaignsArchive500 = InternalError;
231
+ const CampaignsArchive504 = GatewayTimeoutError;
232
+ const CampaignsListRunsPathParams = /* @__PURE__ */ Schema.Struct({ id: CampaignId });
233
+ const CampaignsListRunsQuery = /* @__PURE__ */ Schema.Struct({
234
+ status: Schema.optionalKey(Schema.Union([Schema.Union([
235
+ Schema.Literal("scheduled"),
236
+ Schema.Literal("resolving"),
237
+ Schema.Literal("dispatching"),
238
+ Schema.Literal("paused"),
239
+ Schema.Literal("completed"),
240
+ Schema.Literal("cancelled"),
241
+ Schema.Literal("failed")
242
+ ]), Schema.Null])),
243
+ limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
244
+ cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
245
+ });
246
+ const CampaignsListRuns200 = CampaignRunPage;
247
+ const CampaignsListRuns401 = UnauthorizedError;
248
+ const CampaignsListRuns403 = ForbiddenError;
249
+ const CampaignsListRuns404 = ResourceNotFoundError;
250
+ const CampaignsListRuns422 = ValidationError;
251
+ const CampaignsListRuns500 = InternalError;
252
+ const CampaignsListRuns504 = GatewayTimeoutError;
253
+ const CampaignsScheduleRunPathParams = /* @__PURE__ */ Schema.Struct({ id: CampaignId });
254
+ const CampaignsScheduleRunRequestJson = /* @__PURE__ */ Schema.Struct({
255
+ scheduledFor: Schema.optionalKey(Schema.Union([AbsoluteInstant, Schema.Null])),
256
+ idempotencyKey: Schema.optionalKey(Schema.Union([Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^[\\s\\S]{1,255}$")).annotate({ expected: "a string matching the RegExp ^[\\s\\S]{1,255}$" })), Schema.Null]))
257
+ });
258
+ const CampaignsScheduleRun201 = CampaignRun;
259
+ const CampaignsScheduleRun401 = UnauthorizedError;
260
+ const CampaignsScheduleRun403 = /* @__PURE__ */ Schema.Union([FlagDisabledError, ForbiddenError]);
261
+ const CampaignsScheduleRun404 = ResourceNotFoundError;
262
+ const CampaignsScheduleRun409 = ConflictError;
263
+ const CampaignsScheduleRun422 = /* @__PURE__ */ Schema.Union([
264
+ ValidationError,
265
+ BrandAddressRequiredError,
266
+ CampaignFooterRequiredError
267
+ ]);
268
+ const CampaignsScheduleRun500 = InternalError;
269
+ const CampaignsScheduleRun502 = ExternalServiceError;
270
+ const CampaignsScheduleRun503 = SenderNotReadyError;
271
+ const CampaignsScheduleRun504 = GatewayTimeoutError;
272
+ const CampaignsGetRunPathParams = /* @__PURE__ */ Schema.Struct({
273
+ id: CampaignId,
274
+ runId: CampaignRunId
275
+ });
276
+ const CampaignsGetRun200 = CampaignRun;
277
+ const CampaignsGetRun401 = UnauthorizedError;
278
+ const CampaignsGetRun403 = ForbiddenError;
279
+ const CampaignsGetRun404 = ResourceNotFoundError;
280
+ const CampaignsGetRun422 = ValidationError;
281
+ const CampaignsGetRun500 = InternalError;
282
+ const CampaignsGetRun504 = GatewayTimeoutError;
283
+ const CampaignsCancelRunPathParams = /* @__PURE__ */ Schema.Struct({
284
+ id: CampaignId,
285
+ runId: CampaignRunId
286
+ });
287
+ const CampaignsCancelRun200 = CampaignRunAction;
288
+ const CampaignsCancelRun401 = UnauthorizedError;
289
+ const CampaignsCancelRun403 = ForbiddenError;
290
+ const CampaignsCancelRun404 = ResourceNotFoundError;
291
+ const CampaignsCancelRun409 = ConflictError;
292
+ const CampaignsCancelRun422 = ValidationError;
293
+ const CampaignsCancelRun500 = InternalError;
294
+ const CampaignsCancelRun502 = ExternalServiceError;
295
+ const CampaignsCancelRun504 = GatewayTimeoutError;
296
+ const CampaignsPauseRunPathParams = /* @__PURE__ */ Schema.Struct({
297
+ id: CampaignId,
298
+ runId: CampaignRunId
299
+ });
300
+ const CampaignsPauseRun200 = CampaignRunAction;
301
+ const CampaignsPauseRun401 = UnauthorizedError;
302
+ const CampaignsPauseRun403 = ForbiddenError;
303
+ const CampaignsPauseRun404 = ResourceNotFoundError;
304
+ const CampaignsPauseRun409 = ConflictError;
305
+ const CampaignsPauseRun422 = ValidationError;
306
+ const CampaignsPauseRun500 = InternalError;
307
+ const CampaignsPauseRun502 = ExternalServiceError;
308
+ const CampaignsPauseRun504 = GatewayTimeoutError;
309
+ const CampaignsListRecipientsPathParams = /* @__PURE__ */ Schema.Struct({
310
+ id: CampaignId,
311
+ runId: CampaignRunId
312
+ });
313
+ const CampaignsListRecipientsQuery = /* @__PURE__ */ Schema.Struct({
314
+ status: Schema.optionalKey(Schema.Union([Schema.Union([
315
+ Schema.Literal("pending"),
316
+ Schema.Literal("dispatching"),
317
+ Schema.Literal("dispatched"),
318
+ Schema.Literal("failed"),
319
+ Schema.Literal("skipped")
320
+ ]), Schema.Null])),
321
+ limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
322
+ cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
323
+ });
324
+ const CampaignsListRecipients200 = CampaignRecipientPage;
325
+ const CampaignsListRecipients401 = UnauthorizedError;
326
+ const CampaignsListRecipients403 = ForbiddenError;
327
+ const CampaignsListRecipients404 = ResourceNotFoundError;
328
+ const CampaignsListRecipients422 = ValidationError;
329
+ const CampaignsListRecipients500 = InternalError;
330
+ const CampaignsListRecipients504 = GatewayTimeoutError;
331
+ const CampaignsResumeRunPathParams = /* @__PURE__ */ Schema.Struct({
332
+ id: CampaignId,
333
+ runId: CampaignRunId
334
+ });
335
+ const CampaignsResumeRun200 = CampaignRunAction;
336
+ const CampaignsResumeRun401 = UnauthorizedError;
337
+ const CampaignsResumeRun403 = ForbiddenError;
338
+ const CampaignsResumeRun404 = ResourceNotFoundError;
339
+ const CampaignsResumeRun409 = ConflictError;
340
+ const CampaignsResumeRun422 = ValidationError;
341
+ const CampaignsResumeRun500 = InternalError;
342
+ const CampaignsResumeRun502 = ExternalServiceError;
343
+ const CampaignsResumeRun504 = GatewayTimeoutError;
344
+ var CampaignsGroup = class extends HttpApiGroup.make("Campaigns").add(HttpApiEndpoint.get("campaignsList", "/v1/campaigns", {
345
+ query: CampaignsListQuery,
346
+ success: CampaignsList200,
347
+ error: [
348
+ CampaignsList401.pipe(HttpApiSchema.status(401)),
349
+ CampaignsList403.pipe(HttpApiSchema.status(403)),
350
+ CampaignsList422.pipe(HttpApiSchema.status(422)),
351
+ CampaignsList500,
352
+ CampaignsList504.pipe(HttpApiSchema.status(504))
353
+ ]
354
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.list").annotate(OpenApi.Summary, "List campaigns").annotate(OpenApi.Description, "Returns the organization's campaigns, newest first, optionally filtered by status. Each row carries `series`, the last 14 days of daily email sends the campaign produced, oldest first. Pass `nextCursor` back as `cursor` for the next page; it is null on the last page."), HttpApiEndpoint.post("campaignsCreate", "/v1/campaigns", {
355
+ payload: CampaignsCreateRequestJson,
356
+ success: CampaignsCreate201.pipe(HttpApiSchema.status(201)),
357
+ error: [
358
+ CampaignsCreate401.pipe(HttpApiSchema.status(401)),
359
+ CampaignsCreate403.pipe(HttpApiSchema.status(403)),
360
+ CampaignsCreate422.pipe(HttpApiSchema.status(422)),
361
+ CampaignsCreate500,
362
+ CampaignsCreate504.pipe(HttpApiSchema.status(504))
363
+ ]
364
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.create").annotate(OpenApi.Summary, "Create a campaign").annotate(OpenApi.Description, "Creates an email campaign draft for the given audience and content, returning the created campaign."), HttpApiEndpoint.get("campaignsGet", "/v1/campaigns/:id", {
365
+ params: CampaignsGetPathParams,
366
+ success: CampaignsGet200,
367
+ error: [
368
+ CampaignsGet401.pipe(HttpApiSchema.status(401)),
369
+ CampaignsGet403.pipe(HttpApiSchema.status(403)),
370
+ CampaignsGet404.pipe(HttpApiSchema.status(404)),
371
+ CampaignsGet422.pipe(HttpApiSchema.status(422)),
372
+ CampaignsGet500,
373
+ CampaignsGet504.pipe(HttpApiSchema.status(504))
374
+ ]
375
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.get").annotate(OpenApi.Summary, "Get a campaign").annotate(OpenApi.Description, "Returns a single campaign, including its content, audience, and policy, by its identifier."), HttpApiEndpoint.patch("campaignsUpdate", "/v1/campaigns/:id", {
376
+ params: CampaignsUpdatePathParams,
377
+ payload: CampaignsUpdateRequestJson,
378
+ success: CampaignsUpdate200,
379
+ error: [
380
+ CampaignsUpdate401.pipe(HttpApiSchema.status(401)),
381
+ CampaignsUpdate403.pipe(HttpApiSchema.status(403)),
382
+ CampaignsUpdate404.pipe(HttpApiSchema.status(404)),
383
+ CampaignsUpdate409.pipe(HttpApiSchema.status(409)),
384
+ CampaignsUpdate422.pipe(HttpApiSchema.status(422)),
385
+ CampaignsUpdate500,
386
+ CampaignsUpdate504.pipe(HttpApiSchema.status(504))
387
+ ]
388
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.update").annotate(OpenApi.Summary, "Update a campaign").annotate(OpenApi.Description, "Updates the name, content, audience, or policy of a campaign draft."), HttpApiEndpoint.post("campaignsArchive", "/v1/campaigns/:id/archive", {
389
+ params: CampaignsArchivePathParams,
390
+ success: CampaignsArchive200,
391
+ error: [
392
+ CampaignsArchive401.pipe(HttpApiSchema.status(401)),
393
+ CampaignsArchive403.pipe(HttpApiSchema.status(403)),
394
+ CampaignsArchive404.pipe(HttpApiSchema.status(404)),
395
+ CampaignsArchive409.pipe(HttpApiSchema.status(409)),
396
+ CampaignsArchive422.pipe(HttpApiSchema.status(422)),
397
+ CampaignsArchive500,
398
+ CampaignsArchive504.pipe(HttpApiSchema.status(504))
399
+ ]
400
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.archive").annotate(OpenApi.Summary, "Archive a campaign").annotate(OpenApi.Description, "Archives a draft campaign so it can no longer be scheduled, returning the archived campaign."), HttpApiEndpoint.get("campaignsListRuns", "/v1/campaigns/:id/runs", {
401
+ params: CampaignsListRunsPathParams,
402
+ query: CampaignsListRunsQuery,
403
+ success: CampaignsListRuns200,
404
+ error: [
405
+ CampaignsListRuns401.pipe(HttpApiSchema.status(401)),
406
+ CampaignsListRuns403.pipe(HttpApiSchema.status(403)),
407
+ CampaignsListRuns404.pipe(HttpApiSchema.status(404)),
408
+ CampaignsListRuns422.pipe(HttpApiSchema.status(422)),
409
+ CampaignsListRuns500,
410
+ CampaignsListRuns504.pipe(HttpApiSchema.status(504))
411
+ ]
412
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.listRuns").annotate(OpenApi.Summary, "List campaign runs").annotate(OpenApi.Description, "Returns a campaign's runs, newest first, optionally filtered by status. Pass `nextCursor` back as `cursor` for the next page; it is null on the last page."), HttpApiEndpoint.post("campaignsScheduleRun", "/v1/campaigns/:id/runs", {
413
+ params: CampaignsScheduleRunPathParams,
414
+ payload: CampaignsScheduleRunRequestJson,
415
+ success: CampaignsScheduleRun201.pipe(HttpApiSchema.status(201)),
416
+ error: [
417
+ CampaignsScheduleRun401.pipe(HttpApiSchema.status(401)),
418
+ CampaignsScheduleRun403.pipe(HttpApiSchema.status(403)),
419
+ CampaignsScheduleRun404.pipe(HttpApiSchema.status(404)),
420
+ CampaignsScheduleRun409.pipe(HttpApiSchema.status(409)),
421
+ CampaignsScheduleRun422.pipe(HttpApiSchema.status(422)),
422
+ CampaignsScheduleRun500,
423
+ CampaignsScheduleRun502.pipe(HttpApiSchema.status(502)),
424
+ CampaignsScheduleRun503.pipe(HttpApiSchema.status(503)),
425
+ CampaignsScheduleRun504.pipe(HttpApiSchema.status(504))
426
+ ]
427
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.scheduleRun").annotate(OpenApi.Summary, "Schedule a campaign run").annotate(OpenApi.Description, "Schedules an email campaign run at the absolute ISO-8601 instant in scheduledFor, or immediately when omitted. The optional idempotencyKey is scoped to the organization and replays return the original run. An email campaign must carry the brand footer: it is refused with CampaignFooterRequiredError when its footer is off and its template renders no BrandFooter, and with BrandAddressRequiredError when a brand that signs it off has no postal address."), HttpApiEndpoint.get("campaignsGetRun", "/v1/campaigns/:id/runs/:runId", {
428
+ params: CampaignsGetRunPathParams,
429
+ success: CampaignsGetRun200,
430
+ error: [
431
+ CampaignsGetRun401.pipe(HttpApiSchema.status(401)),
432
+ CampaignsGetRun403.pipe(HttpApiSchema.status(403)),
433
+ CampaignsGetRun404.pipe(HttpApiSchema.status(404)),
434
+ CampaignsGetRun422.pipe(HttpApiSchema.status(422)),
435
+ CampaignsGetRun500,
436
+ CampaignsGetRun504.pipe(HttpApiSchema.status(504))
437
+ ]
438
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.getRun").annotate(OpenApi.Summary, "Get a campaign run").annotate(OpenApi.Description, "Returns a single run of a campaign by its identifier."), HttpApiEndpoint.post("campaignsCancelRun", "/v1/campaigns/:id/runs/:runId/cancel", {
439
+ params: CampaignsCancelRunPathParams,
440
+ success: CampaignsCancelRun200,
441
+ error: [
442
+ CampaignsCancelRun401.pipe(HttpApiSchema.status(401)),
443
+ CampaignsCancelRun403.pipe(HttpApiSchema.status(403)),
444
+ CampaignsCancelRun404.pipe(HttpApiSchema.status(404)),
445
+ CampaignsCancelRun409.pipe(HttpApiSchema.status(409)),
446
+ CampaignsCancelRun422.pipe(HttpApiSchema.status(422)),
447
+ CampaignsCancelRun500,
448
+ CampaignsCancelRun502.pipe(HttpApiSchema.status(502)),
449
+ CampaignsCancelRun504.pipe(HttpApiSchema.status(504))
450
+ ]
451
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.cancelRun").annotate(OpenApi.Summary, "Cancel a campaign run").annotate(OpenApi.Description, "Best-effort cancellation: pending recipients are skipped, while deliveries already handed off for sending may finish. Returns the updated run."), HttpApiEndpoint.post("campaignsPauseRun", "/v1/campaigns/:id/runs/:runId/pause", {
452
+ params: CampaignsPauseRunPathParams,
453
+ success: CampaignsPauseRun200,
454
+ error: [
455
+ CampaignsPauseRun401.pipe(HttpApiSchema.status(401)),
456
+ CampaignsPauseRun403.pipe(HttpApiSchema.status(403)),
457
+ CampaignsPauseRun404.pipe(HttpApiSchema.status(404)),
458
+ CampaignsPauseRun409.pipe(HttpApiSchema.status(409)),
459
+ CampaignsPauseRun422.pipe(HttpApiSchema.status(422)),
460
+ CampaignsPauseRun500,
461
+ CampaignsPauseRun502.pipe(HttpApiSchema.status(502)),
462
+ CampaignsPauseRun504.pipe(HttpApiSchema.status(504))
463
+ ]
464
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.pauseRun").annotate(OpenApi.Summary, "Pause a campaign run").annotate(OpenApi.Description, "Pauses an in-progress campaign run and returns the updated run."), HttpApiEndpoint.get("campaignsListRecipients", "/v1/campaigns/:id/runs/:runId/recipients", {
465
+ params: CampaignsListRecipientsPathParams,
466
+ query: CampaignsListRecipientsQuery,
467
+ success: CampaignsListRecipients200,
468
+ error: [
469
+ CampaignsListRecipients401.pipe(HttpApiSchema.status(401)),
470
+ CampaignsListRecipients403.pipe(HttpApiSchema.status(403)),
471
+ CampaignsListRecipients404.pipe(HttpApiSchema.status(404)),
472
+ CampaignsListRecipients422.pipe(HttpApiSchema.status(422)),
473
+ CampaignsListRecipients500,
474
+ CampaignsListRecipients504.pipe(HttpApiSchema.status(504))
475
+ ]
476
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.listRecipients").annotate(OpenApi.Summary, "List campaign recipients").annotate(OpenApi.Description, "Returns a campaign run's recipients in the order the run admitted them, optionally filtered by status. Pass `nextCursor` back as `cursor` for the next page; it is null on the last page."), HttpApiEndpoint.post("campaignsResumeRun", "/v1/campaigns/:id/runs/:runId/resume", {
477
+ params: CampaignsResumeRunPathParams,
478
+ success: CampaignsResumeRun200,
479
+ error: [
480
+ CampaignsResumeRun401.pipe(HttpApiSchema.status(401)),
481
+ CampaignsResumeRun403.pipe(HttpApiSchema.status(403)),
482
+ CampaignsResumeRun404.pipe(HttpApiSchema.status(404)),
483
+ CampaignsResumeRun409.pipe(HttpApiSchema.status(409)),
484
+ CampaignsResumeRun422.pipe(HttpApiSchema.status(422)),
485
+ CampaignsResumeRun500,
486
+ CampaignsResumeRun502.pipe(HttpApiSchema.status(502)),
487
+ CampaignsResumeRun504.pipe(HttpApiSchema.status(504))
488
+ ]
489
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "campaigns.resumeRun").annotate(OpenApi.Summary, "Resume a campaign run").annotate(OpenApi.Description, "Resumes a paused campaign run and returns the updated run.")).annotate(OpenApi.Description, "Campaign drafts and scheduled campaign runs") {};
490
+ //#endregion
491
+ //#region src/effect/campaigns.ts
492
+ var campaigns_exports = /* @__PURE__ */ __exportAll({
493
+ archive: () => archive,
494
+ cancelRun: () => cancelRun,
495
+ create: () => create,
496
+ get: () => get,
497
+ getRun: () => getRun,
498
+ list: () => list,
499
+ listRecipients: () => listRecipients,
500
+ listRuns: () => listRuns,
501
+ pauseRun: () => pauseRun,
502
+ resumeRun: () => resumeRun,
503
+ scheduleRun: () => scheduleRun,
504
+ update: () => update
505
+ });
506
+ const make = forGroup(CampaignsGroup);
507
+ const list = make("campaignsList");
508
+ const create = make("campaignsCreate");
509
+ const get = make("campaignsGet");
510
+ const archive = make("campaignsArchive");
511
+ const update = make("campaignsUpdate");
512
+ const listRuns = make("campaignsListRuns");
513
+ const scheduleRun = make("campaignsScheduleRun");
514
+ const getRun = make("campaignsGetRun");
515
+ const pauseRun = make("campaignsPauseRun");
516
+ const resumeRun = make("campaignsResumeRun");
517
+ const cancelRun = make("campaignsCancelRun");
518
+ const listRecipients = make("campaignsListRecipients");
519
+ //#endregion
520
+ export { get as a, listRecipients as c, resumeRun as d, scheduleRun as f, create as i, listRuns as l, campaigns_exports as n, getRun as o, update as p, cancelRun as r, list as s, archive as t, pauseRun as u };
521
+
522
+ //# sourceMappingURL=campaigns-DZlz1E9E.js.map