samva 0.27.0 → 0.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/AGENTS.md +7 -0
  2. package/README.md +14 -7
  3. package/dist/client/sdk.gen.d.ts +322 -143
  4. package/dist/client/sdk.gen.js +604 -95
  5. package/dist/client/types.gen.d.ts +1342 -479
  6. package/dist/effect/agents.d.ts +6 -8
  7. package/dist/effect/analytics.d.ts +1 -1
  8. package/dist/effect/api-keys.d.ts +6 -6
  9. package/dist/effect/attachments.d.ts +1 -1
  10. package/dist/effect/brands.d.ts +2 -0
  11. package/dist/effect/campaigns.d.ts +275 -25
  12. package/dist/effect/campaigns.js +7 -1
  13. package/dist/effect/contact-groups.d.ts +9 -9
  14. package/dist/effect/contacts.d.ts +74 -81
  15. package/dist/effect/contacts.js +7 -3
  16. package/dist/effect/conversations.d.ts +14 -6
  17. package/dist/effect/email.d.ts +34 -34
  18. package/dist/effect/errors.d.ts +1 -1
  19. package/dist/effect/errors.js +2 -2
  20. package/dist/effect/extension-installations.d.ts +3 -3
  21. package/dist/effect/extensions.d.ts +6 -6
  22. package/dist/effect/generated/agents.d.ts +6 -28
  23. package/dist/effect/generated/agents.js +2 -3
  24. package/dist/effect/generated/analytics.d.ts +3 -3
  25. package/dist/effect/generated/analytics.js +1 -1
  26. package/dist/effect/generated/api-keys.d.ts +6 -6
  27. package/dist/effect/generated/api-keys.js +2 -2
  28. package/dist/effect/generated/attachments.d.ts +3 -3
  29. package/dist/effect/generated/attachments.js +1 -1
  30. package/dist/effect/generated/brands.d.ts +16 -0
  31. package/dist/effect/generated/campaigns.d.ts +1181 -302
  32. package/dist/effect/generated/campaigns.js +169 -36
  33. package/dist/effect/generated/contact-events.d.ts +3 -3
  34. package/dist/effect/generated/contact-events.js +1 -1
  35. package/dist/effect/generated/contact-groups.d.ts +9 -9
  36. package/dist/effect/generated/contact-groups.js +7 -7
  37. package/dist/effect/generated/contacts.d.ts +2063 -290
  38. package/dist/effect/generated/contacts.js +343 -75
  39. package/dist/effect/generated/conversations.d.ts +14 -6
  40. package/dist/effect/generated/conversations.js +6 -6
  41. package/dist/effect/generated/email.d.ts +40 -40
  42. package/dist/effect/generated/email.js +15 -15
  43. package/dist/effect/generated/extension-installations.d.ts +3 -3
  44. package/dist/effect/generated/extension-installations.js +1 -1
  45. package/dist/effect/generated/extensions.d.ts +6 -6
  46. package/dist/effect/generated/extensions.js +2 -2
  47. package/dist/effect/generated/index.d.ts +5 -3
  48. package/dist/effect/generated/journeys.d.ts +9 -9
  49. package/dist/effect/generated/journeys.js +3 -3
  50. package/dist/effect/generated/mailboxes.d.ts +172 -124
  51. package/dist/effect/generated/mailboxes.js +22 -14
  52. package/dist/effect/generated/messages.d.ts +53 -29
  53. package/dist/effect/generated/messages.js +9 -5
  54. package/dist/effect/generated/namespaces.d.ts +3 -3
  55. package/dist/effect/generated/namespaces.js +1 -1
  56. package/dist/effect/generated/operations.d.ts +3 -3
  57. package/dist/effect/generated/operations.js +1 -1
  58. package/dist/effect/generated/organizations.d.ts +0 -9
  59. package/dist/effect/generated/organizations.js +1 -4
  60. package/dist/effect/generated/scheduled-messages.d.ts +69 -20
  61. package/dist/effect/generated/scheduled-messages.js +22 -3
  62. package/dist/effect/generated/shared.d.ts +396 -107
  63. package/dist/effect/generated/shared.js +170 -89
  64. package/dist/effect/generated/subscriptions.d.ts +4 -7
  65. package/dist/effect/generated/subscriptions.js +3 -4
  66. package/dist/effect/generated/templates.d.ts +71 -407
  67. package/dist/effect/generated/templates.js +23 -23
  68. package/dist/effect/generated/topic-forms.d.ts +656 -0
  69. package/dist/effect/generated/topic-forms.js +145 -0
  70. package/dist/effect/generated/{unsubscribe-groups.d.ts → topics.d.ts} +640 -435
  71. package/dist/effect/generated/topics.js +267 -0
  72. package/dist/effect/generated/webhooks.d.ts +6 -6
  73. package/dist/effect/generated/webhooks.js +2 -2
  74. package/dist/effect/generated-metadata.d.ts +78 -24
  75. package/dist/effect/generated-metadata.js +61 -27
  76. package/dist/effect/index.d.ts +2 -1
  77. package/dist/effect/index.js +4 -3
  78. package/dist/effect/internal/operation.js +3 -3
  79. package/dist/effect/internal/send.d.ts +4 -4
  80. package/dist/effect/journeys.d.ts +7 -7
  81. package/dist/effect/mailboxes.d.ts +137 -121
  82. package/dist/effect/messages.d.ts +19 -11
  83. package/dist/effect/namespaces.d.ts +3 -3
  84. package/dist/effect/operations.d.ts +3 -3
  85. package/dist/effect/scheduled-messages.d.ts +6 -6
  86. package/dist/effect/subscriptions.d.ts +1 -2
  87. package/dist/effect/templates.d.ts +13 -13
  88. package/dist/effect/topic-forms.d.ts +30 -0
  89. package/dist/effect/topic-forms.js +21 -0
  90. package/dist/effect/topics.d.ts +94 -0
  91. package/dist/effect/topics.js +29 -0
  92. package/dist/effect/webhooks.d.ts +6 -6
  93. package/dist/index.js +2 -2
  94. package/dist/package.js +1 -1
  95. package/dist/promises/errors.gen.d.ts +65 -8
  96. package/dist/promises/errors.gen.js +139 -7
  97. package/dist/promises/index.d.ts +5 -3
  98. package/dist/promises/index.js +7 -5
  99. package/dist/promises/types.gen.d.ts +1 -1
  100. package/dist/service-map.d.ts +74 -25
  101. package/dist/service-map.js +43 -12
  102. package/package.json +12 -8
  103. package/dist/effect/generated/unsubscribe-groups.js +0 -284
  104. package/dist/effect/unsubscribe-groups.d.ts +0 -74
  105. package/dist/effect/unsubscribe-groups.js +0 -29
