samva 0.13.0 → 0.14.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.
- package/AGENTS.md +9 -0
- package/README.md +51 -6
- package/dist/{categories-Bcwq5jPV.js → categories-BGUBFdH9.js} +9 -1
- package/dist/client/sdk.gen.d.ts +105 -18
- package/dist/client/types.gen.d.ts +786 -118
- package/dist/{client-DYPNDvVU.js → client-CZjhOKPM.js} +694 -122
- package/dist/effect/analytics.d.ts +6 -6
- package/dist/effect/analytics.js +1 -1
- package/dist/effect/api-keys.d.ts +20 -20
- package/dist/effect/api-keys.js +1 -1
- package/dist/effect/attachments.js +1 -1
- package/dist/effect/brands.js +2 -2
- package/dist/effect/campaigns.d.ts +12 -12
- package/dist/effect/campaigns.js +1 -1
- package/dist/effect/categories.js +1 -1
- package/dist/effect/client.js +1 -1
- package/dist/effect/contact-groups.d.ts +9 -9
- package/dist/effect/contact-groups.js +1 -1
- package/dist/effect/contacts.d.ts +126 -73
- package/dist/effect/contacts.js +1 -1
- package/dist/effect/conversations.d.ts +20 -20
- package/dist/effect/conversations.js +1 -1
- package/dist/effect/custom-fields.d.ts +1 -1
- package/dist/effect/custom-fields.js +1 -1
- package/dist/effect/email.d.ts +26 -26
- package/dist/effect/email.js +2 -2
- package/dist/effect/extension-installations.d.ts +3 -3
- package/dist/effect/extension-installations.js +1 -1
- package/dist/effect/extensions.d.ts +3 -3
- package/dist/effect/extensions.js +1 -1
- package/dist/effect/feedback.d.ts +1 -1
- package/dist/effect/feedback.js +2 -2
- package/dist/effect/generated-metadata.d.ts +8 -0
- package/dist/effect/generated.d.ts +6184 -1243
- package/dist/effect/index.d.ts +2 -1
- package/dist/effect/index.js +6 -5
- package/dist/effect/internal/client.d.ts +2 -2
- package/dist/effect/internal/operation.d.ts +9 -9
- package/dist/effect/mailboxes.d.ts +1726 -109
- package/dist/effect/mailboxes.js +3 -3
- package/dist/effect/media.d.ts +1 -1
- package/dist/effect/media.js +1 -1
- package/dist/effect/messages.d.ts +19 -17
- package/dist/effect/messages.js +1 -1
- package/dist/effect/namespaces.js +1 -1
- package/dist/effect/operations.d.ts +6 -6
- package/dist/effect/operations.js +1 -1
- package/dist/effect/organizations.d.ts +30 -0
- package/dist/effect/organizations.js +4 -2
- package/dist/effect/retry.js +1 -1
- package/dist/effect/scheduled-messages.d.ts +6 -6
- package/dist/effect/scheduled-messages.js +1 -1
- package/dist/effect/subscriptions.d.ts +15 -0
- package/dist/effect/subscriptions.js +9 -0
- package/dist/effect/templates.d.ts +52 -14
- package/dist/effect/templates.js +5 -3
- package/dist/effect/unsubscribe-groups.d.ts +1 -1
- package/dist/effect/unsubscribe-groups.js +1 -1
- package/dist/effect/webhooks.d.ts +15 -15
- package/dist/effect/webhooks.js +2 -2
- package/dist/index.js +4 -4
- package/dist/{inline-attachments-B56eS0MF.js → inline-attachments-BrNnSMF2.js} +2 -2
- package/dist/{mailbox-events-CsbF35vH.js → mailbox-events-VKR4f3qq.js} +6 -4
- package/dist/mailbox-events.d.ts +1 -1
- package/dist/{mailboxes-D3Kx7elM.js → mailboxes-DT02zP7q.js} +13 -5
- package/dist/{operation-B_Ty1LG-.js → operation-g8nAzmIM.js} +29 -3
- package/dist/promises/errors.gen.d.ts +26 -2
- package/dist/promises/index.d.ts +6 -4
- package/dist/promises/index.js +4 -4
- package/dist/promises/types.gen.d.ts +1 -1
- package/dist/{promises-D9FJyU0q.js → promises-BFRKhpSS.js} +941 -38
- package/dist/service-map.d.ts +35 -0
- package/package.json +7 -2
|
@@ -222,13 +222,13 @@ export declare const getAgentActivity: (input: {
|
|
|
222
222
|
readonly count: number;
|
|
223
223
|
}[];
|
|
224
224
|
readonly byState: readonly {
|
|
225
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
225
|
+
readonly state: "accepted" | "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "completed" | "executed" | "executing" | "failed" | "notSent" | "policyDenied" | "proposed" | "queued" | "uncertain";
|
|
226
226
|
readonly count: number;
|
|
227
227
|
}[];
|
|
228
228
|
};
|
|
229
229
|
readonly events: {
|
|
230
230
|
readonly byType: readonly {
|
|
231
|
-
readonly type: "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "
|
|
231
|
+
readonly type: "action.accepted" | "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "email.received" | "email.released" | "email.sent" | "mailbox.created" | "thread.created";
|
|
232
232
|
readonly count: number;
|
|
233
233
|
}[];
|
|
234
234
|
};
|
|
@@ -289,8 +289,8 @@ export declare const listGrants: ((input: {
|
|
|
289
289
|
export declare const createGrant: (input: {
|
|
290
290
|
readonly id: string;
|
|
291
291
|
readonly userId: string;
|
|
292
|
-
readonly role:
|
|
293
|
-
readonly sendMode?:
|
|
292
|
+
readonly role: "admin" | "collaborator" | "viewer";
|
|
293
|
+
readonly sendMode?: "approval" | "send" | null | undefined;
|
|
294
294
|
}) => import("effect/Effect").Effect<{
|
|
295
295
|
readonly id: string & import("effect/Brand").Brand<"MailboxGrantId">;
|
|
296
296
|
readonly actor: {
|
|
@@ -305,8 +305,8 @@ export declare const createGrant: (input: {
|
|
|
305
305
|
export declare const updateGrant: (input: {
|
|
306
306
|
readonly id: string;
|
|
307
307
|
readonly grantId: string;
|
|
308
|
-
readonly role?:
|
|
309
|
-
readonly sendMode?:
|
|
308
|
+
readonly role?: "admin" | "collaborator" | "viewer" | null | undefined;
|
|
309
|
+
readonly sendMode?: "approval" | "send" | null | undefined;
|
|
310
310
|
}) => import("effect/Effect").Effect<{
|
|
311
311
|
readonly id: string & import("effect/Brand").Brand<"MailboxGrantId">;
|
|
312
312
|
readonly actor: {
|
|
@@ -340,7 +340,7 @@ export declare const listPolicies: (input: {
|
|
|
340
340
|
export declare const createPolicy: (input: {
|
|
341
341
|
readonly id: string;
|
|
342
342
|
readonly name: string;
|
|
343
|
-
readonly outcome:
|
|
343
|
+
readonly outcome: "deny" | "requireApproval";
|
|
344
344
|
readonly reason?: string | null | undefined;
|
|
345
345
|
readonly enabled?: boolean | null | undefined;
|
|
346
346
|
}) => import("effect/Effect").Effect<{
|
|
@@ -368,7 +368,7 @@ export declare const updatePolicy: (input: {
|
|
|
368
368
|
readonly id: string;
|
|
369
369
|
readonly policyId: string;
|
|
370
370
|
readonly name?: string | null | undefined;
|
|
371
|
-
readonly outcome?:
|
|
371
|
+
readonly outcome?: "deny" | "requireApproval" | null | undefined;
|
|
372
372
|
readonly reason?: string | null | undefined;
|
|
373
373
|
readonly enabled?: boolean | null | undefined;
|
|
374
374
|
}) => import("effect/Effect").Effect<{
|
|
@@ -411,7 +411,7 @@ export declare const createLabel: (input: {
|
|
|
411
411
|
readonly id: string;
|
|
412
412
|
readonly slug: string;
|
|
413
413
|
readonly displayName: string;
|
|
414
|
-
readonly color?:
|
|
414
|
+
readonly color?: "agent" | "billing" | "domain" | "important" | "neutral" | "routing" | null | undefined;
|
|
415
415
|
}) => import("effect/Effect").Effect<{
|
|
416
416
|
readonly id: string & import("effect/Brand").Brand<"MailboxLabelId">;
|
|
417
417
|
readonly slug: string;
|
|
@@ -424,7 +424,7 @@ export declare const updateLabel: (input: {
|
|
|
424
424
|
readonly id: string;
|
|
425
425
|
readonly labelId: string;
|
|
426
426
|
readonly displayName?: string | null | undefined;
|
|
427
|
-
readonly color?:
|
|
427
|
+
readonly color?: "agent" | "billing" | "domain" | "important" | "neutral" | "routing" | null | undefined;
|
|
428
428
|
}) => import("effect/Effect").Effect<{
|
|
429
429
|
readonly id: string & import("effect/Brand").Brand<"MailboxLabelId">;
|
|
430
430
|
readonly slug: string;
|
|
@@ -446,11 +446,11 @@ export declare const listThreads: ((input: {
|
|
|
446
446
|
readonly after?: string | null | undefined;
|
|
447
447
|
readonly before?: string | null | undefined;
|
|
448
448
|
readonly q?: string | null | undefined;
|
|
449
|
-
readonly folder?:
|
|
449
|
+
readonly folder?: "archived" | "assigned" | "inbox" | "pending" | "sent" | "trash" | null | undefined;
|
|
450
450
|
readonly label?: string | null | undefined;
|
|
451
|
-
readonly unread?:
|
|
452
|
-
readonly starred?:
|
|
453
|
-
readonly snoozed?:
|
|
451
|
+
readonly unread?: "false" | "true" | null | undefined;
|
|
452
|
+
readonly starred?: "false" | "true" | null | undefined;
|
|
453
|
+
readonly snoozed?: "false" | "true" | null | undefined;
|
|
454
454
|
}) => import("effect/Effect").Effect<{
|
|
455
455
|
readonly items: readonly {
|
|
456
456
|
readonly id: string & import("effect/Brand").Brand<"MailboxThreadId">;
|
|
@@ -480,11 +480,11 @@ export declare const listThreads: ((input: {
|
|
|
480
480
|
readonly after?: string | null | undefined;
|
|
481
481
|
readonly before?: string | null | undefined;
|
|
482
482
|
readonly q?: string | null | undefined;
|
|
483
|
-
readonly folder?:
|
|
483
|
+
readonly folder?: "archived" | "assigned" | "inbox" | "pending" | "sent" | "trash" | null | undefined;
|
|
484
484
|
readonly label?: string | null | undefined;
|
|
485
|
-
readonly unread?:
|
|
486
|
-
readonly starred?:
|
|
487
|
-
readonly snoozed?:
|
|
485
|
+
readonly unread?: "false" | "true" | null | undefined;
|
|
486
|
+
readonly starred?: "false" | "true" | null | undefined;
|
|
487
|
+
readonly snoozed?: "false" | "true" | null | undefined;
|
|
488
488
|
}) => import("effect/Stream").Stream<{
|
|
489
489
|
readonly items: readonly {
|
|
490
490
|
readonly id: string & import("effect/Brand").Brand<"MailboxThreadId">;
|
|
@@ -514,11 +514,11 @@ export declare const listThreads: ((input: {
|
|
|
514
514
|
readonly after?: string | null | undefined;
|
|
515
515
|
readonly before?: string | null | undefined;
|
|
516
516
|
readonly q?: string | null | undefined;
|
|
517
|
-
readonly folder?:
|
|
517
|
+
readonly folder?: "archived" | "assigned" | "inbox" | "pending" | "sent" | "trash" | null | undefined;
|
|
518
518
|
readonly label?: string | null | undefined;
|
|
519
|
-
readonly unread?:
|
|
520
|
-
readonly starred?:
|
|
521
|
-
readonly snoozed?:
|
|
519
|
+
readonly unread?: "false" | "true" | null | undefined;
|
|
520
|
+
readonly starred?: "false" | "true" | null | undefined;
|
|
521
|
+
readonly snoozed?: "false" | "true" | null | undefined;
|
|
522
522
|
}) => import("effect/Stream").Stream<{
|
|
523
523
|
readonly id: string & import("effect/Brand").Brand<"MailboxThreadId">;
|
|
524
524
|
readonly subject: string | null;
|
|
@@ -575,8 +575,8 @@ export declare const getThread: (input: {
|
|
|
575
575
|
export declare const updateThread: (input: {
|
|
576
576
|
readonly id: string;
|
|
577
577
|
readonly threadId: string;
|
|
578
|
-
readonly folder?:
|
|
579
|
-
readonly priority?:
|
|
578
|
+
readonly folder?: "archived" | "assigned" | "inbox" | "pending" | "sent" | "trash" | null | undefined;
|
|
579
|
+
readonly priority?: "high" | "low" | "normal" | "urgent" | null | undefined;
|
|
580
580
|
readonly read?: boolean | null | undefined;
|
|
581
581
|
readonly starred?: boolean | null | undefined;
|
|
582
582
|
readonly snoozedUntil?: string | null | undefined;
|
|
@@ -999,18 +999,141 @@ export declare const sendMessage: (input: {
|
|
|
999
999
|
readonly idempotencyKey?: string | undefined;
|
|
1000
1000
|
}) => import("effect/Effect").Effect<{
|
|
1001
1001
|
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1002
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1002
1003
|
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1003
|
-
readonly threadId: string & import("effect/Brand").Brand<"MailboxThreadId"
|
|
1004
|
-
readonly
|
|
1005
|
-
readonly
|
|
1004
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1005
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1006
|
+
readonly acceptedAt: string | null;
|
|
1007
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1008
|
+
readonly reviewExpectedAt: string | null;
|
|
1009
|
+
readonly skippedRecipients: readonly {
|
|
1010
|
+
readonly address: string;
|
|
1011
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1012
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1013
|
+
}[];
|
|
1014
|
+
readonly executeUntil: string | null;
|
|
1015
|
+
readonly retryAt: string | null;
|
|
1016
|
+
readonly problem: {
|
|
1017
|
+
readonly code: string;
|
|
1018
|
+
readonly message: string;
|
|
1019
|
+
readonly error?: {
|
|
1020
|
+
readonly _tag: "SenderNotReadyError";
|
|
1021
|
+
readonly message: string;
|
|
1022
|
+
readonly sender: string;
|
|
1023
|
+
readonly retryAfterSeconds?: number | null;
|
|
1024
|
+
} | {
|
|
1025
|
+
readonly _tag: "RateLimitedError";
|
|
1026
|
+
readonly message: string;
|
|
1027
|
+
readonly retryAfterSeconds: number;
|
|
1028
|
+
} | {
|
|
1029
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1030
|
+
readonly message: string;
|
|
1031
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1032
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1033
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1034
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1035
|
+
readonly identityId?: string | null;
|
|
1036
|
+
} | {
|
|
1037
|
+
readonly _tag: "PaymentRequiredError";
|
|
1038
|
+
readonly message: string;
|
|
1039
|
+
readonly resource: string;
|
|
1040
|
+
readonly currentUsage: number;
|
|
1041
|
+
readonly limit: number;
|
|
1042
|
+
} | {
|
|
1043
|
+
readonly _tag: "ValidationError";
|
|
1044
|
+
readonly message: string;
|
|
1045
|
+
readonly fields?: {
|
|
1046
|
+
readonly [x: string]: readonly string[];
|
|
1047
|
+
} | null;
|
|
1048
|
+
} | {
|
|
1049
|
+
readonly _tag: "ForbiddenError";
|
|
1050
|
+
readonly message: string;
|
|
1051
|
+
} | {
|
|
1052
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1053
|
+
readonly resource: string;
|
|
1054
|
+
readonly id: string;
|
|
1055
|
+
readonly message: string;
|
|
1056
|
+
} | null;
|
|
1057
|
+
} | null;
|
|
1058
|
+
readonly retryEligible: boolean;
|
|
1059
|
+
readonly decision: {
|
|
1060
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1061
|
+
readonly reason: string | null;
|
|
1062
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1063
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1064
|
+
readonly decidedAt: string;
|
|
1065
|
+
} | null;
|
|
1066
|
+
readonly createdAt: string;
|
|
1067
|
+
readonly updatedAt: string;
|
|
1068
|
+
} | {
|
|
1069
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1070
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1071
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1072
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1073
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1074
|
+
readonly acceptedAt: string | null;
|
|
1075
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1006
1076
|
readonly reviewExpectedAt: string | null;
|
|
1007
1077
|
readonly skippedRecipients: readonly {
|
|
1008
1078
|
readonly address: string;
|
|
1009
1079
|
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1010
1080
|
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1011
1081
|
}[];
|
|
1082
|
+
readonly executeUntil: string | null;
|
|
1083
|
+
readonly retryAt: string | null;
|
|
1084
|
+
readonly problem: {
|
|
1085
|
+
readonly code: string;
|
|
1086
|
+
readonly message: string;
|
|
1087
|
+
readonly error?: {
|
|
1088
|
+
readonly _tag: "SenderNotReadyError";
|
|
1089
|
+
readonly message: string;
|
|
1090
|
+
readonly sender: string;
|
|
1091
|
+
readonly retryAfterSeconds?: number | null;
|
|
1092
|
+
} | {
|
|
1093
|
+
readonly _tag: "RateLimitedError";
|
|
1094
|
+
readonly message: string;
|
|
1095
|
+
readonly retryAfterSeconds: number;
|
|
1096
|
+
} | {
|
|
1097
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1098
|
+
readonly message: string;
|
|
1099
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1100
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1101
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1102
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1103
|
+
readonly identityId?: string | null;
|
|
1104
|
+
} | {
|
|
1105
|
+
readonly _tag: "PaymentRequiredError";
|
|
1106
|
+
readonly message: string;
|
|
1107
|
+
readonly resource: string;
|
|
1108
|
+
readonly currentUsage: number;
|
|
1109
|
+
readonly limit: number;
|
|
1110
|
+
} | {
|
|
1111
|
+
readonly _tag: "ValidationError";
|
|
1112
|
+
readonly message: string;
|
|
1113
|
+
readonly fields?: {
|
|
1114
|
+
readonly [x: string]: readonly string[];
|
|
1115
|
+
} | null;
|
|
1116
|
+
} | {
|
|
1117
|
+
readonly _tag: "ForbiddenError";
|
|
1118
|
+
readonly message: string;
|
|
1119
|
+
} | {
|
|
1120
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1121
|
+
readonly resource: string;
|
|
1122
|
+
readonly id: string;
|
|
1123
|
+
readonly message: string;
|
|
1124
|
+
} | null;
|
|
1125
|
+
} | null;
|
|
1126
|
+
readonly retryEligible: boolean;
|
|
1127
|
+
readonly decision: {
|
|
1128
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1129
|
+
readonly reason: string | null;
|
|
1130
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1131
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1132
|
+
readonly decidedAt: string;
|
|
1133
|
+
} | null;
|
|
1012
1134
|
readonly createdAt: string;
|
|
1013
|
-
|
|
1135
|
+
readonly updatedAt: string;
|
|
1136
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1014
1137
|
export declare const getMessage: (input: {
|
|
1015
1138
|
readonly id: string;
|
|
1016
1139
|
readonly messageId: string;
|
|
@@ -1082,6 +1205,17 @@ export declare const getMessageAttachment: (input: {
|
|
|
1082
1205
|
readonly url: string;
|
|
1083
1206
|
readonly expiresAt: string;
|
|
1084
1207
|
}, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1208
|
+
export declare const copyMessageAttachment: (input: {
|
|
1209
|
+
readonly id: string;
|
|
1210
|
+
readonly messageId: string;
|
|
1211
|
+
readonly attachmentId: string;
|
|
1212
|
+
}) => import("effect/Effect").Effect<{
|
|
1213
|
+
readonly filename: string;
|
|
1214
|
+
readonly content?: string | null;
|
|
1215
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
1216
|
+
readonly contentType: string;
|
|
1217
|
+
readonly size: number;
|
|
1218
|
+
}, import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1085
1219
|
export declare const reply: (input: {
|
|
1086
1220
|
readonly id: string;
|
|
1087
1221
|
readonly messageId: string;
|
|
@@ -1100,18 +1234,141 @@ export declare const reply: (input: {
|
|
|
1100
1234
|
readonly idempotencyKey?: string | undefined;
|
|
1101
1235
|
}) => import("effect/Effect").Effect<{
|
|
1102
1236
|
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1237
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1103
1238
|
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1104
|
-
readonly threadId: string & import("effect/Brand").Brand<"MailboxThreadId"
|
|
1105
|
-
readonly
|
|
1106
|
-
readonly
|
|
1239
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1240
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1241
|
+
readonly acceptedAt: string | null;
|
|
1242
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1243
|
+
readonly reviewExpectedAt: string | null;
|
|
1244
|
+
readonly skippedRecipients: readonly {
|
|
1245
|
+
readonly address: string;
|
|
1246
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1247
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1248
|
+
}[];
|
|
1249
|
+
readonly executeUntil: string | null;
|
|
1250
|
+
readonly retryAt: string | null;
|
|
1251
|
+
readonly problem: {
|
|
1252
|
+
readonly code: string;
|
|
1253
|
+
readonly message: string;
|
|
1254
|
+
readonly error?: {
|
|
1255
|
+
readonly _tag: "SenderNotReadyError";
|
|
1256
|
+
readonly message: string;
|
|
1257
|
+
readonly sender: string;
|
|
1258
|
+
readonly retryAfterSeconds?: number | null;
|
|
1259
|
+
} | {
|
|
1260
|
+
readonly _tag: "RateLimitedError";
|
|
1261
|
+
readonly message: string;
|
|
1262
|
+
readonly retryAfterSeconds: number;
|
|
1263
|
+
} | {
|
|
1264
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1265
|
+
readonly message: string;
|
|
1266
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1267
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1268
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1269
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1270
|
+
readonly identityId?: string | null;
|
|
1271
|
+
} | {
|
|
1272
|
+
readonly _tag: "PaymentRequiredError";
|
|
1273
|
+
readonly message: string;
|
|
1274
|
+
readonly resource: string;
|
|
1275
|
+
readonly currentUsage: number;
|
|
1276
|
+
readonly limit: number;
|
|
1277
|
+
} | {
|
|
1278
|
+
readonly _tag: "ValidationError";
|
|
1279
|
+
readonly message: string;
|
|
1280
|
+
readonly fields?: {
|
|
1281
|
+
readonly [x: string]: readonly string[];
|
|
1282
|
+
} | null;
|
|
1283
|
+
} | {
|
|
1284
|
+
readonly _tag: "ForbiddenError";
|
|
1285
|
+
readonly message: string;
|
|
1286
|
+
} | {
|
|
1287
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1288
|
+
readonly resource: string;
|
|
1289
|
+
readonly id: string;
|
|
1290
|
+
readonly message: string;
|
|
1291
|
+
} | null;
|
|
1292
|
+
} | null;
|
|
1293
|
+
readonly retryEligible: boolean;
|
|
1294
|
+
readonly decision: {
|
|
1295
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1296
|
+
readonly reason: string | null;
|
|
1297
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1298
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1299
|
+
readonly decidedAt: string;
|
|
1300
|
+
} | null;
|
|
1301
|
+
readonly createdAt: string;
|
|
1302
|
+
readonly updatedAt: string;
|
|
1303
|
+
} | {
|
|
1304
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1305
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1306
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1307
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1308
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1309
|
+
readonly acceptedAt: string | null;
|
|
1310
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1107
1311
|
readonly reviewExpectedAt: string | null;
|
|
1108
1312
|
readonly skippedRecipients: readonly {
|
|
1109
1313
|
readonly address: string;
|
|
1110
1314
|
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1111
1315
|
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1112
1316
|
}[];
|
|
1317
|
+
readonly executeUntil: string | null;
|
|
1318
|
+
readonly retryAt: string | null;
|
|
1319
|
+
readonly problem: {
|
|
1320
|
+
readonly code: string;
|
|
1321
|
+
readonly message: string;
|
|
1322
|
+
readonly error?: {
|
|
1323
|
+
readonly _tag: "SenderNotReadyError";
|
|
1324
|
+
readonly message: string;
|
|
1325
|
+
readonly sender: string;
|
|
1326
|
+
readonly retryAfterSeconds?: number | null;
|
|
1327
|
+
} | {
|
|
1328
|
+
readonly _tag: "RateLimitedError";
|
|
1329
|
+
readonly message: string;
|
|
1330
|
+
readonly retryAfterSeconds: number;
|
|
1331
|
+
} | {
|
|
1332
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1333
|
+
readonly message: string;
|
|
1334
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1335
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1336
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1337
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1338
|
+
readonly identityId?: string | null;
|
|
1339
|
+
} | {
|
|
1340
|
+
readonly _tag: "PaymentRequiredError";
|
|
1341
|
+
readonly message: string;
|
|
1342
|
+
readonly resource: string;
|
|
1343
|
+
readonly currentUsage: number;
|
|
1344
|
+
readonly limit: number;
|
|
1345
|
+
} | {
|
|
1346
|
+
readonly _tag: "ValidationError";
|
|
1347
|
+
readonly message: string;
|
|
1348
|
+
readonly fields?: {
|
|
1349
|
+
readonly [x: string]: readonly string[];
|
|
1350
|
+
} | null;
|
|
1351
|
+
} | {
|
|
1352
|
+
readonly _tag: "ForbiddenError";
|
|
1353
|
+
readonly message: string;
|
|
1354
|
+
} | {
|
|
1355
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1356
|
+
readonly resource: string;
|
|
1357
|
+
readonly id: string;
|
|
1358
|
+
readonly message: string;
|
|
1359
|
+
} | null;
|
|
1360
|
+
} | null;
|
|
1361
|
+
readonly retryEligible: boolean;
|
|
1362
|
+
readonly decision: {
|
|
1363
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1364
|
+
readonly reason: string | null;
|
|
1365
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1366
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1367
|
+
readonly decidedAt: string;
|
|
1368
|
+
} | null;
|
|
1113
1369
|
readonly createdAt: string;
|
|
1114
|
-
|
|
1370
|
+
readonly updatedAt: string;
|
|
1371
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1115
1372
|
export declare const replyAll: (input: {
|
|
1116
1373
|
readonly id: string;
|
|
1117
1374
|
readonly messageId: string;
|
|
@@ -1130,18 +1387,141 @@ export declare const replyAll: (input: {
|
|
|
1130
1387
|
readonly idempotencyKey?: string | undefined;
|
|
1131
1388
|
}) => import("effect/Effect").Effect<{
|
|
1132
1389
|
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1390
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1133
1391
|
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1134
|
-
readonly threadId: string & import("effect/Brand").Brand<"MailboxThreadId"
|
|
1135
|
-
readonly
|
|
1136
|
-
readonly
|
|
1392
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1393
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1394
|
+
readonly acceptedAt: string | null;
|
|
1395
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1396
|
+
readonly reviewExpectedAt: string | null;
|
|
1397
|
+
readonly skippedRecipients: readonly {
|
|
1398
|
+
readonly address: string;
|
|
1399
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1400
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1401
|
+
}[];
|
|
1402
|
+
readonly executeUntil: string | null;
|
|
1403
|
+
readonly retryAt: string | null;
|
|
1404
|
+
readonly problem: {
|
|
1405
|
+
readonly code: string;
|
|
1406
|
+
readonly message: string;
|
|
1407
|
+
readonly error?: {
|
|
1408
|
+
readonly _tag: "SenderNotReadyError";
|
|
1409
|
+
readonly message: string;
|
|
1410
|
+
readonly sender: string;
|
|
1411
|
+
readonly retryAfterSeconds?: number | null;
|
|
1412
|
+
} | {
|
|
1413
|
+
readonly _tag: "RateLimitedError";
|
|
1414
|
+
readonly message: string;
|
|
1415
|
+
readonly retryAfterSeconds: number;
|
|
1416
|
+
} | {
|
|
1417
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1418
|
+
readonly message: string;
|
|
1419
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1420
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1421
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1422
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1423
|
+
readonly identityId?: string | null;
|
|
1424
|
+
} | {
|
|
1425
|
+
readonly _tag: "PaymentRequiredError";
|
|
1426
|
+
readonly message: string;
|
|
1427
|
+
readonly resource: string;
|
|
1428
|
+
readonly currentUsage: number;
|
|
1429
|
+
readonly limit: number;
|
|
1430
|
+
} | {
|
|
1431
|
+
readonly _tag: "ValidationError";
|
|
1432
|
+
readonly message: string;
|
|
1433
|
+
readonly fields?: {
|
|
1434
|
+
readonly [x: string]: readonly string[];
|
|
1435
|
+
} | null;
|
|
1436
|
+
} | {
|
|
1437
|
+
readonly _tag: "ForbiddenError";
|
|
1438
|
+
readonly message: string;
|
|
1439
|
+
} | {
|
|
1440
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1441
|
+
readonly resource: string;
|
|
1442
|
+
readonly id: string;
|
|
1443
|
+
readonly message: string;
|
|
1444
|
+
} | null;
|
|
1445
|
+
} | null;
|
|
1446
|
+
readonly retryEligible: boolean;
|
|
1447
|
+
readonly decision: {
|
|
1448
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1449
|
+
readonly reason: string | null;
|
|
1450
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1451
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1452
|
+
readonly decidedAt: string;
|
|
1453
|
+
} | null;
|
|
1454
|
+
readonly createdAt: string;
|
|
1455
|
+
readonly updatedAt: string;
|
|
1456
|
+
} | {
|
|
1457
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1458
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1459
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1460
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1461
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1462
|
+
readonly acceptedAt: string | null;
|
|
1463
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1137
1464
|
readonly reviewExpectedAt: string | null;
|
|
1138
1465
|
readonly skippedRecipients: readonly {
|
|
1139
1466
|
readonly address: string;
|
|
1140
1467
|
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1141
1468
|
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1142
1469
|
}[];
|
|
1470
|
+
readonly executeUntil: string | null;
|
|
1471
|
+
readonly retryAt: string | null;
|
|
1472
|
+
readonly problem: {
|
|
1473
|
+
readonly code: string;
|
|
1474
|
+
readonly message: string;
|
|
1475
|
+
readonly error?: {
|
|
1476
|
+
readonly _tag: "SenderNotReadyError";
|
|
1477
|
+
readonly message: string;
|
|
1478
|
+
readonly sender: string;
|
|
1479
|
+
readonly retryAfterSeconds?: number | null;
|
|
1480
|
+
} | {
|
|
1481
|
+
readonly _tag: "RateLimitedError";
|
|
1482
|
+
readonly message: string;
|
|
1483
|
+
readonly retryAfterSeconds: number;
|
|
1484
|
+
} | {
|
|
1485
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1486
|
+
readonly message: string;
|
|
1487
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1488
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1489
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1490
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1491
|
+
readonly identityId?: string | null;
|
|
1492
|
+
} | {
|
|
1493
|
+
readonly _tag: "PaymentRequiredError";
|
|
1494
|
+
readonly message: string;
|
|
1495
|
+
readonly resource: string;
|
|
1496
|
+
readonly currentUsage: number;
|
|
1497
|
+
readonly limit: number;
|
|
1498
|
+
} | {
|
|
1499
|
+
readonly _tag: "ValidationError";
|
|
1500
|
+
readonly message: string;
|
|
1501
|
+
readonly fields?: {
|
|
1502
|
+
readonly [x: string]: readonly string[];
|
|
1503
|
+
} | null;
|
|
1504
|
+
} | {
|
|
1505
|
+
readonly _tag: "ForbiddenError";
|
|
1506
|
+
readonly message: string;
|
|
1507
|
+
} | {
|
|
1508
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1509
|
+
readonly resource: string;
|
|
1510
|
+
readonly id: string;
|
|
1511
|
+
readonly message: string;
|
|
1512
|
+
} | null;
|
|
1513
|
+
} | null;
|
|
1514
|
+
readonly retryEligible: boolean;
|
|
1515
|
+
readonly decision: {
|
|
1516
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1517
|
+
readonly reason: string | null;
|
|
1518
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1519
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1520
|
+
readonly decidedAt: string;
|
|
1521
|
+
} | null;
|
|
1143
1522
|
readonly createdAt: string;
|
|
1144
|
-
|
|
1523
|
+
readonly updatedAt: string;
|
|
1524
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1145
1525
|
export declare const forward: (input: {
|
|
1146
1526
|
readonly id: string;
|
|
1147
1527
|
readonly messageId: string;
|
|
@@ -1161,18 +1541,141 @@ export declare const forward: (input: {
|
|
|
1161
1541
|
readonly idempotencyKey?: string | undefined;
|
|
1162
1542
|
}) => import("effect/Effect").Effect<{
|
|
1163
1543
|
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1544
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1164
1545
|
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1165
|
-
readonly threadId: string & import("effect/Brand").Brand<"MailboxThreadId"
|
|
1166
|
-
readonly
|
|
1167
|
-
readonly
|
|
1546
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1547
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1548
|
+
readonly acceptedAt: string | null;
|
|
1549
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1550
|
+
readonly reviewExpectedAt: string | null;
|
|
1551
|
+
readonly skippedRecipients: readonly {
|
|
1552
|
+
readonly address: string;
|
|
1553
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1554
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1555
|
+
}[];
|
|
1556
|
+
readonly executeUntil: string | null;
|
|
1557
|
+
readonly retryAt: string | null;
|
|
1558
|
+
readonly problem: {
|
|
1559
|
+
readonly code: string;
|
|
1560
|
+
readonly message: string;
|
|
1561
|
+
readonly error?: {
|
|
1562
|
+
readonly _tag: "SenderNotReadyError";
|
|
1563
|
+
readonly message: string;
|
|
1564
|
+
readonly sender: string;
|
|
1565
|
+
readonly retryAfterSeconds?: number | null;
|
|
1566
|
+
} | {
|
|
1567
|
+
readonly _tag: "RateLimitedError";
|
|
1568
|
+
readonly message: string;
|
|
1569
|
+
readonly retryAfterSeconds: number;
|
|
1570
|
+
} | {
|
|
1571
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1572
|
+
readonly message: string;
|
|
1573
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1574
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1575
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1576
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1577
|
+
readonly identityId?: string | null;
|
|
1578
|
+
} | {
|
|
1579
|
+
readonly _tag: "PaymentRequiredError";
|
|
1580
|
+
readonly message: string;
|
|
1581
|
+
readonly resource: string;
|
|
1582
|
+
readonly currentUsage: number;
|
|
1583
|
+
readonly limit: number;
|
|
1584
|
+
} | {
|
|
1585
|
+
readonly _tag: "ValidationError";
|
|
1586
|
+
readonly message: string;
|
|
1587
|
+
readonly fields?: {
|
|
1588
|
+
readonly [x: string]: readonly string[];
|
|
1589
|
+
} | null;
|
|
1590
|
+
} | {
|
|
1591
|
+
readonly _tag: "ForbiddenError";
|
|
1592
|
+
readonly message: string;
|
|
1593
|
+
} | {
|
|
1594
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1595
|
+
readonly resource: string;
|
|
1596
|
+
readonly id: string;
|
|
1597
|
+
readonly message: string;
|
|
1598
|
+
} | null;
|
|
1599
|
+
} | null;
|
|
1600
|
+
readonly retryEligible: boolean;
|
|
1601
|
+
readonly decision: {
|
|
1602
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1603
|
+
readonly reason: string | null;
|
|
1604
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1605
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1606
|
+
readonly decidedAt: string;
|
|
1607
|
+
} | null;
|
|
1608
|
+
readonly createdAt: string;
|
|
1609
|
+
readonly updatedAt: string;
|
|
1610
|
+
} | {
|
|
1611
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1612
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1613
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1614
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1615
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1616
|
+
readonly acceptedAt: string | null;
|
|
1617
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1168
1618
|
readonly reviewExpectedAt: string | null;
|
|
1169
1619
|
readonly skippedRecipients: readonly {
|
|
1170
1620
|
readonly address: string;
|
|
1171
1621
|
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1172
1622
|
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1173
1623
|
}[];
|
|
1624
|
+
readonly executeUntil: string | null;
|
|
1625
|
+
readonly retryAt: string | null;
|
|
1626
|
+
readonly problem: {
|
|
1627
|
+
readonly code: string;
|
|
1628
|
+
readonly message: string;
|
|
1629
|
+
readonly error?: {
|
|
1630
|
+
readonly _tag: "SenderNotReadyError";
|
|
1631
|
+
readonly message: string;
|
|
1632
|
+
readonly sender: string;
|
|
1633
|
+
readonly retryAfterSeconds?: number | null;
|
|
1634
|
+
} | {
|
|
1635
|
+
readonly _tag: "RateLimitedError";
|
|
1636
|
+
readonly message: string;
|
|
1637
|
+
readonly retryAfterSeconds: number;
|
|
1638
|
+
} | {
|
|
1639
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1640
|
+
readonly message: string;
|
|
1641
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1642
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1643
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1644
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1645
|
+
readonly identityId?: string | null;
|
|
1646
|
+
} | {
|
|
1647
|
+
readonly _tag: "PaymentRequiredError";
|
|
1648
|
+
readonly message: string;
|
|
1649
|
+
readonly resource: string;
|
|
1650
|
+
readonly currentUsage: number;
|
|
1651
|
+
readonly limit: number;
|
|
1652
|
+
} | {
|
|
1653
|
+
readonly _tag: "ValidationError";
|
|
1654
|
+
readonly message: string;
|
|
1655
|
+
readonly fields?: {
|
|
1656
|
+
readonly [x: string]: readonly string[];
|
|
1657
|
+
} | null;
|
|
1658
|
+
} | {
|
|
1659
|
+
readonly _tag: "ForbiddenError";
|
|
1660
|
+
readonly message: string;
|
|
1661
|
+
} | {
|
|
1662
|
+
readonly _tag: "ResourceNotFoundError";
|
|
1663
|
+
readonly resource: string;
|
|
1664
|
+
readonly id: string;
|
|
1665
|
+
readonly message: string;
|
|
1666
|
+
} | null;
|
|
1667
|
+
} | null;
|
|
1668
|
+
readonly retryEligible: boolean;
|
|
1669
|
+
readonly decision: {
|
|
1670
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1671
|
+
readonly reason: string | null;
|
|
1672
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
1673
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1674
|
+
readonly decidedAt: string;
|
|
1675
|
+
} | null;
|
|
1174
1676
|
readonly createdAt: string;
|
|
1175
|
-
|
|
1677
|
+
readonly updatedAt: string;
|
|
1678
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1176
1679
|
export declare const listQuarantine: ((input: {
|
|
1177
1680
|
readonly id: string;
|
|
1178
1681
|
readonly limit?: string | null | undefined;
|
|
@@ -1294,7 +1797,8 @@ export declare const listDrafts: ((input: {
|
|
|
1294
1797
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1295
1798
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1296
1799
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1297
|
-
readonly state: "
|
|
1800
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1801
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1298
1802
|
readonly to: readonly string[];
|
|
1299
1803
|
readonly subject: string | null;
|
|
1300
1804
|
readonly createdAt: string;
|
|
@@ -1312,7 +1816,8 @@ export declare const listDrafts: ((input: {
|
|
|
1312
1816
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1313
1817
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1314
1818
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1315
|
-
readonly state: "
|
|
1819
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1820
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1316
1821
|
readonly to: readonly string[];
|
|
1317
1822
|
readonly subject: string | null;
|
|
1318
1823
|
readonly createdAt: string;
|
|
@@ -1329,7 +1834,8 @@ export declare const listDrafts: ((input: {
|
|
|
1329
1834
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1330
1835
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1331
1836
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1332
|
-
readonly state: "
|
|
1837
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1838
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1333
1839
|
readonly to: readonly string[];
|
|
1334
1840
|
readonly subject: string | null;
|
|
1335
1841
|
readonly createdAt: string;
|
|
@@ -1357,7 +1863,8 @@ export declare const createDraft: (input: {
|
|
|
1357
1863
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1358
1864
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1359
1865
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1360
|
-
readonly state: "
|
|
1866
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1867
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1361
1868
|
readonly to: readonly string[];
|
|
1362
1869
|
readonly subject: string | null;
|
|
1363
1870
|
readonly createdAt: string;
|
|
@@ -1382,7 +1889,8 @@ export declare const getDraft: (input: {
|
|
|
1382
1889
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1383
1890
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1384
1891
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1385
|
-
readonly state: "
|
|
1892
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1893
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1386
1894
|
readonly to: readonly string[];
|
|
1387
1895
|
readonly subject: string | null;
|
|
1388
1896
|
readonly createdAt: string;
|
|
@@ -1421,7 +1929,8 @@ export declare const updateDraft: (input: {
|
|
|
1421
1929
|
readonly id: string & import("effect/Brand").Brand<"MailboxDraftId">;
|
|
1422
1930
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1423
1931
|
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1424
|
-
readonly state: "
|
|
1932
|
+
readonly state: "locked" | "saved" | "sent";
|
|
1933
|
+
readonly lockedByActionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1425
1934
|
readonly to: readonly string[];
|
|
1426
1935
|
readonly subject: string | null;
|
|
1427
1936
|
readonly createdAt: string;
|
|
@@ -1452,30 +1961,152 @@ export declare const sendDraft: (input: {
|
|
|
1452
1961
|
readonly idempotencyKey?: string | undefined;
|
|
1453
1962
|
}) => import("effect/Effect").Effect<{
|
|
1454
1963
|
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1964
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
1455
1965
|
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
1456
|
-
readonly threadId: string & import("effect/Brand").Brand<"MailboxThreadId"
|
|
1457
|
-
readonly
|
|
1458
|
-
readonly
|
|
1966
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1967
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
1968
|
+
readonly acceptedAt: string | null;
|
|
1969
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1970
|
+
readonly reviewExpectedAt: string | null;
|
|
1971
|
+
readonly skippedRecipients: readonly {
|
|
1972
|
+
readonly address: string;
|
|
1973
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1974
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1975
|
+
}[];
|
|
1976
|
+
readonly executeUntil: string | null;
|
|
1977
|
+
readonly retryAt: string | null;
|
|
1978
|
+
readonly problem: {
|
|
1979
|
+
readonly code: string;
|
|
1980
|
+
readonly message: string;
|
|
1981
|
+
readonly error?: {
|
|
1982
|
+
readonly _tag: "SenderNotReadyError";
|
|
1983
|
+
readonly message: string;
|
|
1984
|
+
readonly sender: string;
|
|
1985
|
+
readonly retryAfterSeconds?: number | null;
|
|
1986
|
+
} | {
|
|
1987
|
+
readonly _tag: "RateLimitedError";
|
|
1988
|
+
readonly message: string;
|
|
1989
|
+
readonly retryAfterSeconds: number;
|
|
1990
|
+
} | {
|
|
1991
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
1992
|
+
readonly message: string;
|
|
1993
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
1994
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
1995
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
1996
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
1997
|
+
readonly identityId?: string | null;
|
|
1998
|
+
} | {
|
|
1999
|
+
readonly _tag: "PaymentRequiredError";
|
|
2000
|
+
readonly message: string;
|
|
2001
|
+
readonly resource: string;
|
|
2002
|
+
readonly currentUsage: number;
|
|
2003
|
+
readonly limit: number;
|
|
2004
|
+
} | {
|
|
2005
|
+
readonly _tag: "ValidationError";
|
|
2006
|
+
readonly message: string;
|
|
2007
|
+
readonly fields?: {
|
|
2008
|
+
readonly [x: string]: readonly string[];
|
|
2009
|
+
} | null;
|
|
2010
|
+
} | {
|
|
2011
|
+
readonly _tag: "ForbiddenError";
|
|
2012
|
+
readonly message: string;
|
|
2013
|
+
} | {
|
|
2014
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2015
|
+
readonly resource: string;
|
|
2016
|
+
readonly id: string;
|
|
2017
|
+
readonly message: string;
|
|
2018
|
+
} | null;
|
|
2019
|
+
} | null;
|
|
2020
|
+
readonly retryEligible: boolean;
|
|
2021
|
+
readonly decision: {
|
|
2022
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2023
|
+
readonly reason: string | null;
|
|
2024
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2025
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2026
|
+
readonly decidedAt: string;
|
|
2027
|
+
} | null;
|
|
2028
|
+
readonly createdAt: string;
|
|
2029
|
+
readonly updatedAt: string;
|
|
2030
|
+
} | {
|
|
2031
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2032
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2033
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2034
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2035
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2036
|
+
readonly acceptedAt: string | null;
|
|
2037
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
1459
2038
|
readonly reviewExpectedAt: string | null;
|
|
1460
2039
|
readonly skippedRecipients: readonly {
|
|
1461
2040
|
readonly address: string;
|
|
1462
2041
|
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
1463
2042
|
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
1464
2043
|
}[];
|
|
2044
|
+
readonly executeUntil: string | null;
|
|
2045
|
+
readonly retryAt: string | null;
|
|
2046
|
+
readonly problem: {
|
|
2047
|
+
readonly code: string;
|
|
2048
|
+
readonly message: string;
|
|
2049
|
+
readonly error?: {
|
|
2050
|
+
readonly _tag: "SenderNotReadyError";
|
|
2051
|
+
readonly message: string;
|
|
2052
|
+
readonly sender: string;
|
|
2053
|
+
readonly retryAfterSeconds?: number | null;
|
|
2054
|
+
} | {
|
|
2055
|
+
readonly _tag: "RateLimitedError";
|
|
2056
|
+
readonly message: string;
|
|
2057
|
+
readonly retryAfterSeconds: number;
|
|
2058
|
+
} | {
|
|
2059
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2060
|
+
readonly message: string;
|
|
2061
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2062
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2063
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2064
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2065
|
+
readonly identityId?: string | null;
|
|
2066
|
+
} | {
|
|
2067
|
+
readonly _tag: "PaymentRequiredError";
|
|
2068
|
+
readonly message: string;
|
|
2069
|
+
readonly resource: string;
|
|
2070
|
+
readonly currentUsage: number;
|
|
2071
|
+
readonly limit: number;
|
|
2072
|
+
} | {
|
|
2073
|
+
readonly _tag: "ValidationError";
|
|
2074
|
+
readonly message: string;
|
|
2075
|
+
readonly fields?: {
|
|
2076
|
+
readonly [x: string]: readonly string[];
|
|
2077
|
+
} | null;
|
|
2078
|
+
} | {
|
|
2079
|
+
readonly _tag: "ForbiddenError";
|
|
2080
|
+
readonly message: string;
|
|
2081
|
+
} | {
|
|
2082
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2083
|
+
readonly resource: string;
|
|
2084
|
+
readonly id: string;
|
|
2085
|
+
readonly message: string;
|
|
2086
|
+
} | null;
|
|
2087
|
+
} | null;
|
|
2088
|
+
readonly retryEligible: boolean;
|
|
2089
|
+
readonly decision: {
|
|
2090
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2091
|
+
readonly reason: string | null;
|
|
2092
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2093
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2094
|
+
readonly decidedAt: string;
|
|
2095
|
+
} | null;
|
|
1465
2096
|
readonly createdAt: string;
|
|
1466
|
-
|
|
2097
|
+
readonly updatedAt: string;
|
|
2098
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1467
2099
|
export declare const listActions: ((input: {
|
|
1468
2100
|
readonly id: string;
|
|
1469
2101
|
readonly limit?: string | null | undefined;
|
|
1470
2102
|
readonly cursor?: string | null | undefined;
|
|
1471
|
-
readonly
|
|
2103
|
+
readonly threadId?: string | null | undefined;
|
|
2104
|
+
readonly state?: "accepted" | "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "completed" | "executed" | "executing" | "failed" | "notSent" | "policyDenied" | "proposed" | "queued" | "uncertain" | null | undefined;
|
|
1472
2105
|
readonly after?: string | null | undefined;
|
|
1473
2106
|
readonly before?: string | null | undefined;
|
|
1474
2107
|
}) => import("effect/Effect").Effect<{
|
|
1475
|
-
readonly items: readonly {
|
|
2108
|
+
readonly items: readonly ({
|
|
1476
2109
|
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1477
|
-
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "reply" | "sendMessage" | "updateDraft";
|
|
1478
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
1479
2110
|
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
1480
2111
|
readonly proposedBy: {
|
|
1481
2112
|
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
@@ -1488,55 +2119,106 @@ export declare const listActions: ((input: {
|
|
|
1488
2119
|
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1489
2120
|
readonly reason: string | null;
|
|
1490
2121
|
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2122
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1491
2123
|
readonly decidedAt: string;
|
|
1492
2124
|
} | null;
|
|
1493
2125
|
readonly createdAt: string;
|
|
1494
2126
|
readonly updatedAt: string;
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
readonly id: string;
|
|
1500
|
-
readonly limit?: string | null | undefined;
|
|
1501
|
-
readonly cursor?: string | null | undefined;
|
|
1502
|
-
readonly state?: string | null | undefined;
|
|
1503
|
-
readonly after?: string | null | undefined;
|
|
1504
|
-
readonly before?: string | null | undefined;
|
|
1505
|
-
}) => import("effect/Stream").Stream<{
|
|
1506
|
-
readonly items: readonly {
|
|
1507
|
-
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1508
|
-
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "reply" | "sendMessage" | "updateDraft";
|
|
1509
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
1510
|
-
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
1511
|
-
readonly proposedBy: {
|
|
1512
|
-
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
1513
|
-
readonly id: string;
|
|
1514
|
-
readonly displayName?: string | null;
|
|
1515
|
-
};
|
|
1516
|
-
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2127
|
+
readonly type: "reply" | "sendMessage";
|
|
2128
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2129
|
+
readonly send: {
|
|
2130
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1517
2131
|
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2132
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2133
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2134
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2135
|
+
readonly acceptedAt: string | null;
|
|
2136
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2137
|
+
readonly reviewExpectedAt: string | null;
|
|
2138
|
+
readonly skippedRecipients: readonly {
|
|
2139
|
+
readonly address: string;
|
|
2140
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2141
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2142
|
+
}[];
|
|
2143
|
+
readonly executeUntil: string | null;
|
|
2144
|
+
readonly retryAt: string | null;
|
|
2145
|
+
readonly problem: {
|
|
2146
|
+
readonly code: string;
|
|
2147
|
+
readonly message: string;
|
|
2148
|
+
readonly error?: {
|
|
2149
|
+
readonly _tag: "SenderNotReadyError";
|
|
2150
|
+
readonly message: string;
|
|
2151
|
+
readonly sender: string;
|
|
2152
|
+
readonly retryAfterSeconds?: number | null;
|
|
2153
|
+
} | {
|
|
2154
|
+
readonly _tag: "RateLimitedError";
|
|
2155
|
+
readonly message: string;
|
|
2156
|
+
readonly retryAfterSeconds: number;
|
|
2157
|
+
} | {
|
|
2158
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2159
|
+
readonly message: string;
|
|
2160
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2161
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2162
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2163
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2164
|
+
readonly identityId?: string | null;
|
|
2165
|
+
} | {
|
|
2166
|
+
readonly _tag: "PaymentRequiredError";
|
|
2167
|
+
readonly message: string;
|
|
2168
|
+
readonly resource: string;
|
|
2169
|
+
readonly currentUsage: number;
|
|
2170
|
+
readonly limit: number;
|
|
2171
|
+
} | {
|
|
2172
|
+
readonly _tag: "ValidationError";
|
|
2173
|
+
readonly message: string;
|
|
2174
|
+
readonly fields?: {
|
|
2175
|
+
readonly [x: string]: readonly string[];
|
|
2176
|
+
} | null;
|
|
2177
|
+
} | {
|
|
2178
|
+
readonly _tag: "ForbiddenError";
|
|
2179
|
+
readonly message: string;
|
|
2180
|
+
} | {
|
|
2181
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2182
|
+
readonly resource: string;
|
|
2183
|
+
readonly id: string;
|
|
2184
|
+
readonly message: string;
|
|
2185
|
+
} | null;
|
|
2186
|
+
} | null;
|
|
2187
|
+
readonly retryEligible: boolean;
|
|
1518
2188
|
readonly decision: {
|
|
1519
2189
|
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1520
2190
|
readonly reason: string | null;
|
|
1521
2191
|
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2192
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1522
2193
|
readonly decidedAt: string;
|
|
1523
2194
|
} | null;
|
|
1524
2195
|
readonly createdAt: string;
|
|
1525
2196
|
readonly updatedAt: string;
|
|
1526
|
-
}
|
|
1527
|
-
readonly
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
2197
|
+
};
|
|
2198
|
+
readonly intent: {
|
|
2199
|
+
readonly draftRevision: number;
|
|
2200
|
+
readonly from: string;
|
|
2201
|
+
readonly fromName: string | null;
|
|
2202
|
+
readonly to: readonly [string, ...string[]];
|
|
2203
|
+
readonly cc: readonly string[];
|
|
2204
|
+
readonly bcc: readonly string[];
|
|
2205
|
+
readonly replyTo: readonly string[];
|
|
2206
|
+
readonly subject: string;
|
|
2207
|
+
readonly text: string | null;
|
|
2208
|
+
readonly html: string | null;
|
|
2209
|
+
readonly attachments: readonly {
|
|
2210
|
+
readonly filename: string;
|
|
2211
|
+
readonly content?: string | null;
|
|
2212
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
2213
|
+
readonly contentType: string;
|
|
2214
|
+
readonly size: number;
|
|
2215
|
+
}[];
|
|
2216
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2217
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
2218
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2219
|
+
} | null;
|
|
2220
|
+
} | {
|
|
1537
2221
|
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1538
|
-
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "reply" | "sendMessage" | "updateDraft";
|
|
1539
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
1540
2222
|
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
1541
2223
|
readonly proposedBy: {
|
|
1542
2224
|
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
@@ -1549,24 +2231,843 @@ export declare const listActions: ((input: {
|
|
|
1549
2231
|
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1550
2232
|
readonly reason: string | null;
|
|
1551
2233
|
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2234
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1552
2235
|
readonly decidedAt: string;
|
|
1553
2236
|
} | null;
|
|
1554
2237
|
readonly createdAt: string;
|
|
1555
2238
|
readonly updatedAt: string;
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
readonly
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1563
|
-
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "reply" | "sendMessage" | "updateDraft";
|
|
1564
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
1565
|
-
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
1566
|
-
readonly proposedBy: {
|
|
1567
|
-
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2239
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
2240
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
2241
|
+
})[];
|
|
2242
|
+
readonly nextCursor: string | null;
|
|
2243
|
+
}, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>) & {
|
|
2244
|
+
readonly pages: (input: {
|
|
1568
2245
|
readonly id: string;
|
|
1569
|
-
readonly
|
|
2246
|
+
readonly limit?: string | null | undefined;
|
|
2247
|
+
readonly cursor?: string | null | undefined;
|
|
2248
|
+
readonly threadId?: string | null | undefined;
|
|
2249
|
+
readonly state?: "accepted" | "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "completed" | "executed" | "executing" | "failed" | "notSent" | "policyDenied" | "proposed" | "queued" | "uncertain" | null | undefined;
|
|
2250
|
+
readonly after?: string | null | undefined;
|
|
2251
|
+
readonly before?: string | null | undefined;
|
|
2252
|
+
}) => import("effect/Stream").Stream<{
|
|
2253
|
+
readonly items: readonly ({
|
|
2254
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2255
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2256
|
+
readonly proposedBy: {
|
|
2257
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2258
|
+
readonly id: string;
|
|
2259
|
+
readonly displayName?: string | null;
|
|
2260
|
+
};
|
|
2261
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2262
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2263
|
+
readonly decision: {
|
|
2264
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2265
|
+
readonly reason: string | null;
|
|
2266
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2267
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2268
|
+
readonly decidedAt: string;
|
|
2269
|
+
} | null;
|
|
2270
|
+
readonly createdAt: string;
|
|
2271
|
+
readonly updatedAt: string;
|
|
2272
|
+
readonly type: "reply" | "sendMessage";
|
|
2273
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2274
|
+
readonly send: {
|
|
2275
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2276
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2277
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2278
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2279
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2280
|
+
readonly acceptedAt: string | null;
|
|
2281
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2282
|
+
readonly reviewExpectedAt: string | null;
|
|
2283
|
+
readonly skippedRecipients: readonly {
|
|
2284
|
+
readonly address: string;
|
|
2285
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2286
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2287
|
+
}[];
|
|
2288
|
+
readonly executeUntil: string | null;
|
|
2289
|
+
readonly retryAt: string | null;
|
|
2290
|
+
readonly problem: {
|
|
2291
|
+
readonly code: string;
|
|
2292
|
+
readonly message: string;
|
|
2293
|
+
readonly error?: {
|
|
2294
|
+
readonly _tag: "SenderNotReadyError";
|
|
2295
|
+
readonly message: string;
|
|
2296
|
+
readonly sender: string;
|
|
2297
|
+
readonly retryAfterSeconds?: number | null;
|
|
2298
|
+
} | {
|
|
2299
|
+
readonly _tag: "RateLimitedError";
|
|
2300
|
+
readonly message: string;
|
|
2301
|
+
readonly retryAfterSeconds: number;
|
|
2302
|
+
} | {
|
|
2303
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2304
|
+
readonly message: string;
|
|
2305
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2306
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2307
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2308
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2309
|
+
readonly identityId?: string | null;
|
|
2310
|
+
} | {
|
|
2311
|
+
readonly _tag: "PaymentRequiredError";
|
|
2312
|
+
readonly message: string;
|
|
2313
|
+
readonly resource: string;
|
|
2314
|
+
readonly currentUsage: number;
|
|
2315
|
+
readonly limit: number;
|
|
2316
|
+
} | {
|
|
2317
|
+
readonly _tag: "ValidationError";
|
|
2318
|
+
readonly message: string;
|
|
2319
|
+
readonly fields?: {
|
|
2320
|
+
readonly [x: string]: readonly string[];
|
|
2321
|
+
} | null;
|
|
2322
|
+
} | {
|
|
2323
|
+
readonly _tag: "ForbiddenError";
|
|
2324
|
+
readonly message: string;
|
|
2325
|
+
} | {
|
|
2326
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2327
|
+
readonly resource: string;
|
|
2328
|
+
readonly id: string;
|
|
2329
|
+
readonly message: string;
|
|
2330
|
+
} | null;
|
|
2331
|
+
} | null;
|
|
2332
|
+
readonly retryEligible: boolean;
|
|
2333
|
+
readonly decision: {
|
|
2334
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2335
|
+
readonly reason: string | null;
|
|
2336
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2337
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2338
|
+
readonly decidedAt: string;
|
|
2339
|
+
} | null;
|
|
2340
|
+
readonly createdAt: string;
|
|
2341
|
+
readonly updatedAt: string;
|
|
2342
|
+
};
|
|
2343
|
+
readonly intent: {
|
|
2344
|
+
readonly draftRevision: number;
|
|
2345
|
+
readonly from: string;
|
|
2346
|
+
readonly fromName: string | null;
|
|
2347
|
+
readonly to: readonly [string, ...string[]];
|
|
2348
|
+
readonly cc: readonly string[];
|
|
2349
|
+
readonly bcc: readonly string[];
|
|
2350
|
+
readonly replyTo: readonly string[];
|
|
2351
|
+
readonly subject: string;
|
|
2352
|
+
readonly text: string | null;
|
|
2353
|
+
readonly html: string | null;
|
|
2354
|
+
readonly attachments: readonly {
|
|
2355
|
+
readonly filename: string;
|
|
2356
|
+
readonly content?: string | null;
|
|
2357
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
2358
|
+
readonly contentType: string;
|
|
2359
|
+
readonly size: number;
|
|
2360
|
+
}[];
|
|
2361
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2362
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
2363
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2364
|
+
} | null;
|
|
2365
|
+
} | {
|
|
2366
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2367
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2368
|
+
readonly proposedBy: {
|
|
2369
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2370
|
+
readonly id: string;
|
|
2371
|
+
readonly displayName?: string | null;
|
|
2372
|
+
};
|
|
2373
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2374
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2375
|
+
readonly decision: {
|
|
2376
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2377
|
+
readonly reason: string | null;
|
|
2378
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2379
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2380
|
+
readonly decidedAt: string;
|
|
2381
|
+
} | null;
|
|
2382
|
+
readonly createdAt: string;
|
|
2383
|
+
readonly updatedAt: string;
|
|
2384
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
2385
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
2386
|
+
})[];
|
|
2387
|
+
readonly nextCursor: string | null;
|
|
2388
|
+
}, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
2389
|
+
readonly items: (input: {
|
|
2390
|
+
readonly id: string;
|
|
2391
|
+
readonly limit?: string | null | undefined;
|
|
2392
|
+
readonly cursor?: string | null | undefined;
|
|
2393
|
+
readonly threadId?: string | null | undefined;
|
|
2394
|
+
readonly state?: "accepted" | "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "completed" | "executed" | "executing" | "failed" | "notSent" | "policyDenied" | "proposed" | "queued" | "uncertain" | null | undefined;
|
|
2395
|
+
readonly after?: string | null | undefined;
|
|
2396
|
+
readonly before?: string | null | undefined;
|
|
2397
|
+
}) => import("effect/Stream").Stream<{
|
|
2398
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2399
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2400
|
+
readonly proposedBy: {
|
|
2401
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2402
|
+
readonly id: string;
|
|
2403
|
+
readonly displayName?: string | null;
|
|
2404
|
+
};
|
|
2405
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2406
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2407
|
+
readonly decision: {
|
|
2408
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2409
|
+
readonly reason: string | null;
|
|
2410
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2411
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2412
|
+
readonly decidedAt: string;
|
|
2413
|
+
} | null;
|
|
2414
|
+
readonly createdAt: string;
|
|
2415
|
+
readonly updatedAt: string;
|
|
2416
|
+
readonly type: "reply" | "sendMessage";
|
|
2417
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2418
|
+
readonly send: {
|
|
2419
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2420
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2421
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2422
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2423
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2424
|
+
readonly acceptedAt: string | null;
|
|
2425
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2426
|
+
readonly reviewExpectedAt: string | null;
|
|
2427
|
+
readonly skippedRecipients: readonly {
|
|
2428
|
+
readonly address: string;
|
|
2429
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2430
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2431
|
+
}[];
|
|
2432
|
+
readonly executeUntil: string | null;
|
|
2433
|
+
readonly retryAt: string | null;
|
|
2434
|
+
readonly problem: {
|
|
2435
|
+
readonly code: string;
|
|
2436
|
+
readonly message: string;
|
|
2437
|
+
readonly error?: {
|
|
2438
|
+
readonly _tag: "SenderNotReadyError";
|
|
2439
|
+
readonly message: string;
|
|
2440
|
+
readonly sender: string;
|
|
2441
|
+
readonly retryAfterSeconds?: number | null;
|
|
2442
|
+
} | {
|
|
2443
|
+
readonly _tag: "RateLimitedError";
|
|
2444
|
+
readonly message: string;
|
|
2445
|
+
readonly retryAfterSeconds: number;
|
|
2446
|
+
} | {
|
|
2447
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2448
|
+
readonly message: string;
|
|
2449
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2450
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2451
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2452
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2453
|
+
readonly identityId?: string | null;
|
|
2454
|
+
} | {
|
|
2455
|
+
readonly _tag: "PaymentRequiredError";
|
|
2456
|
+
readonly message: string;
|
|
2457
|
+
readonly resource: string;
|
|
2458
|
+
readonly currentUsage: number;
|
|
2459
|
+
readonly limit: number;
|
|
2460
|
+
} | {
|
|
2461
|
+
readonly _tag: "ValidationError";
|
|
2462
|
+
readonly message: string;
|
|
2463
|
+
readonly fields?: {
|
|
2464
|
+
readonly [x: string]: readonly string[];
|
|
2465
|
+
} | null;
|
|
2466
|
+
} | {
|
|
2467
|
+
readonly _tag: "ForbiddenError";
|
|
2468
|
+
readonly message: string;
|
|
2469
|
+
} | {
|
|
2470
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2471
|
+
readonly resource: string;
|
|
2472
|
+
readonly id: string;
|
|
2473
|
+
readonly message: string;
|
|
2474
|
+
} | null;
|
|
2475
|
+
} | null;
|
|
2476
|
+
readonly retryEligible: boolean;
|
|
2477
|
+
readonly decision: {
|
|
2478
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2479
|
+
readonly reason: string | null;
|
|
2480
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2481
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2482
|
+
readonly decidedAt: string;
|
|
2483
|
+
} | null;
|
|
2484
|
+
readonly createdAt: string;
|
|
2485
|
+
readonly updatedAt: string;
|
|
2486
|
+
};
|
|
2487
|
+
readonly intent: {
|
|
2488
|
+
readonly draftRevision: number;
|
|
2489
|
+
readonly from: string;
|
|
2490
|
+
readonly fromName: string | null;
|
|
2491
|
+
readonly to: readonly [string, ...string[]];
|
|
2492
|
+
readonly cc: readonly string[];
|
|
2493
|
+
readonly bcc: readonly string[];
|
|
2494
|
+
readonly replyTo: readonly string[];
|
|
2495
|
+
readonly subject: string;
|
|
2496
|
+
readonly text: string | null;
|
|
2497
|
+
readonly html: string | null;
|
|
2498
|
+
readonly attachments: readonly {
|
|
2499
|
+
readonly filename: string;
|
|
2500
|
+
readonly content?: string | null;
|
|
2501
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
2502
|
+
readonly contentType: string;
|
|
2503
|
+
readonly size: number;
|
|
2504
|
+
}[];
|
|
2505
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2506
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
2507
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2508
|
+
} | null;
|
|
2509
|
+
} | {
|
|
2510
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2511
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2512
|
+
readonly proposedBy: {
|
|
2513
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2514
|
+
readonly id: string;
|
|
2515
|
+
readonly displayName?: string | null;
|
|
2516
|
+
};
|
|
2517
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2518
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2519
|
+
readonly decision: {
|
|
2520
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2521
|
+
readonly reason: string | null;
|
|
2522
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2523
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2524
|
+
readonly decidedAt: string;
|
|
2525
|
+
} | null;
|
|
2526
|
+
readonly createdAt: string;
|
|
2527
|
+
readonly updatedAt: string;
|
|
2528
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
2529
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
2530
|
+
}, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
2531
|
+
};
|
|
2532
|
+
export declare const getAction: (input: {
|
|
2533
|
+
readonly id: string;
|
|
2534
|
+
readonly actionId: string;
|
|
2535
|
+
}) => import("effect/Effect").Effect<{
|
|
2536
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2537
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2538
|
+
readonly proposedBy: {
|
|
2539
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2540
|
+
readonly id: string;
|
|
2541
|
+
readonly displayName?: string | null;
|
|
2542
|
+
};
|
|
2543
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2544
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2545
|
+
readonly decision: {
|
|
2546
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2547
|
+
readonly reason: string | null;
|
|
2548
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2549
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2550
|
+
readonly decidedAt: string;
|
|
2551
|
+
} | null;
|
|
2552
|
+
readonly createdAt: string;
|
|
2553
|
+
readonly updatedAt: string;
|
|
2554
|
+
readonly type: "reply" | "sendMessage";
|
|
2555
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2556
|
+
readonly send: {
|
|
2557
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2558
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2559
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2560
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2561
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2562
|
+
readonly acceptedAt: string | null;
|
|
2563
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2564
|
+
readonly reviewExpectedAt: string | null;
|
|
2565
|
+
readonly skippedRecipients: readonly {
|
|
2566
|
+
readonly address: string;
|
|
2567
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2568
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2569
|
+
}[];
|
|
2570
|
+
readonly executeUntil: string | null;
|
|
2571
|
+
readonly retryAt: string | null;
|
|
2572
|
+
readonly problem: {
|
|
2573
|
+
readonly code: string;
|
|
2574
|
+
readonly message: string;
|
|
2575
|
+
readonly error?: {
|
|
2576
|
+
readonly _tag: "SenderNotReadyError";
|
|
2577
|
+
readonly message: string;
|
|
2578
|
+
readonly sender: string;
|
|
2579
|
+
readonly retryAfterSeconds?: number | null;
|
|
2580
|
+
} | {
|
|
2581
|
+
readonly _tag: "RateLimitedError";
|
|
2582
|
+
readonly message: string;
|
|
2583
|
+
readonly retryAfterSeconds: number;
|
|
2584
|
+
} | {
|
|
2585
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2586
|
+
readonly message: string;
|
|
2587
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2588
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2589
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2590
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2591
|
+
readonly identityId?: string | null;
|
|
2592
|
+
} | {
|
|
2593
|
+
readonly _tag: "PaymentRequiredError";
|
|
2594
|
+
readonly message: string;
|
|
2595
|
+
readonly resource: string;
|
|
2596
|
+
readonly currentUsage: number;
|
|
2597
|
+
readonly limit: number;
|
|
2598
|
+
} | {
|
|
2599
|
+
readonly _tag: "ValidationError";
|
|
2600
|
+
readonly message: string;
|
|
2601
|
+
readonly fields?: {
|
|
2602
|
+
readonly [x: string]: readonly string[];
|
|
2603
|
+
} | null;
|
|
2604
|
+
} | {
|
|
2605
|
+
readonly _tag: "ForbiddenError";
|
|
2606
|
+
readonly message: string;
|
|
2607
|
+
} | {
|
|
2608
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2609
|
+
readonly resource: string;
|
|
2610
|
+
readonly id: string;
|
|
2611
|
+
readonly message: string;
|
|
2612
|
+
} | null;
|
|
2613
|
+
} | null;
|
|
2614
|
+
readonly retryEligible: boolean;
|
|
2615
|
+
readonly decision: {
|
|
2616
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2617
|
+
readonly reason: string | null;
|
|
2618
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2619
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2620
|
+
readonly decidedAt: string;
|
|
2621
|
+
} | null;
|
|
2622
|
+
readonly createdAt: string;
|
|
2623
|
+
readonly updatedAt: string;
|
|
2624
|
+
};
|
|
2625
|
+
readonly intent: {
|
|
2626
|
+
readonly draftRevision: number;
|
|
2627
|
+
readonly from: string;
|
|
2628
|
+
readonly fromName: string | null;
|
|
2629
|
+
readonly to: readonly [string, ...string[]];
|
|
2630
|
+
readonly cc: readonly string[];
|
|
2631
|
+
readonly bcc: readonly string[];
|
|
2632
|
+
readonly replyTo: readonly string[];
|
|
2633
|
+
readonly subject: string;
|
|
2634
|
+
readonly text: string | null;
|
|
2635
|
+
readonly html: string | null;
|
|
2636
|
+
readonly attachments: readonly {
|
|
2637
|
+
readonly filename: string;
|
|
2638
|
+
readonly content?: string | null;
|
|
2639
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
2640
|
+
readonly contentType: string;
|
|
2641
|
+
readonly size: number;
|
|
2642
|
+
}[];
|
|
2643
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2644
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
2645
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2646
|
+
} | null;
|
|
2647
|
+
} | {
|
|
2648
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2649
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2650
|
+
readonly proposedBy: {
|
|
2651
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2652
|
+
readonly id: string;
|
|
2653
|
+
readonly displayName?: string | null;
|
|
2654
|
+
};
|
|
2655
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2656
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2657
|
+
readonly decision: {
|
|
2658
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2659
|
+
readonly reason: string | null;
|
|
2660
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2661
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2662
|
+
readonly decidedAt: string;
|
|
2663
|
+
} | null;
|
|
2664
|
+
readonly createdAt: string;
|
|
2665
|
+
readonly updatedAt: string;
|
|
2666
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
2667
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
2668
|
+
}, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
2669
|
+
export declare const cancelAction: (input: {
|
|
2670
|
+
readonly id: string;
|
|
2671
|
+
readonly actionId: string;
|
|
2672
|
+
}) => import("effect/Effect").Effect<{
|
|
2673
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2674
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2675
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2676
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2677
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2678
|
+
readonly acceptedAt: string | null;
|
|
2679
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2680
|
+
readonly reviewExpectedAt: string | null;
|
|
2681
|
+
readonly skippedRecipients: readonly {
|
|
2682
|
+
readonly address: string;
|
|
2683
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2684
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2685
|
+
}[];
|
|
2686
|
+
readonly executeUntil: string | null;
|
|
2687
|
+
readonly retryAt: string | null;
|
|
2688
|
+
readonly problem: {
|
|
2689
|
+
readonly code: string;
|
|
2690
|
+
readonly message: string;
|
|
2691
|
+
readonly error?: {
|
|
2692
|
+
readonly _tag: "SenderNotReadyError";
|
|
2693
|
+
readonly message: string;
|
|
2694
|
+
readonly sender: string;
|
|
2695
|
+
readonly retryAfterSeconds?: number | null;
|
|
2696
|
+
} | {
|
|
2697
|
+
readonly _tag: "RateLimitedError";
|
|
2698
|
+
readonly message: string;
|
|
2699
|
+
readonly retryAfterSeconds: number;
|
|
2700
|
+
} | {
|
|
2701
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2702
|
+
readonly message: string;
|
|
2703
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2704
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2705
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2706
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2707
|
+
readonly identityId?: string | null;
|
|
2708
|
+
} | {
|
|
2709
|
+
readonly _tag: "PaymentRequiredError";
|
|
2710
|
+
readonly message: string;
|
|
2711
|
+
readonly resource: string;
|
|
2712
|
+
readonly currentUsage: number;
|
|
2713
|
+
readonly limit: number;
|
|
2714
|
+
} | {
|
|
2715
|
+
readonly _tag: "ValidationError";
|
|
2716
|
+
readonly message: string;
|
|
2717
|
+
readonly fields?: {
|
|
2718
|
+
readonly [x: string]: readonly string[];
|
|
2719
|
+
} | null;
|
|
2720
|
+
} | {
|
|
2721
|
+
readonly _tag: "ForbiddenError";
|
|
2722
|
+
readonly message: string;
|
|
2723
|
+
} | {
|
|
2724
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2725
|
+
readonly resource: string;
|
|
2726
|
+
readonly id: string;
|
|
2727
|
+
readonly message: string;
|
|
2728
|
+
} | null;
|
|
2729
|
+
} | null;
|
|
2730
|
+
readonly retryEligible: boolean;
|
|
2731
|
+
readonly decision: {
|
|
2732
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2733
|
+
readonly reason: string | null;
|
|
2734
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2735
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2736
|
+
readonly decidedAt: string;
|
|
2737
|
+
} | null;
|
|
2738
|
+
readonly createdAt: string;
|
|
2739
|
+
readonly updatedAt: string;
|
|
2740
|
+
} | {
|
|
2741
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2742
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2743
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2744
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2745
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2746
|
+
readonly acceptedAt: string | null;
|
|
2747
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2748
|
+
readonly reviewExpectedAt: string | null;
|
|
2749
|
+
readonly skippedRecipients: readonly {
|
|
2750
|
+
readonly address: string;
|
|
2751
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2752
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2753
|
+
}[];
|
|
2754
|
+
readonly executeUntil: string | null;
|
|
2755
|
+
readonly retryAt: string | null;
|
|
2756
|
+
readonly problem: {
|
|
2757
|
+
readonly code: string;
|
|
2758
|
+
readonly message: string;
|
|
2759
|
+
readonly error?: {
|
|
2760
|
+
readonly _tag: "SenderNotReadyError";
|
|
2761
|
+
readonly message: string;
|
|
2762
|
+
readonly sender: string;
|
|
2763
|
+
readonly retryAfterSeconds?: number | null;
|
|
2764
|
+
} | {
|
|
2765
|
+
readonly _tag: "RateLimitedError";
|
|
2766
|
+
readonly message: string;
|
|
2767
|
+
readonly retryAfterSeconds: number;
|
|
2768
|
+
} | {
|
|
2769
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2770
|
+
readonly message: string;
|
|
2771
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2772
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2773
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2774
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2775
|
+
readonly identityId?: string | null;
|
|
2776
|
+
} | {
|
|
2777
|
+
readonly _tag: "PaymentRequiredError";
|
|
2778
|
+
readonly message: string;
|
|
2779
|
+
readonly resource: string;
|
|
2780
|
+
readonly currentUsage: number;
|
|
2781
|
+
readonly limit: number;
|
|
2782
|
+
} | {
|
|
2783
|
+
readonly _tag: "ValidationError";
|
|
2784
|
+
readonly message: string;
|
|
2785
|
+
readonly fields?: {
|
|
2786
|
+
readonly [x: string]: readonly string[];
|
|
2787
|
+
} | null;
|
|
2788
|
+
} | {
|
|
2789
|
+
readonly _tag: "ForbiddenError";
|
|
2790
|
+
readonly message: string;
|
|
2791
|
+
} | {
|
|
2792
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2793
|
+
readonly resource: string;
|
|
2794
|
+
readonly id: string;
|
|
2795
|
+
readonly message: string;
|
|
2796
|
+
} | null;
|
|
2797
|
+
} | null;
|
|
2798
|
+
readonly retryEligible: boolean;
|
|
2799
|
+
readonly decision: {
|
|
2800
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2801
|
+
readonly reason: string | null;
|
|
2802
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2803
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2804
|
+
readonly decidedAt: string;
|
|
2805
|
+
} | null;
|
|
2806
|
+
readonly createdAt: string;
|
|
2807
|
+
readonly updatedAt: string;
|
|
2808
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
2809
|
+
export declare const retryAction: (input: {
|
|
2810
|
+
readonly id: string;
|
|
2811
|
+
readonly actionId: string;
|
|
2812
|
+
}) => import("effect/Effect").Effect<{
|
|
2813
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2814
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2815
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2816
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2817
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2818
|
+
readonly acceptedAt: string | null;
|
|
2819
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2820
|
+
readonly reviewExpectedAt: string | null;
|
|
2821
|
+
readonly skippedRecipients: readonly {
|
|
2822
|
+
readonly address: string;
|
|
2823
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2824
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2825
|
+
}[];
|
|
2826
|
+
readonly executeUntil: string | null;
|
|
2827
|
+
readonly retryAt: string | null;
|
|
2828
|
+
readonly problem: {
|
|
2829
|
+
readonly code: string;
|
|
2830
|
+
readonly message: string;
|
|
2831
|
+
readonly error?: {
|
|
2832
|
+
readonly _tag: "SenderNotReadyError";
|
|
2833
|
+
readonly message: string;
|
|
2834
|
+
readonly sender: string;
|
|
2835
|
+
readonly retryAfterSeconds?: number | null;
|
|
2836
|
+
} | {
|
|
2837
|
+
readonly _tag: "RateLimitedError";
|
|
2838
|
+
readonly message: string;
|
|
2839
|
+
readonly retryAfterSeconds: number;
|
|
2840
|
+
} | {
|
|
2841
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2842
|
+
readonly message: string;
|
|
2843
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2844
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2845
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2846
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2847
|
+
readonly identityId?: string | null;
|
|
2848
|
+
} | {
|
|
2849
|
+
readonly _tag: "PaymentRequiredError";
|
|
2850
|
+
readonly message: string;
|
|
2851
|
+
readonly resource: string;
|
|
2852
|
+
readonly currentUsage: number;
|
|
2853
|
+
readonly limit: number;
|
|
2854
|
+
} | {
|
|
2855
|
+
readonly _tag: "ValidationError";
|
|
2856
|
+
readonly message: string;
|
|
2857
|
+
readonly fields?: {
|
|
2858
|
+
readonly [x: string]: readonly string[];
|
|
2859
|
+
} | null;
|
|
2860
|
+
} | {
|
|
2861
|
+
readonly _tag: "ForbiddenError";
|
|
2862
|
+
readonly message: string;
|
|
2863
|
+
} | {
|
|
2864
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2865
|
+
readonly resource: string;
|
|
2866
|
+
readonly id: string;
|
|
2867
|
+
readonly message: string;
|
|
2868
|
+
} | null;
|
|
2869
|
+
} | null;
|
|
2870
|
+
readonly retryEligible: boolean;
|
|
2871
|
+
readonly decision: {
|
|
2872
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2873
|
+
readonly reason: string | null;
|
|
2874
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2875
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2876
|
+
readonly decidedAt: string;
|
|
2877
|
+
} | null;
|
|
2878
|
+
readonly createdAt: string;
|
|
2879
|
+
readonly updatedAt: string;
|
|
2880
|
+
} | {
|
|
2881
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2882
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2883
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2884
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2885
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2886
|
+
readonly acceptedAt: string | null;
|
|
2887
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2888
|
+
readonly reviewExpectedAt: string | null;
|
|
2889
|
+
readonly skippedRecipients: readonly {
|
|
2890
|
+
readonly address: string;
|
|
2891
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2892
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2893
|
+
}[];
|
|
2894
|
+
readonly executeUntil: string | null;
|
|
2895
|
+
readonly retryAt: string | null;
|
|
2896
|
+
readonly problem: {
|
|
2897
|
+
readonly code: string;
|
|
2898
|
+
readonly message: string;
|
|
2899
|
+
readonly error?: {
|
|
2900
|
+
readonly _tag: "SenderNotReadyError";
|
|
2901
|
+
readonly message: string;
|
|
2902
|
+
readonly sender: string;
|
|
2903
|
+
readonly retryAfterSeconds?: number | null;
|
|
2904
|
+
} | {
|
|
2905
|
+
readonly _tag: "RateLimitedError";
|
|
2906
|
+
readonly message: string;
|
|
2907
|
+
readonly retryAfterSeconds: number;
|
|
2908
|
+
} | {
|
|
2909
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
2910
|
+
readonly message: string;
|
|
2911
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
2912
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
2913
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
2914
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
2915
|
+
readonly identityId?: string | null;
|
|
2916
|
+
} | {
|
|
2917
|
+
readonly _tag: "PaymentRequiredError";
|
|
2918
|
+
readonly message: string;
|
|
2919
|
+
readonly resource: string;
|
|
2920
|
+
readonly currentUsage: number;
|
|
2921
|
+
readonly limit: number;
|
|
2922
|
+
} | {
|
|
2923
|
+
readonly _tag: "ValidationError";
|
|
2924
|
+
readonly message: string;
|
|
2925
|
+
readonly fields?: {
|
|
2926
|
+
readonly [x: string]: readonly string[];
|
|
2927
|
+
} | null;
|
|
2928
|
+
} | {
|
|
2929
|
+
readonly _tag: "ForbiddenError";
|
|
2930
|
+
readonly message: string;
|
|
2931
|
+
} | {
|
|
2932
|
+
readonly _tag: "ResourceNotFoundError";
|
|
2933
|
+
readonly resource: string;
|
|
2934
|
+
readonly id: string;
|
|
2935
|
+
readonly message: string;
|
|
2936
|
+
} | null;
|
|
2937
|
+
} | null;
|
|
2938
|
+
readonly retryEligible: boolean;
|
|
2939
|
+
readonly decision: {
|
|
2940
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2941
|
+
readonly reason: string | null;
|
|
2942
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2943
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2944
|
+
readonly decidedAt: string;
|
|
2945
|
+
} | null;
|
|
2946
|
+
readonly createdAt: string;
|
|
2947
|
+
readonly updatedAt: string;
|
|
2948
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
2949
|
+
export declare const approveAction: (input: {
|
|
2950
|
+
readonly id: string;
|
|
2951
|
+
readonly actionId: string;
|
|
2952
|
+
}) => import("effect/Effect").Effect<{
|
|
2953
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2954
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
2955
|
+
readonly proposedBy: {
|
|
2956
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
2957
|
+
readonly id: string;
|
|
2958
|
+
readonly displayName?: string | null;
|
|
2959
|
+
};
|
|
2960
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2961
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2962
|
+
readonly decision: {
|
|
2963
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
2964
|
+
readonly reason: string | null;
|
|
2965
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
2966
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
2967
|
+
readonly decidedAt: string;
|
|
2968
|
+
} | null;
|
|
2969
|
+
readonly createdAt: string;
|
|
2970
|
+
readonly updatedAt: string;
|
|
2971
|
+
readonly type: "reply" | "sendMessage";
|
|
2972
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2973
|
+
readonly send: {
|
|
2974
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
2975
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
2976
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
2977
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
2978
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
2979
|
+
readonly acceptedAt: string | null;
|
|
2980
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
2981
|
+
readonly reviewExpectedAt: string | null;
|
|
2982
|
+
readonly skippedRecipients: readonly {
|
|
2983
|
+
readonly address: string;
|
|
2984
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
2985
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
2986
|
+
}[];
|
|
2987
|
+
readonly executeUntil: string | null;
|
|
2988
|
+
readonly retryAt: string | null;
|
|
2989
|
+
readonly problem: {
|
|
2990
|
+
readonly code: string;
|
|
2991
|
+
readonly message: string;
|
|
2992
|
+
readonly error?: {
|
|
2993
|
+
readonly _tag: "SenderNotReadyError";
|
|
2994
|
+
readonly message: string;
|
|
2995
|
+
readonly sender: string;
|
|
2996
|
+
readonly retryAfterSeconds?: number | null;
|
|
2997
|
+
} | {
|
|
2998
|
+
readonly _tag: "RateLimitedError";
|
|
2999
|
+
readonly message: string;
|
|
3000
|
+
readonly retryAfterSeconds: number;
|
|
3001
|
+
} | {
|
|
3002
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
3003
|
+
readonly message: string;
|
|
3004
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
3005
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
3006
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
3007
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
3008
|
+
readonly identityId?: string | null;
|
|
3009
|
+
} | {
|
|
3010
|
+
readonly _tag: "PaymentRequiredError";
|
|
3011
|
+
readonly message: string;
|
|
3012
|
+
readonly resource: string;
|
|
3013
|
+
readonly currentUsage: number;
|
|
3014
|
+
readonly limit: number;
|
|
3015
|
+
} | {
|
|
3016
|
+
readonly _tag: "ValidationError";
|
|
3017
|
+
readonly message: string;
|
|
3018
|
+
readonly fields?: {
|
|
3019
|
+
readonly [x: string]: readonly string[];
|
|
3020
|
+
} | null;
|
|
3021
|
+
} | {
|
|
3022
|
+
readonly _tag: "ForbiddenError";
|
|
3023
|
+
readonly message: string;
|
|
3024
|
+
} | {
|
|
3025
|
+
readonly _tag: "ResourceNotFoundError";
|
|
3026
|
+
readonly resource: string;
|
|
3027
|
+
readonly id: string;
|
|
3028
|
+
readonly message: string;
|
|
3029
|
+
} | null;
|
|
3030
|
+
} | null;
|
|
3031
|
+
readonly retryEligible: boolean;
|
|
3032
|
+
readonly decision: {
|
|
3033
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
3034
|
+
readonly reason: string | null;
|
|
3035
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
3036
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
3037
|
+
readonly decidedAt: string;
|
|
3038
|
+
} | null;
|
|
3039
|
+
readonly createdAt: string;
|
|
3040
|
+
readonly updatedAt: string;
|
|
3041
|
+
};
|
|
3042
|
+
readonly intent: {
|
|
3043
|
+
readonly draftRevision: number;
|
|
3044
|
+
readonly from: string;
|
|
3045
|
+
readonly fromName: string | null;
|
|
3046
|
+
readonly to: readonly [string, ...string[]];
|
|
3047
|
+
readonly cc: readonly string[];
|
|
3048
|
+
readonly bcc: readonly string[];
|
|
3049
|
+
readonly replyTo: readonly string[];
|
|
3050
|
+
readonly subject: string;
|
|
3051
|
+
readonly text: string | null;
|
|
3052
|
+
readonly html: string | null;
|
|
3053
|
+
readonly attachments: readonly {
|
|
3054
|
+
readonly filename: string;
|
|
3055
|
+
readonly content?: string | null;
|
|
3056
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
3057
|
+
readonly contentType: string;
|
|
3058
|
+
readonly size: number;
|
|
3059
|
+
}[];
|
|
3060
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
3061
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
3062
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
3063
|
+
} | null;
|
|
3064
|
+
} | {
|
|
3065
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
3066
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
3067
|
+
readonly proposedBy: {
|
|
3068
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
3069
|
+
readonly id: string;
|
|
3070
|
+
readonly displayName?: string | null;
|
|
1570
3071
|
};
|
|
1571
3072
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1572
3073
|
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
@@ -1574,19 +3075,20 @@ export declare const approveAction: (input: {
|
|
|
1574
3075
|
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1575
3076
|
readonly reason: string | null;
|
|
1576
3077
|
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
3078
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1577
3079
|
readonly decidedAt: string;
|
|
1578
3080
|
} | null;
|
|
1579
3081
|
readonly createdAt: string;
|
|
1580
3082
|
readonly updatedAt: string;
|
|
1581
|
-
|
|
3083
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
3084
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
3085
|
+
}, import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").MailboxSendRefusedError | import("./generated").OnboardingReviewRequiredError | import("./generated").PaymentRequiredError | import("./generated").RateLimitedError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").SenderNotReadyError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1582
3086
|
export declare const denyAction: (input: {
|
|
1583
3087
|
readonly id: string;
|
|
1584
3088
|
readonly actionId: string;
|
|
1585
3089
|
readonly reason: string;
|
|
1586
3090
|
}) => import("effect/Effect").Effect<{
|
|
1587
3091
|
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
1588
|
-
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "reply" | "sendMessage" | "updateDraft";
|
|
1589
|
-
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
1590
3092
|
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
1591
3093
|
readonly proposedBy: {
|
|
1592
3094
|
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
@@ -1599,11 +3101,126 @@ export declare const denyAction: (input: {
|
|
|
1599
3101
|
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
1600
3102
|
readonly reason: string | null;
|
|
1601
3103
|
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
3104
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
1602
3105
|
readonly decidedAt: string;
|
|
1603
3106
|
} | null;
|
|
1604
3107
|
readonly createdAt: string;
|
|
1605
3108
|
readonly updatedAt: string;
|
|
1606
|
-
|
|
3109
|
+
readonly type: "reply" | "sendMessage";
|
|
3110
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
3111
|
+
readonly send: {
|
|
3112
|
+
readonly actionId: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
3113
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
3114
|
+
readonly messageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
3115
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
3116
|
+
readonly state: "accepted" | "approvalRequired" | "completed" | "notSent" | "queued" | "uncertain";
|
|
3117
|
+
readonly acceptedAt: string | null;
|
|
3118
|
+
readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "screening-unavailable" | "sending-paused" | "upstream-unavailable" | null;
|
|
3119
|
+
readonly reviewExpectedAt: string | null;
|
|
3120
|
+
readonly skippedRecipients: readonly {
|
|
3121
|
+
readonly address: string;
|
|
3122
|
+
readonly reason: "bounce" | "complaint" | "group-unsubscribe" | "manual" | "unsubscribe";
|
|
3123
|
+
readonly unsubscribeGroupId?: (string & import("effect/Brand").Brand<"UnsubscribeId">) | null;
|
|
3124
|
+
}[];
|
|
3125
|
+
readonly executeUntil: string | null;
|
|
3126
|
+
readonly retryAt: string | null;
|
|
3127
|
+
readonly problem: {
|
|
3128
|
+
readonly code: string;
|
|
3129
|
+
readonly message: string;
|
|
3130
|
+
readonly error?: {
|
|
3131
|
+
readonly _tag: "SenderNotReadyError";
|
|
3132
|
+
readonly message: string;
|
|
3133
|
+
readonly sender: string;
|
|
3134
|
+
readonly retryAfterSeconds?: number | null;
|
|
3135
|
+
} | {
|
|
3136
|
+
readonly _tag: "RateLimitedError";
|
|
3137
|
+
readonly message: string;
|
|
3138
|
+
readonly retryAfterSeconds: number;
|
|
3139
|
+
} | {
|
|
3140
|
+
readonly _tag: "OnboardingReviewRequiredError";
|
|
3141
|
+
readonly message: string;
|
|
3142
|
+
readonly code: "identity_changed" | "identity_review_rejected" | "identity_review_required" | "information_required" | "review_in_progress" | "review_rejected" | "review_required";
|
|
3143
|
+
readonly decision: "approved" | "rejected" | "undecided";
|
|
3144
|
+
readonly stage: "automated_review" | "collecting" | "complete" | "information_requested" | "manual_review";
|
|
3145
|
+
readonly nextAction: "contact_support" | "provide_information" | "reapply" | "verify_sending_identity" | "wait_for_review";
|
|
3146
|
+
readonly identityId?: string | null;
|
|
3147
|
+
} | {
|
|
3148
|
+
readonly _tag: "PaymentRequiredError";
|
|
3149
|
+
readonly message: string;
|
|
3150
|
+
readonly resource: string;
|
|
3151
|
+
readonly currentUsage: number;
|
|
3152
|
+
readonly limit: number;
|
|
3153
|
+
} | {
|
|
3154
|
+
readonly _tag: "ValidationError";
|
|
3155
|
+
readonly message: string;
|
|
3156
|
+
readonly fields?: {
|
|
3157
|
+
readonly [x: string]: readonly string[];
|
|
3158
|
+
} | null;
|
|
3159
|
+
} | {
|
|
3160
|
+
readonly _tag: "ForbiddenError";
|
|
3161
|
+
readonly message: string;
|
|
3162
|
+
} | {
|
|
3163
|
+
readonly _tag: "ResourceNotFoundError";
|
|
3164
|
+
readonly resource: string;
|
|
3165
|
+
readonly id: string;
|
|
3166
|
+
readonly message: string;
|
|
3167
|
+
} | null;
|
|
3168
|
+
} | null;
|
|
3169
|
+
readonly retryEligible: boolean;
|
|
3170
|
+
readonly decision: {
|
|
3171
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
3172
|
+
readonly reason: string | null;
|
|
3173
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
3174
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
3175
|
+
readonly decidedAt: string;
|
|
3176
|
+
} | null;
|
|
3177
|
+
readonly createdAt: string;
|
|
3178
|
+
readonly updatedAt: string;
|
|
3179
|
+
};
|
|
3180
|
+
readonly intent: {
|
|
3181
|
+
readonly draftRevision: number;
|
|
3182
|
+
readonly from: string;
|
|
3183
|
+
readonly fromName: string | null;
|
|
3184
|
+
readonly to: readonly [string, ...string[]];
|
|
3185
|
+
readonly cc: readonly string[];
|
|
3186
|
+
readonly bcc: readonly string[];
|
|
3187
|
+
readonly replyTo: readonly string[];
|
|
3188
|
+
readonly subject: string;
|
|
3189
|
+
readonly text: string | null;
|
|
3190
|
+
readonly html: string | null;
|
|
3191
|
+
readonly attachments: readonly {
|
|
3192
|
+
readonly filename: string;
|
|
3193
|
+
readonly content?: string | null;
|
|
3194
|
+
readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
|
|
3195
|
+
readonly contentType: string;
|
|
3196
|
+
readonly size: number;
|
|
3197
|
+
}[];
|
|
3198
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
3199
|
+
readonly conversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
|
|
3200
|
+
readonly inReplyToMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
|
|
3201
|
+
} | null;
|
|
3202
|
+
} | {
|
|
3203
|
+
readonly id: string & import("effect/Brand").Brand<"MailboxActionId">;
|
|
3204
|
+
readonly source: "aiSdkTool" | "extension" | "externalAgent" | "externalApi" | "humanUi" | "samvaManagedAgent" | "system";
|
|
3205
|
+
readonly proposedBy: {
|
|
3206
|
+
readonly kind: "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system" | "user";
|
|
3207
|
+
readonly id: string;
|
|
3208
|
+
readonly displayName?: string | null;
|
|
3209
|
+
};
|
|
3210
|
+
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
3211
|
+
readonly draftId: (string & import("effect/Brand").Brand<"MailboxDraftId">) | null;
|
|
3212
|
+
readonly decision: {
|
|
3213
|
+
readonly outcome: "allow" | "deny" | "requireApproval";
|
|
3214
|
+
readonly reason: string | null;
|
|
3215
|
+
readonly policyId: (string & import("effect/Brand").Brand<"MailboxPolicyId">) | null;
|
|
3216
|
+
readonly source: "grant" | "installation" | "policy" | null;
|
|
3217
|
+
readonly decidedAt: string;
|
|
3218
|
+
} | null;
|
|
3219
|
+
readonly createdAt: string;
|
|
3220
|
+
readonly updatedAt: string;
|
|
3221
|
+
readonly type: "assignThread" | "call" | "changeThreadState" | "createNote" | "extensionRequest" | "updateDraft";
|
|
3222
|
+
readonly state: "allowed" | "approvalDenied" | "approvalRequired" | "approved" | "executed" | "executing" | "failed" | "policyDenied" | "proposed";
|
|
3223
|
+
}, import("./generated").ConflictError | import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").MailboxSendConflictError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
|
|
1607
3224
|
export declare const listEvents: ((input: {
|
|
1608
3225
|
readonly id: string;
|
|
1609
3226
|
readonly limit?: string | null | undefined;
|
|
@@ -1613,7 +3230,7 @@ export declare const listEvents: ((input: {
|
|
|
1613
3230
|
}) => import("effect/Effect").Effect<{
|
|
1614
3231
|
readonly items: readonly {
|
|
1615
3232
|
readonly id: string & import("effect/Brand").Brand<"MailboxEventId">;
|
|
1616
|
-
readonly type: "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "
|
|
3233
|
+
readonly type: "action.accepted" | "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "email.received" | "email.released" | "email.sent" | "mailbox.created" | "thread.created";
|
|
1617
3234
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1618
3235
|
readonly actionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1619
3236
|
readonly actor: {
|
|
@@ -1637,7 +3254,7 @@ export declare const listEvents: ((input: {
|
|
|
1637
3254
|
}) => import("effect/Stream").Stream<{
|
|
1638
3255
|
readonly items: readonly {
|
|
1639
3256
|
readonly id: string & import("effect/Brand").Brand<"MailboxEventId">;
|
|
1640
|
-
readonly type: "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "
|
|
3257
|
+
readonly type: "action.accepted" | "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "email.received" | "email.released" | "email.sent" | "mailbox.created" | "thread.created";
|
|
1641
3258
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1642
3259
|
readonly actionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1643
3260
|
readonly actor: {
|
|
@@ -1660,7 +3277,7 @@ export declare const listEvents: ((input: {
|
|
|
1660
3277
|
readonly before?: string | null | undefined;
|
|
1661
3278
|
}) => import("effect/Stream").Stream<{
|
|
1662
3279
|
readonly id: string & import("effect/Brand").Brand<"MailboxEventId">;
|
|
1663
|
-
readonly type: "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "
|
|
3280
|
+
readonly type: "action.accepted" | "action.approval_requested" | "action.approval_resolved" | "action.executed" | "action.failed" | "action.policy_decided" | "action.proposed" | "address.attached" | "email.received" | "email.released" | "email.sent" | "mailbox.created" | "thread.created";
|
|
1664
3281
|
readonly threadId: (string & import("effect/Brand").Brand<"MailboxThreadId">) | null;
|
|
1665
3282
|
readonly actionId: (string & import("effect/Brand").Brand<"MailboxActionId">) | null;
|
|
1666
3283
|
readonly actor: {
|