@@ -183,7 +183,7 @@ export declare const Conversation: Schema.Struct<{
183
183
  readonly updatedAt: Schema.String;
184
184
  }>;
185
185
  export type ConversationsListQuery = {
186
- readonly limit?: string | null;
186
+ readonly limit?: number | null;
187
187
  readonly cursor?: Cursor | null;
188
188
  readonly status?: "active" | "waiting" | "resolved" | "escalated" | "archived" | null;
189
189
  readonly channel?: "email" | null;
@@ -192,7 +192,7 @@ export type ConversationsListQuery = {
192
192
  readonly before?: string | null;
193
193
  };
194
194
  export declare const ConversationsListQuery: Schema.Struct<{
195
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
195
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
196
196
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
197
197
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"active">, Schema.Literal<"waiting">, Schema.Literal<"resolved">, Schema.Literal<"escalated">, Schema.Literal<"archived">]>, Schema.Null]>>;
198
198
  readonly channel: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<"email">, Schema.Null]>>;
@@ -988,13 +988,13 @@ export declare const ConversationsListMessagesPathParams: Schema.Struct<{
988
988
  readonly id: Schema.brand<Schema.String, "ConversationId">;
989
989
  }>;
990
990
  export type ConversationsListMessagesQuery = {
991
- readonly limit?: string | null;
991
+ readonly limit?: number | null;
992
992
  readonly cursor?: Cursor | null;
993
993
  readonly after?: string | null;
994
994
  readonly before?: string | null;
995
995
  };
996
996
  export declare const ConversationsListMessagesQuery: Schema.Struct<{
997
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
997
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
998
998
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
999
999
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1000
1000
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -1003,6 +1003,10 @@ export type ConversationsListMessages200 = MessagePage;
1003
1003
  export declare const ConversationsListMessages200: Schema.Struct<{
1004
1004
  readonly items: Schema.$Array<Schema.Struct<{
1005
1005
  readonly id: Schema.brand<Schema.String, "MessageId">;
1006
+ readonly campaign: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
1007
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
1008
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
1009
+ }>, Schema.Null]>>;
1006
1010
  readonly channel: Schema.Literal<"email">;
1007
1011
  readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
1008
1012
  readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
@@ -1986,7 +1990,7 @@ declare const ConversationsGroup_base: HttpApiGroup.HttpApiGroup<"Conversations"
1986
1990
  readonly message: Schema.String;
1987
1991
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
1988
1992
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"conversationsList", "GET", "/v1/conversations", never, Schema.toCodecStringTree<Schema.Struct<{
1989
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1993
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1990
1994
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1991
1995
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"active">, Schema.Literal<"waiting">, Schema.Literal<"resolved">, Schema.Literal<"escalated">, Schema.Literal<"archived">]>, Schema.Null]>>;
1992
1996
  readonly channel: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<"email">, Schema.Null]>>;
@@ -2073,13 +2077,17 @@ declare const ConversationsGroup_base: HttpApiGroup.HttpApiGroup<"Conversations"
2073
2077
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"conversationsListMessages", "GET", "/v1/conversations/:id/messages", Schema.toCodecStringTree<Schema.Struct<{
2074
2078
  readonly id: Schema.brand<Schema.String, "ConversationId">;
2075
2079
  }>>, Schema.toCodecStringTree<Schema.Struct<{
2076
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2080
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
2077
2081
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2078
2082
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2079
2083
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
2080
2084
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
2081
2085
  readonly items: Schema.$Array<Schema.Struct<{
2082
2086
  readonly id: Schema.brand<Schema.String, "MessageId">;
2087
+ readonly campaign: Schema.optionalKey<Schema.Union<readonly [Schema.Struct<{
2088
+ readonly campaignId: Schema.brand<Schema.String, "CampaignId">;
2089
+ readonly runId: Schema.brand<Schema.String, "CampaignRunId">;
2090
+ }>, Schema.Null]>>;
2083
2091
  readonly channel: Schema.Literal<"email">;
2084
2092
  readonly direction: Schema.Union<readonly [Schema.Literal<"outbound">, Schema.Literal<"inbound">]>;
2085
2093
  readonly status: Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"scheduled">, Schema.Literal<"queued">, Schema.Literal<"processing">, Schema.Literal<"sent">, Schema.Literal<"delivered">, Schema.Literal<"read">, Schema.Literal<"failed">, Schema.Literal<"bounced">, Schema.Literal<"complained">]>;
@@ -108,7 +108,7 @@ const Conversation = /* @__PURE__ */ Schema.Struct({
108
108
  updatedAt: Schema.String
109
109
  }).annotate({ identifier: "Conversation" });
110
110
  const ConversationsListQuery = /* @__PURE__ */ Schema.Struct({
111
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
111
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
112
112
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null])),
113
113
  status: Schema.optionalKey(Schema.Union([Schema.Union([
114
114
  Schema.Literal("active"),
@@ -254,7 +254,7 @@ const ConversationsRemoveChannels422 = ValidationError;
254
254
  const ConversationsRemoveChannels500 = InternalError;
255
255
  const ConversationsRemoveChannels504 = GatewayTimeoutError;
256
256
  const ConversationsAddContactsPathParams = /* @__PURE__ */ Schema.Struct({ id: ConversationId });
257
- const ConversationsAddContactsRequestJson = /* @__PURE__ */ Schema.Struct({ contactIds: Schema.TupleWithRest(Schema.Tuple([ContactId]), [ContactId]) });
257
+ const ConversationsAddContactsRequestJson = /* @__PURE__ */ Schema.Struct({ contactIds: Schema.TupleWithRest(Schema.Tuple([ContactId]), [ContactId]).check(Schema.isMaxLength(1e3).annotate({ expected: "a value with a length of at most 1000" })) });
258
258
  const ConversationsAddContacts200 = Conversation;
259
259
  const ConversationsAddContacts401 = UnauthorizedError;
260
260
  const ConversationsAddContacts403 = ForbiddenError;
@@ -263,7 +263,7 @@ const ConversationsAddContacts422 = ValidationError;
263
263
  const ConversationsAddContacts500 = InternalError;
264
264
  const ConversationsAddContacts504 = GatewayTimeoutError;
265
265
  const ConversationsRemoveContactsPathParams = /* @__PURE__ */ Schema.Struct({ id: ConversationId });
266
- const ConversationsRemoveContactsRequestJson = /* @__PURE__ */ Schema.Struct({ contactIds: Schema.TupleWithRest(Schema.Tuple([ContactId]), [ContactId]) });
266
+ const ConversationsRemoveContactsRequestJson = /* @__PURE__ */ Schema.Struct({ contactIds: Schema.TupleWithRest(Schema.Tuple([ContactId]), [ContactId]).check(Schema.isMaxLength(1e3).annotate({ expected: "a value with a length of at most 1000" })) });
267
267
  const ConversationsRemoveContacts200 = Conversation;
268
268
  const ConversationsRemoveContacts401 = UnauthorizedError;
269
269
  const ConversationsRemoveContacts403 = ForbiddenError;
@@ -273,7 +273,7 @@ const ConversationsRemoveContacts500 = InternalError;
273
273
  const ConversationsRemoveContacts504 = GatewayTimeoutError;
274
274
  const ConversationsListMessagesPathParams = /* @__PURE__ */ Schema.Struct({ id: ConversationId });
275
275
  const ConversationsListMessagesQuery = /* @__PURE__ */ Schema.Struct({
276
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
276
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
277
277
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null])),
278
278
  after: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
279
279
  before: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]))
@@ -406,7 +406,7 @@ var ConversationsGroup = class extends HttpApiGroup.make("Conversations").add(Ht
406
406
  ConversationsAddContacts500,
407
407
  ConversationsAddContacts504.pipe(HttpApiSchema.status(504))
408
408
  ]
409
- }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "conversations.addContacts").annotate(OpenApi.Summary, "Add contacts to a conversation").annotate(OpenApi.Description, "Attaches one or more contacts to a conversation and returns the updated conversation."), HttpApiEndpoint.delete("conversationsRemoveContacts", "/v1/conversations/:id/contacts", {
409
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "conversations.addContacts").annotate(OpenApi.Summary, "Add contacts to a conversation").annotate(OpenApi.Description, "Attaches one or more contacts to a conversation and returns the updated conversation. One request carries at most 1000 ids."), HttpApiEndpoint.delete("conversationsRemoveContacts", "/v1/conversations/:id/contacts", {
410
410
  params: ConversationsRemoveContactsPathParams,
411
411
  payload: ConversationsRemoveContactsRequestJson,
412
412
  success: ConversationsRemoveContacts200,
@@ -418,7 +418,7 @@ var ConversationsGroup = class extends HttpApiGroup.make("Conversations").add(Ht
418
418
  ConversationsRemoveContacts500,
419
419
  ConversationsRemoveContacts504.pipe(HttpApiSchema.status(504))
420
420
  ]
421
- }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "conversations.removeContacts").annotate(OpenApi.Summary, "Remove contacts from a conversation").annotate(OpenApi.Description, "Detaches one or more contacts from a conversation and returns the updated conversation."), HttpApiEndpoint.get("conversationsListMessages", "/v1/conversations/:id/messages", {
421
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "conversations.removeContacts").annotate(OpenApi.Summary, "Remove contacts from a conversation").annotate(OpenApi.Description, "Detaches one or more contacts from a conversation and returns the updated conversation. One request carries at most 1000 ids."), HttpApiEndpoint.get("conversationsListMessages", "/v1/conversations/:id/messages", {
422
422
  params: ConversationsListMessagesPathParams,
423
423
  query: ConversationsListMessagesQuery,
424
424
  success: ConversationsListMessages200,
@@ -1,7 +1,7 @@
1
1
  import type * as EffectBrand from "effect/Brand";
2
2
  import { HttpApiEndpoint, HttpApiGroup } from "effect/http-api";
3
3
  import * as Schema from "effect/Schema";
4
- import { ApiKeySecurityMiddleware, BillingProviderError, ConflictError, Cursor, EmailChannelError, EmailDomainId, EmailSenderId, ExternalServiceError, ForbiddenError, GatewayTimeoutError, InternalError, JsonValue, MediaId, MessageId, NamespaceId, OperationId, PaymentRequiredError, RateLimitedError, ResourceNotFoundError, SendsSeries, UnauthorizedError, UnsubscribeId, ValidationError, WebhookEndpointId } from "./shared";
4
+ import { ApiKeySecurityMiddleware, BillingProviderError, ConflictError, Cursor, EmailChannelError, EmailDomainId, EmailSenderId, ExternalServiceError, ForbiddenError, GatewayTimeoutError, InternalError, JsonValue, MediaId, MessageId, NamespaceId, OperationId, PaymentRequiredError, RateLimitedError, ResourceNotFoundError, SendsSeries, TopicId, UnauthorizedError, ValidationError, WebhookEndpointId } from "./shared";
5
5
  export type BlockedEmailId = string & EffectBrand.Brand<"BlockedEmailId">;
6
6
  export declare const BlockedEmailId: Schema.brand<Schema.String, "BlockedEmailId">;
7
7
  export type SuccessResult = {
@@ -1077,14 +1077,14 @@ export declare const SuppressionPage: Schema.Struct<{
1077
1077
  }>;
1078
1078
  export type EmailListBlocksQuery = {
1079
1079
  readonly blockType?: "email" | "domain" | null;
1080
- readonly isActive?: string | null;
1081
- readonly limit?: string | null;
1080
+ readonly isActive?: boolean | null;
1081
+ readonly limit?: number | null;
1082
1082
  readonly cursor?: Cursor | null;
1083
1083
  };
1084
1084
  export declare const EmailListBlocksQuery: Schema.Struct<{
1085
1085
  readonly blockType: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"email">, Schema.Literal<"domain">]>, Schema.Null]>>;
1086
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1087
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1086
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
1087
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1088
1088
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1089
1089
  }>;
1090
1090
  export type EmailListBlocks200 = BlockPage;
@@ -1275,7 +1275,7 @@ export type EmailGetBlockLogsQuery = {
1275
1275
  readonly fromAddress?: string | null;
1276
1276
  readonly after?: string | null;
1277
1277
  readonly before?: string | null;
1278
- readonly limit?: string | null;
1278
+ readonly limit?: number | null;
1279
1279
  readonly cursor?: Cursor | null;
1280
1280
  };
1281
1281
  export declare const EmailGetBlockLogsQuery: Schema.Struct<{
@@ -1283,7 +1283,7 @@ export declare const EmailGetBlockLogsQuery: Schema.Struct<{
1283
1283
  readonly fromAddress: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1284
1284
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1285
1285
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1286
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1286
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1287
1287
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1288
1288
  }>;
1289
1289
  export type EmailGetBlockLogs200 = BlockLogPage;
@@ -1416,15 +1416,15 @@ export declare const EmailGetCatchAllStats500: typeof InternalError;
1416
1416
  export type EmailGetCatchAllStats504 = GatewayTimeoutError;
1417
1417
  export declare const EmailGetCatchAllStats504: typeof GatewayTimeoutError;
1418
1418
  export type EmailListDomainsQuery = {
1419
- readonly limit?: string | null;
1419
+ readonly limit?: number | null;
1420
1420
  readonly cursor?: Cursor | null;
1421
- readonly sendable?: "true" | null;
1421
+ readonly sendable?: true | null;
1422
1422
  readonly namespaceId?: NamespaceId | null;
1423
1423
  };
1424
1424
  export declare const EmailListDomainsQuery: Schema.Struct<{
1425
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1425
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1426
1426
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1427
- readonly sendable: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<"true">, Schema.Null]>>;
1427
+ readonly sendable: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<true>, Schema.Null]>>;
1428
1428
  readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>>;
1429
1429
  }>;
1430
1430
  export type EmailListDomains200 = EmailDomainPage;
@@ -1602,7 +1602,7 @@ export type EmailUpdateDomainConfigRequestJson = {
1602
1602
  readonly openTracking?: boolean | null | null;
1603
1603
  readonly clickTracking?: boolean | null | null;
1604
1604
  readonly replyTo?: ReadonlyArray<string> | null | null;
1605
- readonly unsubscribeGroupId?: UnsubscribeId | null | null;
1605
+ readonly topicId?: TopicId | null | null;
1606
1606
  readonly footerEnabled?: boolean | null | null;
1607
1607
  readonly brandSlug?: string | null | null;
1608
1608
  };
@@ -1610,7 +1610,7 @@ export declare const EmailUpdateDomainConfigRequestJson: Schema.Struct<{
1610
1610
  readonly openTracking: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
1611
1611
  readonly clickTracking: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
1612
1612
  readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
1613
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
1613
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
1614
1614
  readonly footerEnabled: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
1615
1615
  readonly brandSlug: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
1616
1616
  }>;
@@ -1619,7 +1619,7 @@ export type EmailUpdateDomainConfig200 = {
1619
1619
  readonly openTracking: boolean | null;
1620
1620
  readonly clickTracking: boolean | null;
1621
1621
  readonly replyTo: ReadonlyArray<string> | null;
1622
- readonly unsubscribeGroupId: UnsubscribeId | null;
1622
+ readonly topicId: TopicId | null;
1623
1623
  readonly footerEnabled: boolean | null;
1624
1624
  readonly brandSlug: string | null;
1625
1625
  };
@@ -1628,7 +1628,7 @@ export declare const EmailUpdateDomainConfig200: Schema.Struct<{
1628
1628
  readonly openTracking: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
1629
1629
  readonly clickTracking: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
1630
1630
  readonly replyTo: Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>;
1631
- readonly unsubscribeGroupId: Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>;
1631
+ readonly topicId: Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>;
1632
1632
  readonly footerEnabled: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
1633
1633
  readonly brandSlug: Schema.Union<readonly [Schema.String, Schema.Null]>;
1634
1634
  }>;
@@ -3184,11 +3184,11 @@ export type EmailResumeDomainWarming504 = GatewayTimeoutError;
3184
3184
  export declare const EmailResumeDomainWarming504: typeof GatewayTimeoutError;
3185
3185
  export type EmailListForwardingRulesQuery = {
3186
3186
  readonly domainId?: EmailDomainId | null;
3187
- readonly isActive?: string | null;
3187
+ readonly isActive?: boolean | null;
3188
3188
  };
3189
3189
  export declare const EmailListForwardingRulesQuery: Schema.Struct<{
3190
3190
  readonly domainId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>>;
3191
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3191
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3192
3192
  }>;
3193
3193
  export type EmailListForwardingRules200 = ForwardingRuleList;
3194
3194
  export declare const EmailListForwardingRules200: Schema.Struct<{
@@ -3374,7 +3374,7 @@ export type EmailGetForwardingLogQuery = {
3374
3374
  readonly status?: "pending" | "forwarded" | "failed" | null;
3375
3375
  readonly after?: string | null;
3376
3376
  readonly before?: string | null;
3377
- readonly limit?: string | null;
3377
+ readonly limit?: number | null;
3378
3378
  readonly cursor?: Cursor | null;
3379
3379
  };
3380
3380
  export declare const EmailGetForwardingLogQuery: Schema.Struct<{
@@ -3382,7 +3382,7 @@ export declare const EmailGetForwardingLogQuery: Schema.Struct<{
3382
3382
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"forwarded">, Schema.Literal<"failed">]>, Schema.Null]>>;
3383
3383
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3384
3384
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3385
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3385
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3386
3386
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3387
3387
  }>;
3388
3388
  export type EmailGetForwardingLog200 = ForwardingLogPage;
@@ -3544,19 +3544,19 @@ export declare const EmailRespondToOnboardingInformationRequest500: typeof Inter
3544
3544
  export type EmailRespondToOnboardingInformationRequest504 = GatewayTimeoutError;
3545
3545
  export declare const EmailRespondToOnboardingInformationRequest504: typeof GatewayTimeoutError;
3546
3546
  export type EmailListSendersQuery = {
3547
- readonly limit?: string | null;
3547
+ readonly limit?: number | null;
3548
3548
  readonly cursor?: Cursor | null;
3549
3549
  readonly verificationStatus?: "pending" | "verified" | "failed" | null;
3550
- readonly isActive?: string | null;
3551
- readonly isDefault?: string | null;
3550
+ readonly isActive?: boolean | null;
3551
+ readonly isDefault?: boolean | null;
3552
3552
  readonly namespaceId?: NamespaceId | null;
3553
3553
  };
3554
3554
  export declare const EmailListSendersQuery: Schema.Struct<{
3555
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3555
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3556
3556
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3557
3557
  readonly verificationStatus: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"verified">, Schema.Literal<"failed">]>, Schema.Null]>>;
3558
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3559
- readonly isDefault: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3558
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3559
+ readonly isDefault: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
3560
3560
  readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>>;
3561
3561
  }>;
3562
3562
  export type EmailListSenders200 = EmailSenderPage;
@@ -3831,14 +3831,14 @@ export type EmailListSuppressionsQuery = {
3831
3831
  readonly type?: "bounce" | "complaint" | "unsubscribe" | "manual" | null;
3832
3832
  readonly status?: "active" | "expired" | null;
3833
3833
  readonly search?: string | null;
3834
- readonly limit?: string | null;
3834
+ readonly limit?: number | null;
3835
3835
  readonly cursor?: Cursor | null;
3836
3836
  };
3837
3837
  export declare const EmailListSuppressionsQuery: Schema.Struct<{
3838
3838
  readonly type: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">]>, Schema.Null]>>;
3839
3839
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"active">, Schema.Literal<"expired">]>, Schema.Null]>>;
3840
3840
  readonly search: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3841
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3841
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
3842
3842
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
3843
3843
  }>;
3844
3844
  export type EmailListSuppressions200 = SuppressionPage;
@@ -6677,7 +6677,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
6677
6677
  readonly fromAddress: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
6678
6678
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
6679
6679
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
6680
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
6680
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
6681
6681
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
6682
6682
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
6683
6683
  readonly items: Schema.$Array<Schema.Struct<{
@@ -7678,7 +7678,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
7678
7678
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"forwarded">, Schema.Literal<"failed">]>, Schema.Null]>>;
7679
7679
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
7680
7680
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
7681
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
7681
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
7682
7682
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
7683
7683
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
7684
7684
  readonly items: Schema.$Array<Schema.Struct<{
@@ -8282,8 +8282,8 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
8282
8282
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
8283
8283
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"emailListBlocks", "GET", "/v1/email/blocks", never, Schema.toCodecStringTree<Schema.Struct<{
8284
8284
  readonly blockType: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"email">, Schema.Literal<"domain">]>, Schema.Null]>>;
8285
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8286
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8285
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
8286
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
8287
8287
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8288
8288
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8289
8289
  readonly items: Schema.$Array<Schema.Struct<{
@@ -8360,9 +8360,9 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
8360
8360
  readonly message: Schema.String;
8361
8361
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
8362
8362
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"emailListDomains", "GET", "/v1/email/domains", never, Schema.toCodecStringTree<Schema.Struct<{
8363
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8363
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
8364
8364
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8365
- readonly sendable: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<"true">, Schema.Null]>>;
8365
+ readonly sendable: Schema.optionalKey<Schema.Union<readonly [Schema.Literal<true>, Schema.Null]>>;
8366
8366
  readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>>;
8367
8367
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8368
8368
  readonly items: Schema.$Array<Schema.Struct<{
@@ -8446,7 +8446,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
8446
8446
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
8447
8447
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"emailListForwardingRules", "GET", "/v1/email/forwarding", never, Schema.toCodecStringTree<Schema.Struct<{
8448
8448
  readonly domainId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "EmailDomainId">, Schema.Null]>>;
8449
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8449
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
8450
8450
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8451
8451
  readonly items: Schema.$Array<Schema.Struct<{
8452
8452
  readonly id: Schema.brand<Schema.String, "EmailForwardingRuleId">;
@@ -8524,11 +8524,11 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
8524
8524
  readonly message: Schema.String;
8525
8525
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
8526
8526
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"emailListSenders", "GET", "/v1/email/senders", never, Schema.toCodecStringTree<Schema.Struct<{
8527
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8527
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
8528
8528
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8529
8529
  readonly verificationStatus: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"pending">, Schema.Literal<"verified">, Schema.Literal<"failed">]>, Schema.Null]>>;
8530
- readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8531
- readonly isDefault: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8530
+ readonly isActive: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
8531
+ readonly isDefault: Schema.optionalKey<Schema.Union<readonly [Schema.Boolean, Schema.Null]>>;
8532
8532
  readonly namespaceId: Schema.optionalKey<Schema.Union<readonly [Schema.brand<Schema.String, "NamespaceId">, Schema.Null]>>;
8533
8533
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8534
8534
  readonly items: Schema.$Array<Schema.Struct<{
@@ -8621,7 +8621,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
8621
8621
  readonly type: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"bounce">, Schema.Literal<"complaint">, Schema.Literal<"unsubscribe">, Schema.Literal<"manual">]>, Schema.Null]>>;
8622
8622
  readonly status: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Literal<"active">, Schema.Literal<"expired">]>, Schema.Null]>>;
8623
8623
  readonly search: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8624
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8624
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
8625
8625
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
8626
8626
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
8627
8627
  readonly items: Schema.$Array<Schema.Struct<{
@@ -10261,7 +10261,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
10261
10261
  readonly openTracking: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
10262
10262
  readonly clickTracking: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
10263
10263
  readonly replyTo: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>, Schema.Null]>>;
10264
- readonly unsubscribeGroupId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>, Schema.Null]>>;
10264
+ readonly topicId: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>, Schema.Null]>>;
10265
10265
  readonly footerEnabled: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.Boolean, Schema.Null]>, Schema.Null]>>;
10266
10266
  readonly brandSlug: Schema.optionalKey<Schema.Union<readonly [Schema.Union<readonly [Schema.String, Schema.Null]>, Schema.Null]>>;
10267
10267
  }>>, never, Schema.toCodecJson<Schema.Struct<{
@@ -10269,7 +10269,7 @@ declare const EmailGroup_base: HttpApiGroup.HttpApiGroup<"Email", HttpApiEndpoin
10269
10269
  readonly openTracking: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
10270
10270
  readonly clickTracking: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
10271
10271
  readonly replyTo: Schema.Union<readonly [Schema.$Array<Schema.String>, Schema.Null]>;
10272
- readonly unsubscribeGroupId: Schema.Union<readonly [Schema.brand<Schema.String, "UnsubscribeId">, Schema.Null]>;
10272
+ readonly topicId: Schema.Union<readonly [Schema.brand<Schema.String, "TopicId">, Schema.Null]>;
10273
10273
  readonly footerEnabled: Schema.Union<readonly [Schema.Boolean, Schema.Null]>;
10274
10274
  readonly brandSlug: Schema.Union<readonly [Schema.String, Schema.Null]>;
10275
10275
  }>>, Schema.toCodecJson<Schema.decodeTo<Schema.declareConstructor<ForbiddenError, {
@@ -1,4 +1,4 @@
1
- import { ApiKeySecurityMiddleware, BillingProviderError, ConflictError, Cursor, EmailChannelError, EmailDomainId, EmailSenderId, ExternalServiceError, ForbiddenError, GatewayTimeoutError, InternalError, JsonValue, MediaId, MessageId, NamespaceId, OperationId, PaymentRequiredError, RateLimitedError, ResourceNotFoundError, SendsSeries, UnauthorizedError, UnsubscribeId, ValidationError, WebhookEndpointId } from "./shared.js";
1
+ import { ApiKeySecurityMiddleware, BillingProviderError, ConflictError, Cursor, EmailChannelError, EmailDomainId, EmailSenderId, ExternalServiceError, ForbiddenError, GatewayTimeoutError, InternalError, JsonValue, MediaId, MessageId, NamespaceId, OperationId, PaymentRequiredError, RateLimitedError, ResourceNotFoundError, SendsSeries, TopicId, UnauthorizedError, ValidationError, WebhookEndpointId } from "./shared.js";
2
2
  import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/http-api";
3
3
  import * as Schema from "effect/Schema";
4
4
  //#region src/effect/generated/email.ts
@@ -819,8 +819,8 @@ const SuppressionPage = /* @__PURE__ */ Schema.Struct({
819
819
  }).annotate({ identifier: "SuppressionPage" });
820
820
  const EmailListBlocksQuery = /* @__PURE__ */ Schema.Struct({
821
821
  blockType: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Literal("email"), Schema.Literal("domain")]), Schema.Null])),
822
- isActive: Schema.optionalKey(Schema.Union([Schema.String.annotate({ contentMediaType: "application/json" }), Schema.Null])),
823
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
822
+ isActive: Schema.optionalKey(Schema.Union([Schema.Boolean, Schema.Null])),
823
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
824
824
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
825
825
  });
826
826
  const EmailListBlocks200 = BlockPage;
@@ -905,7 +905,7 @@ const EmailGetBlockLogsQuery = /* @__PURE__ */ Schema.Struct({
905
905
  fromAddress: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
906
906
  after: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
907
907
  before: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
908
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
908
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
909
909
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
910
910
  });
911
911
  const EmailGetBlockLogs200 = BlockLogPage;
@@ -962,9 +962,9 @@ const EmailGetCatchAllStats422 = ValidationError;
962
962
  const EmailGetCatchAllStats500 = InternalError;
963
963
  const EmailGetCatchAllStats504 = GatewayTimeoutError;
964
964
  const EmailListDomainsQuery = /* @__PURE__ */ Schema.Struct({
965
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
965
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
966
966
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null])),
967
- sendable: Schema.optionalKey(Schema.Union([Schema.Literal("true"), Schema.Null])),
967
+ sendable: Schema.optionalKey(Schema.Union([Schema.Literal(true), Schema.Null])),
968
968
  namespaceId: Schema.optionalKey(Schema.Union([NamespaceId, Schema.Null]))
969
969
  });
970
970
  const EmailListDomains200 = EmailDomainPage;
@@ -1014,7 +1014,7 @@ const EmailUpdateDomainConfigRequestJson = /* @__PURE__ */ Schema.Struct({
1014
1014
  openTracking: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Boolean, Schema.Null]), Schema.Null])),
1015
1015
  clickTracking: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Boolean, Schema.Null]), Schema.Null])),
1016
1016
  replyTo: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Array(Schema.String), Schema.Null]), Schema.Null])),
1017
- unsubscribeGroupId: Schema.optionalKey(Schema.Union([Schema.Union([UnsubscribeId, Schema.Null]), Schema.Null])),
1017
+ topicId: Schema.optionalKey(Schema.Union([Schema.Union([TopicId, Schema.Null]), Schema.Null])),
1018
1018
  footerEnabled: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Boolean, Schema.Null]), Schema.Null])),
1019
1019
  brandSlug: Schema.optionalKey(Schema.Union([Schema.Union([Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$", "u")).annotate({ expected: "a string matching the RegExp ^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$" })), Schema.Null]), Schema.Null]))
1020
1020
  });
@@ -1023,7 +1023,7 @@ const EmailUpdateDomainConfig200 = /* @__PURE__ */ Schema.Struct({
1023
1023
  openTracking: Schema.Union([Schema.Boolean, Schema.Null]),
1024
1024
  clickTracking: Schema.Union([Schema.Boolean, Schema.Null]),
1025
1025
  replyTo: Schema.Union([Schema.Array(Schema.String), Schema.Null]),
1026
- unsubscribeGroupId: Schema.Union([UnsubscribeId, Schema.Null]),
1026
+ topicId: Schema.Union([TopicId, Schema.Null]),
1027
1027
  footerEnabled: Schema.Union([Schema.Boolean, Schema.Null]),
1028
1028
  brandSlug: Schema.Union([Schema.String.check(Schema.isPattern(/* @__PURE__ */ new RegExp("^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$", "u")).annotate({ expected: "a string matching the RegExp ^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$" })), Schema.Null])
1029
1029
  });
@@ -1321,7 +1321,7 @@ const EmailResumeDomainWarming500 = InternalError;
1321
1321
  const EmailResumeDomainWarming504 = GatewayTimeoutError;
1322
1322
  const EmailListForwardingRulesQuery = /* @__PURE__ */ Schema.Struct({
1323
1323
  domainId: Schema.optionalKey(Schema.Union([EmailDomainId, Schema.Null])),
1324
- isActive: Schema.optionalKey(Schema.Union([Schema.String.annotate({ contentMediaType: "application/json" }), Schema.Null]))
1324
+ isActive: Schema.optionalKey(Schema.Union([Schema.Boolean, Schema.Null]))
1325
1325
  });
1326
1326
  const EmailListForwardingRules200 = ForwardingRuleList;
1327
1327
  const EmailListForwardingRules401 = UnauthorizedError;
@@ -1402,7 +1402,7 @@ const EmailGetForwardingLogQuery = /* @__PURE__ */ Schema.Struct({
1402
1402
  ]), Schema.Null])),
1403
1403
  after: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1404
1404
  before: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1405
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1405
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
1406
1406
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
1407
1407
  });
1408
1408
  const EmailGetForwardingLog200 = ForwardingLogPage;
@@ -1438,15 +1438,15 @@ const EmailRespondToOnboardingInformationRequest422 = ValidationError;
1438
1438
  const EmailRespondToOnboardingInformationRequest500 = InternalError;
1439
1439
  const EmailRespondToOnboardingInformationRequest504 = GatewayTimeoutError;
1440
1440
  const EmailListSendersQuery = /* @__PURE__ */ Schema.Struct({
1441
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1441
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
1442
1442
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null])),
1443
1443
  verificationStatus: Schema.optionalKey(Schema.Union([Schema.Union([
1444
1444
  Schema.Literal("pending"),
1445
1445
  Schema.Literal("verified"),
1446
1446
  Schema.Literal("failed")
1447
1447
  ]), Schema.Null])),
1448
- isActive: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1449
- isDefault: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1448
+ isActive: Schema.optionalKey(Schema.Union([Schema.Boolean, Schema.Null])),
1449
+ isDefault: Schema.optionalKey(Schema.Union([Schema.Boolean, Schema.Null])),
1450
1450
  namespaceId: Schema.optionalKey(Schema.Union([NamespaceId, Schema.Null]))
1451
1451
  });
1452
1452
  const EmailListSenders200 = EmailSenderPage;
@@ -1585,7 +1585,7 @@ const EmailListSuppressionsQuery = /* @__PURE__ */ Schema.Struct({
1585
1585
  ]), Schema.Null])),
1586
1586
  status: Schema.optionalKey(Schema.Union([Schema.Union([Schema.Literal("active"), Schema.Literal("expired")]), Schema.Null])),
1587
1587
  search: Schema.optionalKey(Schema.Union([Schema.String.check(Schema.isMaxCodePoints(256).annotate({ expected: "a string with at most 256 code points" })).check(Schema.isMaxLength(256).annotate({ expected: "a value with a length of at most 256" })), Schema.Null])),
1588
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
1588
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
1589
1589
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null]))
1590
1590
  });
1591
1591
  const EmailListSuppressions200 = SuppressionPage;
@@ -1801,7 +1801,7 @@ var EmailGroup = class extends HttpApiGroup.make("Email").add(HttpApiEndpoint.ge
1801
1801
  EmailUpdateDomainConfig500,
1802
1802
  EmailUpdateDomainConfig504.pipe(HttpApiSchema.status(504))
1803
1803
  ]
1804
- }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "email.updateDomainConfig").annotate(OpenApi.Summary, "Update a domain's send-settings config").annotate(OpenApi.Description, "Overrides the domain's open/click tracking, reply-to, unsubscribe-group defaults, and the brand its mail uses for the settings cascade. An omitted field is left unchanged; null clears it back to the organization default. Returns the saved config."), HttpApiEndpoint.get("emailGetCustomTracking", "/v1/email/domains/:id/custom-tracking", {
1804
+ }).middleware(ApiKeySecurityMiddleware).annotate(OpenApi.Identifier, "email.updateDomainConfig").annotate(OpenApi.Summary, "Update a domain's send-settings config").annotate(OpenApi.Description, "Overrides the domain's open/click tracking, reply-to, topic defaults, and the brand its mail uses for the settings cascade. An omitted field is left unchanged; null clears it back to the organization default. Returns the saved config."), HttpApiEndpoint.get("emailGetCustomTracking", "/v1/email/domains/:id/custom-tracking", {
1805
1805
  params: EmailGetCustomTrackingPathParams,
1806
1806
  success: EmailGetCustomTracking200,
1807
1807
  error: [
@@ -301,13 +301,13 @@ export declare const UpgradeExtensionResponse: Schema.Struct<{
301
301
  }>, Schema.Null]>;
302
302
  }>;
303
303
  export type ExtensionInstallationsListQuery = {
304
- readonly limit?: string | null;
304
+ readonly limit?: number | null;
305
305
  readonly cursor?: Cursor | null;
306
306
  readonly after?: string | null;
307
307
  readonly before?: string | null;
308
308
  };
309
309
  export declare const ExtensionInstallationsListQuery: Schema.Struct<{
310
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
310
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
311
311
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
312
312
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
313
313
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -1318,7 +1318,7 @@ declare const ExtensionInstallationsGroup_base: HttpApiGroup.HttpApiGroup<"Exten
1318
1318
  readonly message: Schema.String;
1319
1319
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
1320
1320
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"extensionInstallationsList", "GET", "/v1/extension-installations", never, Schema.toCodecStringTree<Schema.Struct<{
1321
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1321
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
1322
1322
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1323
1323
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
1324
1324
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -162,7 +162,7 @@ const UpgradeExtensionResponse = /* @__PURE__ */ Schema.Struct({
162
162
  versionChange: Schema.Union([ExtensionVersionChange, Schema.Null])
163
163
  }).annotate({ identifier: "UpgradeExtensionResponse" });
164
164
  const ExtensionInstallationsListQuery = /* @__PURE__ */ Schema.Struct({
165
- limit: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
165
+ limit: Schema.optionalKey(Schema.Union([Schema.Finite.annotate({ description: "Items per page, at most 100." }).check(Schema.isInt().annotate({ expected: "an integer" })).check(Schema.isLessThanOrEqualTo(100).annotate({ expected: "a value less than or equal to 100" })).check(Schema.isGreaterThan(0).annotate({ expected: "a value greater than 0" })), Schema.Null])),
166
166
  cursor: Schema.optionalKey(Schema.Union([Cursor, Schema.Null])),
167
167
  after: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null])),
168
168
  before: Schema.optionalKey(Schema.Union([Schema.String, Schema.Null]))
@@ -160,13 +160,13 @@ export declare const PublishExtensionVersionResponse: Schema.Struct<{
160
160
  }>;
161
161
  }>;
162
162
  export type ExtensionsListQuery = {
163
- readonly limit?: string | null;
163
+ readonly limit?: number | null;
164
164
  readonly cursor?: Cursor | null;
165
165
  readonly after?: string | null;
166
166
  readonly before?: string | null;
167
167
  };
168
168
  export declare const ExtensionsListQuery: Schema.Struct<{
169
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
169
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
170
170
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
171
171
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
172
172
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -312,11 +312,11 @@ export declare const ExtensionsListVersionsPathParams: Schema.Struct<{
312
312
  readonly id: Schema.String;
313
313
  }>;
314
314
  export type ExtensionsListVersionsQuery = {
315
- readonly limit?: string | null;
315
+ readonly limit?: number | null;
316
316
  readonly cursor?: Cursor | null;
317
317
  };
318
318
  export declare const ExtensionsListVersionsQuery: Schema.Struct<{
319
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
319
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
320
320
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
321
321
  }>;
322
322
  export type ExtensionsListVersions200 = ExtensionVersionPage;
@@ -581,7 +581,7 @@ declare const ExtensionsGroup_base: HttpApiGroup.HttpApiGroup<"Extensions", Http
581
581
  readonly message: Schema.String;
582
582
  readonly fields: Schema.optionalKey<Schema.Union<readonly [Schema.$Record<Schema.String, Schema.$Array<Schema.String>>, Schema.Null]>>;
583
583
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"extensionsList", "GET", "/v1/extensions", never, Schema.toCodecStringTree<Schema.Struct<{
584
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
584
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
585
585
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
586
586
  readonly after: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
587
587
  readonly before: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
@@ -683,7 +683,7 @@ declare const ExtensionsGroup_base: HttpApiGroup.HttpApiGroup<"Extensions", Http
683
683
  }>, never, never> | typeof InternalError>, ApiKeySecurityMiddleware, never> | HttpApiEndpoint.HttpApiEndpoint<"extensionsListVersions", "GET", "/v1/extensions/:id/versions", Schema.toCodecStringTree<Schema.Struct<{
684
684
  readonly id: Schema.String;
685
685
  }>>, Schema.toCodecStringTree<Schema.Struct<{
686
- readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
686
+ readonly limit: Schema.optionalKey<Schema.Union<readonly [Schema.Finite, Schema.Null]>>;
687
687
  readonly cursor: Schema.optionalKey<Schema.Union<readonly [Schema.String, Schema.Null]>>;
688
688
  }>>, never, never, Schema.toCodecJson<Schema.Struct<{
689
689
  readonly items: Schema.$Array<Schema.Struct<{