resend 6.32.1-preview-inboxes.4 → 6.32.1-preview-inboxes.6

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/dist/index.cjs CHANGED
@@ -49,22 +49,9 @@ const MOVE_THREAD_FOLDERS = [
49
49
  "spam",
50
50
  "trash"
51
51
  ];
52
- const INBOX_LABEL_COLORS = [
53
- "cyan",
54
- "teal",
55
- "grass",
56
- "lime",
57
- "yellow",
58
- "orange",
59
- "iris",
60
- "plum",
61
- "crimson",
62
- "bronze",
63
- "mauve"
64
- ];
65
52
  //#endregion
66
53
  //#region package.json
67
- var version = "6.32.1-preview-inboxes.4";
54
+ var version = "6.32.1-preview-inboxes.6";
68
55
  //#endregion
69
56
  //#region src/common/utils/build-pagination-query.ts
70
57
  function buildPaginationUrl(base, options) {
@@ -1039,14 +1026,10 @@ var InboxAgent = class {
1039
1026
  //#region src/inboxes/build-inbox-cursor-query.ts
1040
1027
  function buildInboxCursorUrl(base, options = {}) {
1041
1028
  const searchParams = new URLSearchParams();
1042
- if (options.folder !== void 0) searchParams.set("folder", options.folder);
1043
- if (options.query !== void 0) searchParams.set("query", options.query);
1044
- if (options.from !== void 0) searchParams.set("from", options.from);
1045
- if (options.limit !== void 0) searchParams.set("limit", String(options.limit));
1046
- if (options.after !== void 0) searchParams.set("after", options.after);
1047
- if (options.before !== void 0) searchParams.set("before", options.before);
1048
- const labels = options.label === void 0 ? [] : Array.isArray(options.label) ? options.label : [options.label];
1049
- for (const label of labels) searchParams.append("label", label);
1029
+ for (const [key, value] of Object.entries(options)) {
1030
+ if (value === void 0) continue;
1031
+ searchParams.set(key, Array.isArray(value) ? value.join(",") : String(value));
1032
+ }
1050
1033
  const queryString = searchParams.toString();
1051
1034
  return queryString ? `${base}?${queryString}` : base;
1052
1035
  }
@@ -1164,8 +1147,35 @@ var InboxThreads = class {
1164
1147
  this.emails = new InboxThreadEmails(resend);
1165
1148
  }
1166
1149
  async list(options, requestOptions = {}) {
1167
- const { inboxId, ...query } = options;
1168
- const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads`, query);
1150
+ const { inboxId, folders, labels, read, limit, after, before } = options;
1151
+ const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads`, {
1152
+ folders,
1153
+ labels,
1154
+ read,
1155
+ limit,
1156
+ after,
1157
+ before
1158
+ });
1159
+ return this.resend.get(url, requestOptions);
1160
+ }
1161
+ async search(options, requestOptions = {}) {
1162
+ const { inboxId, folders, labels, read, query, from, to, cc, bcc, hasAttachment, startDate, endDate, limit, after, before } = options;
1163
+ const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads/search`, {
1164
+ folders,
1165
+ labels,
1166
+ read,
1167
+ query,
1168
+ from,
1169
+ to,
1170
+ cc,
1171
+ bcc,
1172
+ has_attachment: hasAttachment,
1173
+ start_date: startDate,
1174
+ end_date: endDate,
1175
+ limit,
1176
+ after,
1177
+ before
1178
+ });
1169
1179
  return this.resend.get(url, requestOptions);
1170
1180
  }
1171
1181
  async get(options, requestOptions = {}) {
@@ -1718,7 +1728,6 @@ var Resend = class {
1718
1728
  };
1719
1729
  //#endregion
1720
1730
  exports.INBOX_AGENT_ACTIONS = INBOX_AGENT_ACTIONS;
1721
- exports.INBOX_LABEL_COLORS = INBOX_LABEL_COLORS;
1722
1731
  exports.INBOX_MESSAGE_FOLDERS = INBOX_MESSAGE_FOLDERS;
1723
1732
  exports.MOVE_THREAD_FOLDERS = MOVE_THREAD_FOLDERS;
1724
1733
  exports.Resend = Resend;
package/dist/index.d.cts CHANGED
@@ -1791,6 +1791,31 @@ interface UpdateInboxAgentResponseSuccess {
1791
1791
  }
1792
1792
  type UpdateInboxAgentResponse = Response<UpdateInboxAgentResponseSuccess>;
1793
1793
  //#endregion
1794
+ //#region src/inboxes/drafts/interfaces/create-inbox-draft.interface.d.ts
1795
+ type CreateInboxDraftContent = RequireAtLeastOne<{
1796
+ to?: string | string[];
1797
+ cc?: string | string[];
1798
+ bcc?: string | string[];
1799
+ subject?: string | null;
1800
+ text?: string | null;
1801
+ html?: string | null;
1802
+ }>;
1803
+ type CreateInboxDraftOptions = {
1804
+ inboxId: string;
1805
+ } & CreateInboxDraftContent & ({
1806
+ threadId: string;
1807
+ replyToEmailId: string;
1808
+ } | {
1809
+ threadId?: never;
1810
+ replyToEmailId?: never;
1811
+ });
1812
+ interface CreateInboxDraftRequestOptions extends PostOptions {}
1813
+ interface CreateInboxDraftResponseSuccess {
1814
+ object: 'inbox_draft';
1815
+ id: string;
1816
+ }
1817
+ type CreateInboxDraftResponse = Response<CreateInboxDraftResponseSuccess>;
1818
+ //#endregion
1794
1819
  //#region src/inboxes/drafts/interfaces/draft.d.ts
1795
1820
  type InboxDraftType = 'standalone' | 'reply';
1796
1821
  interface InboxDraft {
@@ -1822,28 +1847,6 @@ interface InboxDraftListItem {
1822
1847
  updated_at: string;
1823
1848
  }
1824
1849
  //#endregion
1825
- //#region src/inboxes/drafts/interfaces/create-inbox-draft.interface.d.ts
1826
- type CreateInboxDraftContent = RequireAtLeastOne<{
1827
- to?: string | string[];
1828
- cc?: string | string[];
1829
- bcc?: string | string[];
1830
- subject?: string | null;
1831
- text?: string | null;
1832
- html?: string | null;
1833
- }>;
1834
- type CreateInboxDraftOptions = {
1835
- inboxId: string;
1836
- } & CreateInboxDraftContent & ({
1837
- threadId: string;
1838
- replyToEmailId: string;
1839
- } | {
1840
- threadId?: never;
1841
- replyToEmailId?: never;
1842
- });
1843
- interface CreateInboxDraftRequestOptions extends PostOptions {}
1844
- type CreateInboxDraftResponseSuccess = InboxDraft;
1845
- type CreateInboxDraftResponse = Response<CreateInboxDraftResponseSuccess>;
1846
- //#endregion
1847
1850
  //#region src/inboxes/drafts/interfaces/get-inbox-draft.interface.d.ts
1848
1851
  interface GetInboxDraftOptions {
1849
1852
  inboxId: string;
@@ -1909,8 +1912,7 @@ export declare const INBOX_MESSAGE_FOLDERS: readonly ["inbox", "archive", "spam"
1909
1912
  type InboxMessageFolder = (typeof INBOX_MESSAGE_FOLDERS)[number];
1910
1913
  export declare const MOVE_THREAD_FOLDERS: readonly ["inbox", "archive", "spam", "trash"];
1911
1914
  type MoveThreadFolder = (typeof MOVE_THREAD_FOLDERS)[number];
1912
- export declare const INBOX_LABEL_COLORS: readonly ["cyan", "teal", "grass", "lime", "yellow", "orange", "iris", "plum", "crimson", "bronze", "mauve"];
1913
- type InboxLabelColor = (typeof INBOX_LABEL_COLORS)[number];
1915
+ type InboxLabelColor = `#${string}`;
1914
1916
  interface Inbox {
1915
1917
  id: string;
1916
1918
  name: string | null;
@@ -1930,9 +1932,6 @@ interface CreateInboxLabelRequestOptions extends PostOptions {}
1930
1932
  interface CreateInboxLabelResponseSuccess {
1931
1933
  object: 'inbox_label';
1932
1934
  id: string;
1933
- name: string;
1934
- color: InboxLabelColor;
1935
- created_at: string;
1936
1935
  }
1937
1936
  type CreateInboxLabelResponse = Response<CreateInboxLabelResponseSuccess>;
1938
1937
  //#endregion
@@ -1998,6 +1997,7 @@ interface InboxThread {
1998
1997
  has_draft: boolean;
1999
1998
  read: boolean;
2000
1999
  received_at: string;
2000
+ folder: InboxMessageFolder;
2001
2001
  }
2002
2002
  interface InboxThreadSummary {
2003
2003
  object: 'inbox_thread';
@@ -2098,9 +2098,9 @@ type ListInboxThreadEmailsResponse = Response<ListInboxThreadEmailsResponseSucce
2098
2098
  //#region src/inboxes/threads/interfaces/list-inbox-threads.interface.d.ts
2099
2099
  type ListInboxThreadsOptions = {
2100
2100
  inboxId: string;
2101
- folder?: InboxMessageFolder;
2102
- query?: string;
2103
- label?: string | string[];
2101
+ folders?: InboxMessageFolder[];
2102
+ labels?: string[];
2103
+ read?: boolean;
2104
2104
  } & PaginationOptions;
2105
2105
  interface ListInboxThreadsResponseSuccess {
2106
2106
  object: 'list';
@@ -2121,6 +2121,29 @@ interface RemoveInboxThreadResponseSuccess {
2121
2121
  }
2122
2122
  type RemoveInboxThreadResponse = Response<RemoveInboxThreadResponseSuccess>;
2123
2123
  //#endregion
2124
+ //#region src/inboxes/threads/interfaces/search-inbox-threads.interface.d.ts
2125
+ type SearchInboxThreadsOptions = ListInboxThreadsOptions & {
2126
+ query?: string;
2127
+ from?: string[];
2128
+ to?: string[];
2129
+ cc?: string[];
2130
+ bcc?: string[];
2131
+ hasAttachment?: boolean;
2132
+ startDate?: string;
2133
+ endDate?: string;
2134
+ };
2135
+ type InboxThreadSearchHighlightKey = 'subject' | 'body' | 'from' | 'to' | 'cc' | 'bcc' | 'attachments';
2136
+ interface InboxThreadSearchResult extends InboxThread {
2137
+ matched_email_id: string | null;
2138
+ highlights: Partial<Record<InboxThreadSearchHighlightKey, string[]>>;
2139
+ }
2140
+ interface SearchInboxThreadsResponseSuccess {
2141
+ object: 'list';
2142
+ has_more: boolean;
2143
+ data: InboxThreadSearchResult[];
2144
+ }
2145
+ type SearchInboxThreadsResponse = Response<SearchInboxThreadsResponseSuccess>;
2146
+ //#endregion
2124
2147
  //#region src/inboxes/threads/interfaces/update-inbox-thread.interface.d.ts
2125
2148
  type UpdateInboxThreadOptions = {
2126
2149
  inboxId: string;
@@ -2134,6 +2157,20 @@ type UpdateInboxThreadOptions = {
2134
2157
  type UpdateInboxThreadResponseSuccess = InboxThreadSummary;
2135
2158
  type UpdateInboxThreadResponse = Response<UpdateInboxThreadResponseSuccess>;
2136
2159
  //#endregion
2160
+ //#region src/inboxes/interfaces/create-inbox.interface.d.ts
2161
+ interface CreateInboxOptions {
2162
+ emailAddress: string;
2163
+ name?: string;
2164
+ forwarding?: boolean;
2165
+ fromName?: string;
2166
+ }
2167
+ interface CreateInboxRequestOptions extends PostOptions {}
2168
+ interface CreateInboxResponseSuccess {
2169
+ object: 'inbox';
2170
+ id: string;
2171
+ }
2172
+ type CreateInboxResponse = Response<CreateInboxResponseSuccess>;
2173
+ //#endregion
2137
2174
  //#region src/inboxes/interfaces/get-inbox.interface.d.ts
2138
2175
  interface GetInboxResponseSuccess {
2139
2176
  object: 'inbox';
@@ -2150,17 +2187,6 @@ interface GetInboxResponseSuccess {
2150
2187
  }
2151
2188
  type GetInboxResponse = Response<GetInboxResponseSuccess>;
2152
2189
  //#endregion
2153
- //#region src/inboxes/interfaces/create-inbox.interface.d.ts
2154
- interface CreateInboxOptions {
2155
- emailAddress: string;
2156
- name?: string;
2157
- forwarding?: boolean;
2158
- fromName?: string;
2159
- }
2160
- interface CreateInboxRequestOptions extends PostOptions {}
2161
- type CreateInboxResponseSuccess = GetInboxResponseSuccess;
2162
- type CreateInboxResponse = Response<CreateInboxResponseSuccess>;
2163
- //#endregion
2164
2190
  //#region src/inboxes/interfaces/list-inboxes.interface.d.ts
2165
2191
  type ListInboxesOptions = PaginationOptions;
2166
2192
  interface ListInboxesResponseSuccess {
@@ -2484,6 +2510,7 @@ declare class InboxThreads {
2484
2510
  readonly emails: InboxThreadEmails;
2485
2511
  constructor(resend: Resend);
2486
2512
  list(options: ListInboxThreadsOptions, requestOptions?: RequestOptions): Promise<ListInboxThreadsResponse>;
2513
+ search(options: SearchInboxThreadsOptions, requestOptions?: RequestOptions): Promise<SearchInboxThreadsResponse>;
2487
2514
  get(options: GetInboxThreadOptions, requestOptions?: RequestOptions): Promise<GetInboxThreadResponse>;
2488
2515
  update(options: UpdateInboxThreadOptions, requestOptions?: RequestOptions): Promise<UpdateInboxThreadResponse>;
2489
2516
  remove(options: RemoveInboxThreadOptions, requestOptions?: RequestOptions): Promise<RemoveInboxThreadResponse>;
@@ -3440,4 +3467,4 @@ export declare class Resend {
3440
3467
  delete<T>(path: string, query?: unknown, options?: DeleteOptions): Promise<Response<T>>;
3441
3468
  }
3442
3469
  //#endregion
3443
- export type { ContactCreatedEvent, ContactDeletedEvent, ContactTopicsUpdatedEvent, ContactUpdatedEvent, CreateInboxDraftOptions, CreateInboxDraftRequestOptions, CreateInboxDraftResponse, CreateInboxDraftResponseSuccess, CreateInboxLabelOptions, CreateInboxLabelRequestOptions, CreateInboxLabelResponse, CreateInboxLabelResponseSuccess, CreateInboxOptions, CreateInboxRequestOptions, CreateInboxResponse, CreateInboxResponseSuccess, CreateWebhookOptions, CreateWebhookRequestOptions, CreateWebhookResponse, CreateWebhookResponseSuccess, DomainCreatedEvent, DomainDeletedEvent, DomainUpdatedEvent, EmailBouncedEvent, EmailClickedEvent, EmailComplainedEvent, EmailDeliveredEvent, EmailDeliveryDelayedEvent, EmailFailedEvent, EmailOpenedEvent, EmailReceivedEvent, EmailScheduledEvent, EmailSentEvent, EmailSuppressedEvent, ErrorResponse, ForwardInboxThreadEmailOptions, ForwardInboxThreadEmailRequestOptions, ForwardInboxThreadEmailResponse, ForwardInboxThreadEmailResponseSuccess, GetAttachmentOptions, GetAttachmentResponse, GetAttachmentResponseSuccess, GetInboxAgentOptions, GetInboxAgentResponse, GetInboxAgentResponseSuccess, GetInboxDraftOptions, GetInboxDraftResponse, GetInboxDraftResponseSuccess, GetInboxResponse, GetInboxResponseSuccess, GetInboxThreadEmailOptions, GetInboxThreadEmailResponse, GetInboxThreadEmailResponseSuccess, GetInboxThreadOptions, GetInboxThreadResponse, GetInboxThreadResponseSuccess, GetWebhookEventOptions, GetWebhookEventResponse, GetWebhookEventResponseSuccess, GetWebhookResponse, GetWebhookResponseSuccess, Inbox, InboxAgentAction, InboxAgentSettings, InboxCreatedEvent, InboxDeletedEvent, InboxDraft, InboxDraftCreatedEvent, InboxDraftDeletedEvent, InboxDraftListItem, InboxDraftSentEvent, InboxDraftType, InboxDraftUpdatedEvent, InboxEmailReceivedEvent, InboxEmailSentEvent, InboxLabel, InboxLabelColor, InboxMessage, InboxMessageAttachment, InboxMessageFolder, InboxThread, InboxThreadAssignedEvent, InboxThreadCreatedEvent, InboxThreadFolderUpdatedEvent, InboxThreadLabel, InboxThreadLabelsUpdatedEvent, InboxThreadSummary, InboxThreadUnassignedEvent, InboxUpdatedEvent, ListAttachmentsOptions, ListAttachmentsResponse, ListAttachmentsResponseSuccess, ListInboxDraftsOptions, ListInboxDraftsResponse, ListInboxDraftsResponseSuccess, ListInboxLabelsOptions, ListInboxLabelsResponse, ListInboxLabelsResponseSuccess, ListInboxThreadEmailsOptions, ListInboxThreadEmailsResponse, ListInboxThreadEmailsResponseSuccess, ListInboxThreadsOptions, ListInboxThreadsResponse, ListInboxThreadsResponseSuccess, ListInboxesOptions, ListInboxesResponse, ListInboxesResponseSuccess, ListOAuthGrantsOptions, ListOAuthGrantsResponse, ListOAuthGrantsResponseSuccess, ListWebhookEventAttemptsOptions, ListWebhookEventAttemptsResponse, ListWebhookEventAttemptsResponseSuccess, ListWebhookEventsOptions, ListWebhookEventsResponse, ListWebhookEventsResponseSuccess, ListWebhooksOptions, ListWebhooksResponse, ListWebhooksResponseSuccess, MoveThreadFolder, OAuthGrant, RemoveInboxDraftOptions, RemoveInboxDraftResponse, RemoveInboxDraftResponseSuccess, RemoveInboxLabelOptions, RemoveInboxLabelResponse, RemoveInboxLabelResponseSuccess, RemoveInboxResponse, RemoveInboxResponseSuccess, RemoveInboxThreadOptions, RemoveInboxThreadResponse, RemoveInboxThreadResponseSuccess, RemoveWebhookResponse, RemoveWebhookResponseSuccess, ReplayWebhookEventOptions, ReplayWebhookEventResponse, ReplayWebhookEventResponseSuccess, ReplyInboxThreadEmailOptions, ReplyInboxThreadEmailRequestOptions, ReplyInboxThreadEmailResponse, ReplyInboxThreadEmailResponseSuccess, ResendOptions, Response, RevokeOAuthGrantResponse, RevokeOAuthGrantResponseSuccess, RotateWebhookSigningSecretResponse, RotateWebhookSigningSecretResponseSuccess, SendInboxDraftOptions, SendInboxDraftRequestOptions, SendInboxDraftResponse, SendInboxDraftResponseSuccess, SuppressionAddedEvent, SuppressionRemovedEvent, TopicCreatedEvent, TopicDeletedEvent, TopicUpdatedEvent, UpdateInboxAgentOptions, UpdateInboxAgentResponse, UpdateInboxAgentResponseSuccess, UpdateInboxDraftOptions, UpdateInboxDraftResponse, UpdateInboxDraftResponseSuccess, UpdateInboxLabelOptions, UpdateInboxLabelResponse, UpdateInboxLabelResponseSuccess, UpdateInboxOptions, UpdateInboxResponse, UpdateInboxResponseSuccess, UpdateInboxThreadOptions, UpdateInboxThreadResponse, UpdateInboxThreadResponseSuccess, UpdateWebhookOptions, UpdateWebhookResponse, UpdateWebhookResponseSuccess, Webhook, WebhookEvent, WebhookEventAttempt, WebhookEventLog, WebhookEventLogStatus, WebhookEventPayload };
3470
+ export type { ContactCreatedEvent, ContactDeletedEvent, ContactTopicsUpdatedEvent, ContactUpdatedEvent, CreateInboxDraftOptions, CreateInboxDraftRequestOptions, CreateInboxDraftResponse, CreateInboxDraftResponseSuccess, CreateInboxLabelOptions, CreateInboxLabelRequestOptions, CreateInboxLabelResponse, CreateInboxLabelResponseSuccess, CreateInboxOptions, CreateInboxRequestOptions, CreateInboxResponse, CreateInboxResponseSuccess, CreateWebhookOptions, CreateWebhookRequestOptions, CreateWebhookResponse, CreateWebhookResponseSuccess, DomainCreatedEvent, DomainDeletedEvent, DomainUpdatedEvent, EmailBouncedEvent, EmailClickedEvent, EmailComplainedEvent, EmailDeliveredEvent, EmailDeliveryDelayedEvent, EmailFailedEvent, EmailOpenedEvent, EmailReceivedEvent, EmailScheduledEvent, EmailSentEvent, EmailSuppressedEvent, ErrorResponse, ForwardInboxThreadEmailOptions, ForwardInboxThreadEmailRequestOptions, ForwardInboxThreadEmailResponse, ForwardInboxThreadEmailResponseSuccess, GetAttachmentOptions, GetAttachmentResponse, GetAttachmentResponseSuccess, GetInboxAgentOptions, GetInboxAgentResponse, GetInboxAgentResponseSuccess, GetInboxDraftOptions, GetInboxDraftResponse, GetInboxDraftResponseSuccess, GetInboxResponse, GetInboxResponseSuccess, GetInboxThreadEmailOptions, GetInboxThreadEmailResponse, GetInboxThreadEmailResponseSuccess, GetInboxThreadOptions, GetInboxThreadResponse, GetInboxThreadResponseSuccess, GetWebhookEventOptions, GetWebhookEventResponse, GetWebhookEventResponseSuccess, GetWebhookResponse, GetWebhookResponseSuccess, Inbox, InboxAgentAction, InboxAgentSettings, InboxCreatedEvent, InboxDeletedEvent, InboxDraft, InboxDraftCreatedEvent, InboxDraftDeletedEvent, InboxDraftListItem, InboxDraftSentEvent, InboxDraftType, InboxDraftUpdatedEvent, InboxEmailReceivedEvent, InboxEmailSentEvent, InboxLabel, InboxLabelColor, InboxMessage, InboxMessageAttachment, InboxMessageFolder, InboxThread, InboxThreadAssignedEvent, InboxThreadCreatedEvent, InboxThreadFolderUpdatedEvent, InboxThreadLabel, InboxThreadLabelsUpdatedEvent, InboxThreadSearchHighlightKey, InboxThreadSearchResult, InboxThreadSummary, InboxThreadUnassignedEvent, InboxUpdatedEvent, ListAttachmentsOptions, ListAttachmentsResponse, ListAttachmentsResponseSuccess, ListInboxDraftsOptions, ListInboxDraftsResponse, ListInboxDraftsResponseSuccess, ListInboxLabelsOptions, ListInboxLabelsResponse, ListInboxLabelsResponseSuccess, ListInboxThreadEmailsOptions, ListInboxThreadEmailsResponse, ListInboxThreadEmailsResponseSuccess, ListInboxThreadsOptions, ListInboxThreadsResponse, ListInboxThreadsResponseSuccess, ListInboxesOptions, ListInboxesResponse, ListInboxesResponseSuccess, ListOAuthGrantsOptions, ListOAuthGrantsResponse, ListOAuthGrantsResponseSuccess, ListWebhookEventAttemptsOptions, ListWebhookEventAttemptsResponse, ListWebhookEventAttemptsResponseSuccess, ListWebhookEventsOptions, ListWebhookEventsResponse, ListWebhookEventsResponseSuccess, ListWebhooksOptions, ListWebhooksResponse, ListWebhooksResponseSuccess, MoveThreadFolder, OAuthGrant, RemoveInboxDraftOptions, RemoveInboxDraftResponse, RemoveInboxDraftResponseSuccess, RemoveInboxLabelOptions, RemoveInboxLabelResponse, RemoveInboxLabelResponseSuccess, RemoveInboxResponse, RemoveInboxResponseSuccess, RemoveInboxThreadOptions, RemoveInboxThreadResponse, RemoveInboxThreadResponseSuccess, RemoveWebhookResponse, RemoveWebhookResponseSuccess, ReplayWebhookEventOptions, ReplayWebhookEventResponse, ReplayWebhookEventResponseSuccess, ReplyInboxThreadEmailOptions, ReplyInboxThreadEmailRequestOptions, ReplyInboxThreadEmailResponse, ReplyInboxThreadEmailResponseSuccess, ResendOptions, Response, RevokeOAuthGrantResponse, RevokeOAuthGrantResponseSuccess, RotateWebhookSigningSecretResponse, RotateWebhookSigningSecretResponseSuccess, SearchInboxThreadsOptions, SearchInboxThreadsResponse, SearchInboxThreadsResponseSuccess, SendInboxDraftOptions, SendInboxDraftRequestOptions, SendInboxDraftResponse, SendInboxDraftResponseSuccess, SuppressionAddedEvent, SuppressionRemovedEvent, TopicCreatedEvent, TopicDeletedEvent, TopicUpdatedEvent, UpdateInboxAgentOptions, UpdateInboxAgentResponse, UpdateInboxAgentResponseSuccess, UpdateInboxDraftOptions, UpdateInboxDraftResponse, UpdateInboxDraftResponseSuccess, UpdateInboxLabelOptions, UpdateInboxLabelResponse, UpdateInboxLabelResponseSuccess, UpdateInboxOptions, UpdateInboxResponse, UpdateInboxResponseSuccess, UpdateInboxThreadOptions, UpdateInboxThreadResponse, UpdateInboxThreadResponseSuccess, UpdateWebhookOptions, UpdateWebhookResponse, UpdateWebhookResponseSuccess, Webhook, WebhookEvent, WebhookEventAttempt, WebhookEventLog, WebhookEventLogStatus, WebhookEventPayload };
package/dist/index.d.mts CHANGED
@@ -1791,6 +1791,31 @@ interface UpdateInboxAgentResponseSuccess {
1791
1791
  }
1792
1792
  type UpdateInboxAgentResponse = Response<UpdateInboxAgentResponseSuccess>;
1793
1793
  //#endregion
1794
+ //#region src/inboxes/drafts/interfaces/create-inbox-draft.interface.d.ts
1795
+ type CreateInboxDraftContent = RequireAtLeastOne<{
1796
+ to?: string | string[];
1797
+ cc?: string | string[];
1798
+ bcc?: string | string[];
1799
+ subject?: string | null;
1800
+ text?: string | null;
1801
+ html?: string | null;
1802
+ }>;
1803
+ type CreateInboxDraftOptions = {
1804
+ inboxId: string;
1805
+ } & CreateInboxDraftContent & ({
1806
+ threadId: string;
1807
+ replyToEmailId: string;
1808
+ } | {
1809
+ threadId?: never;
1810
+ replyToEmailId?: never;
1811
+ });
1812
+ interface CreateInboxDraftRequestOptions extends PostOptions {}
1813
+ interface CreateInboxDraftResponseSuccess {
1814
+ object: 'inbox_draft';
1815
+ id: string;
1816
+ }
1817
+ type CreateInboxDraftResponse = Response<CreateInboxDraftResponseSuccess>;
1818
+ //#endregion
1794
1819
  //#region src/inboxes/drafts/interfaces/draft.d.ts
1795
1820
  type InboxDraftType = 'standalone' | 'reply';
1796
1821
  interface InboxDraft {
@@ -1822,28 +1847,6 @@ interface InboxDraftListItem {
1822
1847
  updated_at: string;
1823
1848
  }
1824
1849
  //#endregion
1825
- //#region src/inboxes/drafts/interfaces/create-inbox-draft.interface.d.ts
1826
- type CreateInboxDraftContent = RequireAtLeastOne<{
1827
- to?: string | string[];
1828
- cc?: string | string[];
1829
- bcc?: string | string[];
1830
- subject?: string | null;
1831
- text?: string | null;
1832
- html?: string | null;
1833
- }>;
1834
- type CreateInboxDraftOptions = {
1835
- inboxId: string;
1836
- } & CreateInboxDraftContent & ({
1837
- threadId: string;
1838
- replyToEmailId: string;
1839
- } | {
1840
- threadId?: never;
1841
- replyToEmailId?: never;
1842
- });
1843
- interface CreateInboxDraftRequestOptions extends PostOptions {}
1844
- type CreateInboxDraftResponseSuccess = InboxDraft;
1845
- type CreateInboxDraftResponse = Response<CreateInboxDraftResponseSuccess>;
1846
- //#endregion
1847
1850
  //#region src/inboxes/drafts/interfaces/get-inbox-draft.interface.d.ts
1848
1851
  interface GetInboxDraftOptions {
1849
1852
  inboxId: string;
@@ -1909,8 +1912,7 @@ export declare const INBOX_MESSAGE_FOLDERS: readonly ["inbox", "archive", "spam"
1909
1912
  type InboxMessageFolder = (typeof INBOX_MESSAGE_FOLDERS)[number];
1910
1913
  export declare const MOVE_THREAD_FOLDERS: readonly ["inbox", "archive", "spam", "trash"];
1911
1914
  type MoveThreadFolder = (typeof MOVE_THREAD_FOLDERS)[number];
1912
- export declare const INBOX_LABEL_COLORS: readonly ["cyan", "teal", "grass", "lime", "yellow", "orange", "iris", "plum", "crimson", "bronze", "mauve"];
1913
- type InboxLabelColor = (typeof INBOX_LABEL_COLORS)[number];
1915
+ type InboxLabelColor = `#${string}`;
1914
1916
  interface Inbox {
1915
1917
  id: string;
1916
1918
  name: string | null;
@@ -1930,9 +1932,6 @@ interface CreateInboxLabelRequestOptions extends PostOptions {}
1930
1932
  interface CreateInboxLabelResponseSuccess {
1931
1933
  object: 'inbox_label';
1932
1934
  id: string;
1933
- name: string;
1934
- color: InboxLabelColor;
1935
- created_at: string;
1936
1935
  }
1937
1936
  type CreateInboxLabelResponse = Response<CreateInboxLabelResponseSuccess>;
1938
1937
  //#endregion
@@ -1998,6 +1997,7 @@ interface InboxThread {
1998
1997
  has_draft: boolean;
1999
1998
  read: boolean;
2000
1999
  received_at: string;
2000
+ folder: InboxMessageFolder;
2001
2001
  }
2002
2002
  interface InboxThreadSummary {
2003
2003
  object: 'inbox_thread';
@@ -2098,9 +2098,9 @@ type ListInboxThreadEmailsResponse = Response<ListInboxThreadEmailsResponseSucce
2098
2098
  //#region src/inboxes/threads/interfaces/list-inbox-threads.interface.d.ts
2099
2099
  type ListInboxThreadsOptions = {
2100
2100
  inboxId: string;
2101
- folder?: InboxMessageFolder;
2102
- query?: string;
2103
- label?: string | string[];
2101
+ folders?: InboxMessageFolder[];
2102
+ labels?: string[];
2103
+ read?: boolean;
2104
2104
  } & PaginationOptions;
2105
2105
  interface ListInboxThreadsResponseSuccess {
2106
2106
  object: 'list';
@@ -2121,6 +2121,29 @@ interface RemoveInboxThreadResponseSuccess {
2121
2121
  }
2122
2122
  type RemoveInboxThreadResponse = Response<RemoveInboxThreadResponseSuccess>;
2123
2123
  //#endregion
2124
+ //#region src/inboxes/threads/interfaces/search-inbox-threads.interface.d.ts
2125
+ type SearchInboxThreadsOptions = ListInboxThreadsOptions & {
2126
+ query?: string;
2127
+ from?: string[];
2128
+ to?: string[];
2129
+ cc?: string[];
2130
+ bcc?: string[];
2131
+ hasAttachment?: boolean;
2132
+ startDate?: string;
2133
+ endDate?: string;
2134
+ };
2135
+ type InboxThreadSearchHighlightKey = 'subject' | 'body' | 'from' | 'to' | 'cc' | 'bcc' | 'attachments';
2136
+ interface InboxThreadSearchResult extends InboxThread {
2137
+ matched_email_id: string | null;
2138
+ highlights: Partial<Record<InboxThreadSearchHighlightKey, string[]>>;
2139
+ }
2140
+ interface SearchInboxThreadsResponseSuccess {
2141
+ object: 'list';
2142
+ has_more: boolean;
2143
+ data: InboxThreadSearchResult[];
2144
+ }
2145
+ type SearchInboxThreadsResponse = Response<SearchInboxThreadsResponseSuccess>;
2146
+ //#endregion
2124
2147
  //#region src/inboxes/threads/interfaces/update-inbox-thread.interface.d.ts
2125
2148
  type UpdateInboxThreadOptions = {
2126
2149
  inboxId: string;
@@ -2134,6 +2157,20 @@ type UpdateInboxThreadOptions = {
2134
2157
  type UpdateInboxThreadResponseSuccess = InboxThreadSummary;
2135
2158
  type UpdateInboxThreadResponse = Response<UpdateInboxThreadResponseSuccess>;
2136
2159
  //#endregion
2160
+ //#region src/inboxes/interfaces/create-inbox.interface.d.ts
2161
+ interface CreateInboxOptions {
2162
+ emailAddress: string;
2163
+ name?: string;
2164
+ forwarding?: boolean;
2165
+ fromName?: string;
2166
+ }
2167
+ interface CreateInboxRequestOptions extends PostOptions {}
2168
+ interface CreateInboxResponseSuccess {
2169
+ object: 'inbox';
2170
+ id: string;
2171
+ }
2172
+ type CreateInboxResponse = Response<CreateInboxResponseSuccess>;
2173
+ //#endregion
2137
2174
  //#region src/inboxes/interfaces/get-inbox.interface.d.ts
2138
2175
  interface GetInboxResponseSuccess {
2139
2176
  object: 'inbox';
@@ -2150,17 +2187,6 @@ interface GetInboxResponseSuccess {
2150
2187
  }
2151
2188
  type GetInboxResponse = Response<GetInboxResponseSuccess>;
2152
2189
  //#endregion
2153
- //#region src/inboxes/interfaces/create-inbox.interface.d.ts
2154
- interface CreateInboxOptions {
2155
- emailAddress: string;
2156
- name?: string;
2157
- forwarding?: boolean;
2158
- fromName?: string;
2159
- }
2160
- interface CreateInboxRequestOptions extends PostOptions {}
2161
- type CreateInboxResponseSuccess = GetInboxResponseSuccess;
2162
- type CreateInboxResponse = Response<CreateInboxResponseSuccess>;
2163
- //#endregion
2164
2190
  //#region src/inboxes/interfaces/list-inboxes.interface.d.ts
2165
2191
  type ListInboxesOptions = PaginationOptions;
2166
2192
  interface ListInboxesResponseSuccess {
@@ -2484,6 +2510,7 @@ declare class InboxThreads {
2484
2510
  readonly emails: InboxThreadEmails;
2485
2511
  constructor(resend: Resend);
2486
2512
  list(options: ListInboxThreadsOptions, requestOptions?: RequestOptions): Promise<ListInboxThreadsResponse>;
2513
+ search(options: SearchInboxThreadsOptions, requestOptions?: RequestOptions): Promise<SearchInboxThreadsResponse>;
2487
2514
  get(options: GetInboxThreadOptions, requestOptions?: RequestOptions): Promise<GetInboxThreadResponse>;
2488
2515
  update(options: UpdateInboxThreadOptions, requestOptions?: RequestOptions): Promise<UpdateInboxThreadResponse>;
2489
2516
  remove(options: RemoveInboxThreadOptions, requestOptions?: RequestOptions): Promise<RemoveInboxThreadResponse>;
@@ -3440,4 +3467,4 @@ export declare class Resend {
3440
3467
  delete<T>(path: string, query?: unknown, options?: DeleteOptions): Promise<Response<T>>;
3441
3468
  }
3442
3469
  //#endregion
3443
- export type { ContactCreatedEvent, ContactDeletedEvent, ContactTopicsUpdatedEvent, ContactUpdatedEvent, CreateInboxDraftOptions, CreateInboxDraftRequestOptions, CreateInboxDraftResponse, CreateInboxDraftResponseSuccess, CreateInboxLabelOptions, CreateInboxLabelRequestOptions, CreateInboxLabelResponse, CreateInboxLabelResponseSuccess, CreateInboxOptions, CreateInboxRequestOptions, CreateInboxResponse, CreateInboxResponseSuccess, CreateWebhookOptions, CreateWebhookRequestOptions, CreateWebhookResponse, CreateWebhookResponseSuccess, DomainCreatedEvent, DomainDeletedEvent, DomainUpdatedEvent, EmailBouncedEvent, EmailClickedEvent, EmailComplainedEvent, EmailDeliveredEvent, EmailDeliveryDelayedEvent, EmailFailedEvent, EmailOpenedEvent, EmailReceivedEvent, EmailScheduledEvent, EmailSentEvent, EmailSuppressedEvent, ErrorResponse, ForwardInboxThreadEmailOptions, ForwardInboxThreadEmailRequestOptions, ForwardInboxThreadEmailResponse, ForwardInboxThreadEmailResponseSuccess, GetAttachmentOptions, GetAttachmentResponse, GetAttachmentResponseSuccess, GetInboxAgentOptions, GetInboxAgentResponse, GetInboxAgentResponseSuccess, GetInboxDraftOptions, GetInboxDraftResponse, GetInboxDraftResponseSuccess, GetInboxResponse, GetInboxResponseSuccess, GetInboxThreadEmailOptions, GetInboxThreadEmailResponse, GetInboxThreadEmailResponseSuccess, GetInboxThreadOptions, GetInboxThreadResponse, GetInboxThreadResponseSuccess, GetWebhookEventOptions, GetWebhookEventResponse, GetWebhookEventResponseSuccess, GetWebhookResponse, GetWebhookResponseSuccess, Inbox, InboxAgentAction, InboxAgentSettings, InboxCreatedEvent, InboxDeletedEvent, InboxDraft, InboxDraftCreatedEvent, InboxDraftDeletedEvent, InboxDraftListItem, InboxDraftSentEvent, InboxDraftType, InboxDraftUpdatedEvent, InboxEmailReceivedEvent, InboxEmailSentEvent, InboxLabel, InboxLabelColor, InboxMessage, InboxMessageAttachment, InboxMessageFolder, InboxThread, InboxThreadAssignedEvent, InboxThreadCreatedEvent, InboxThreadFolderUpdatedEvent, InboxThreadLabel, InboxThreadLabelsUpdatedEvent, InboxThreadSummary, InboxThreadUnassignedEvent, InboxUpdatedEvent, ListAttachmentsOptions, ListAttachmentsResponse, ListAttachmentsResponseSuccess, ListInboxDraftsOptions, ListInboxDraftsResponse, ListInboxDraftsResponseSuccess, ListInboxLabelsOptions, ListInboxLabelsResponse, ListInboxLabelsResponseSuccess, ListInboxThreadEmailsOptions, ListInboxThreadEmailsResponse, ListInboxThreadEmailsResponseSuccess, ListInboxThreadsOptions, ListInboxThreadsResponse, ListInboxThreadsResponseSuccess, ListInboxesOptions, ListInboxesResponse, ListInboxesResponseSuccess, ListOAuthGrantsOptions, ListOAuthGrantsResponse, ListOAuthGrantsResponseSuccess, ListWebhookEventAttemptsOptions, ListWebhookEventAttemptsResponse, ListWebhookEventAttemptsResponseSuccess, ListWebhookEventsOptions, ListWebhookEventsResponse, ListWebhookEventsResponseSuccess, ListWebhooksOptions, ListWebhooksResponse, ListWebhooksResponseSuccess, MoveThreadFolder, OAuthGrant, RemoveInboxDraftOptions, RemoveInboxDraftResponse, RemoveInboxDraftResponseSuccess, RemoveInboxLabelOptions, RemoveInboxLabelResponse, RemoveInboxLabelResponseSuccess, RemoveInboxResponse, RemoveInboxResponseSuccess, RemoveInboxThreadOptions, RemoveInboxThreadResponse, RemoveInboxThreadResponseSuccess, RemoveWebhookResponse, RemoveWebhookResponseSuccess, ReplayWebhookEventOptions, ReplayWebhookEventResponse, ReplayWebhookEventResponseSuccess, ReplyInboxThreadEmailOptions, ReplyInboxThreadEmailRequestOptions, ReplyInboxThreadEmailResponse, ReplyInboxThreadEmailResponseSuccess, ResendOptions, Response, RevokeOAuthGrantResponse, RevokeOAuthGrantResponseSuccess, RotateWebhookSigningSecretResponse, RotateWebhookSigningSecretResponseSuccess, SendInboxDraftOptions, SendInboxDraftRequestOptions, SendInboxDraftResponse, SendInboxDraftResponseSuccess, SuppressionAddedEvent, SuppressionRemovedEvent, TopicCreatedEvent, TopicDeletedEvent, TopicUpdatedEvent, UpdateInboxAgentOptions, UpdateInboxAgentResponse, UpdateInboxAgentResponseSuccess, UpdateInboxDraftOptions, UpdateInboxDraftResponse, UpdateInboxDraftResponseSuccess, UpdateInboxLabelOptions, UpdateInboxLabelResponse, UpdateInboxLabelResponseSuccess, UpdateInboxOptions, UpdateInboxResponse, UpdateInboxResponseSuccess, UpdateInboxThreadOptions, UpdateInboxThreadResponse, UpdateInboxThreadResponseSuccess, UpdateWebhookOptions, UpdateWebhookResponse, UpdateWebhookResponseSuccess, Webhook, WebhookEvent, WebhookEventAttempt, WebhookEventLog, WebhookEventLogStatus, WebhookEventPayload };
3470
+ export type { ContactCreatedEvent, ContactDeletedEvent, ContactTopicsUpdatedEvent, ContactUpdatedEvent, CreateInboxDraftOptions, CreateInboxDraftRequestOptions, CreateInboxDraftResponse, CreateInboxDraftResponseSuccess, CreateInboxLabelOptions, CreateInboxLabelRequestOptions, CreateInboxLabelResponse, CreateInboxLabelResponseSuccess, CreateInboxOptions, CreateInboxRequestOptions, CreateInboxResponse, CreateInboxResponseSuccess, CreateWebhookOptions, CreateWebhookRequestOptions, CreateWebhookResponse, CreateWebhookResponseSuccess, DomainCreatedEvent, DomainDeletedEvent, DomainUpdatedEvent, EmailBouncedEvent, EmailClickedEvent, EmailComplainedEvent, EmailDeliveredEvent, EmailDeliveryDelayedEvent, EmailFailedEvent, EmailOpenedEvent, EmailReceivedEvent, EmailScheduledEvent, EmailSentEvent, EmailSuppressedEvent, ErrorResponse, ForwardInboxThreadEmailOptions, ForwardInboxThreadEmailRequestOptions, ForwardInboxThreadEmailResponse, ForwardInboxThreadEmailResponseSuccess, GetAttachmentOptions, GetAttachmentResponse, GetAttachmentResponseSuccess, GetInboxAgentOptions, GetInboxAgentResponse, GetInboxAgentResponseSuccess, GetInboxDraftOptions, GetInboxDraftResponse, GetInboxDraftResponseSuccess, GetInboxResponse, GetInboxResponseSuccess, GetInboxThreadEmailOptions, GetInboxThreadEmailResponse, GetInboxThreadEmailResponseSuccess, GetInboxThreadOptions, GetInboxThreadResponse, GetInboxThreadResponseSuccess, GetWebhookEventOptions, GetWebhookEventResponse, GetWebhookEventResponseSuccess, GetWebhookResponse, GetWebhookResponseSuccess, Inbox, InboxAgentAction, InboxAgentSettings, InboxCreatedEvent, InboxDeletedEvent, InboxDraft, InboxDraftCreatedEvent, InboxDraftDeletedEvent, InboxDraftListItem, InboxDraftSentEvent, InboxDraftType, InboxDraftUpdatedEvent, InboxEmailReceivedEvent, InboxEmailSentEvent, InboxLabel, InboxLabelColor, InboxMessage, InboxMessageAttachment, InboxMessageFolder, InboxThread, InboxThreadAssignedEvent, InboxThreadCreatedEvent, InboxThreadFolderUpdatedEvent, InboxThreadLabel, InboxThreadLabelsUpdatedEvent, InboxThreadSearchHighlightKey, InboxThreadSearchResult, InboxThreadSummary, InboxThreadUnassignedEvent, InboxUpdatedEvent, ListAttachmentsOptions, ListAttachmentsResponse, ListAttachmentsResponseSuccess, ListInboxDraftsOptions, ListInboxDraftsResponse, ListInboxDraftsResponseSuccess, ListInboxLabelsOptions, ListInboxLabelsResponse, ListInboxLabelsResponseSuccess, ListInboxThreadEmailsOptions, ListInboxThreadEmailsResponse, ListInboxThreadEmailsResponseSuccess, ListInboxThreadsOptions, ListInboxThreadsResponse, ListInboxThreadsResponseSuccess, ListInboxesOptions, ListInboxesResponse, ListInboxesResponseSuccess, ListOAuthGrantsOptions, ListOAuthGrantsResponse, ListOAuthGrantsResponseSuccess, ListWebhookEventAttemptsOptions, ListWebhookEventAttemptsResponse, ListWebhookEventAttemptsResponseSuccess, ListWebhookEventsOptions, ListWebhookEventsResponse, ListWebhookEventsResponseSuccess, ListWebhooksOptions, ListWebhooksResponse, ListWebhooksResponseSuccess, MoveThreadFolder, OAuthGrant, RemoveInboxDraftOptions, RemoveInboxDraftResponse, RemoveInboxDraftResponseSuccess, RemoveInboxLabelOptions, RemoveInboxLabelResponse, RemoveInboxLabelResponseSuccess, RemoveInboxResponse, RemoveInboxResponseSuccess, RemoveInboxThreadOptions, RemoveInboxThreadResponse, RemoveInboxThreadResponseSuccess, RemoveWebhookResponse, RemoveWebhookResponseSuccess, ReplayWebhookEventOptions, ReplayWebhookEventResponse, ReplayWebhookEventResponseSuccess, ReplyInboxThreadEmailOptions, ReplyInboxThreadEmailRequestOptions, ReplyInboxThreadEmailResponse, ReplyInboxThreadEmailResponseSuccess, ResendOptions, Response, RevokeOAuthGrantResponse, RevokeOAuthGrantResponseSuccess, RotateWebhookSigningSecretResponse, RotateWebhookSigningSecretResponseSuccess, SearchInboxThreadsOptions, SearchInboxThreadsResponse, SearchInboxThreadsResponseSuccess, SendInboxDraftOptions, SendInboxDraftRequestOptions, SendInboxDraftResponse, SendInboxDraftResponseSuccess, SuppressionAddedEvent, SuppressionRemovedEvent, TopicCreatedEvent, TopicDeletedEvent, TopicUpdatedEvent, UpdateInboxAgentOptions, UpdateInboxAgentResponse, UpdateInboxAgentResponseSuccess, UpdateInboxDraftOptions, UpdateInboxDraftResponse, UpdateInboxDraftResponseSuccess, UpdateInboxLabelOptions, UpdateInboxLabelResponse, UpdateInboxLabelResponseSuccess, UpdateInboxOptions, UpdateInboxResponse, UpdateInboxResponseSuccess, UpdateInboxThreadOptions, UpdateInboxThreadResponse, UpdateInboxThreadResponseSuccess, UpdateWebhookOptions, UpdateWebhookResponse, UpdateWebhookResponseSuccess, Webhook, WebhookEvent, WebhookEventAttempt, WebhookEventLog, WebhookEventLogStatus, WebhookEventPayload };
package/dist/index.mjs CHANGED
@@ -25,22 +25,9 @@ const MOVE_THREAD_FOLDERS = [
25
25
  "spam",
26
26
  "trash"
27
27
  ];
28
- const INBOX_LABEL_COLORS = [
29
- "cyan",
30
- "teal",
31
- "grass",
32
- "lime",
33
- "yellow",
34
- "orange",
35
- "iris",
36
- "plum",
37
- "crimson",
38
- "bronze",
39
- "mauve"
40
- ];
41
28
  //#endregion
42
29
  //#region package.json
43
- var version = "6.32.1-preview-inboxes.4";
30
+ var version = "6.32.1-preview-inboxes.6";
44
31
  //#endregion
45
32
  //#region src/common/utils/build-pagination-query.ts
46
33
  function buildPaginationUrl(base, options) {
@@ -1015,14 +1002,10 @@ var InboxAgent = class {
1015
1002
  //#region src/inboxes/build-inbox-cursor-query.ts
1016
1003
  function buildInboxCursorUrl(base, options = {}) {
1017
1004
  const searchParams = new URLSearchParams();
1018
- if (options.folder !== void 0) searchParams.set("folder", options.folder);
1019
- if (options.query !== void 0) searchParams.set("query", options.query);
1020
- if (options.from !== void 0) searchParams.set("from", options.from);
1021
- if (options.limit !== void 0) searchParams.set("limit", String(options.limit));
1022
- if (options.after !== void 0) searchParams.set("after", options.after);
1023
- if (options.before !== void 0) searchParams.set("before", options.before);
1024
- const labels = options.label === void 0 ? [] : Array.isArray(options.label) ? options.label : [options.label];
1025
- for (const label of labels) searchParams.append("label", label);
1005
+ for (const [key, value] of Object.entries(options)) {
1006
+ if (value === void 0) continue;
1007
+ searchParams.set(key, Array.isArray(value) ? value.join(",") : String(value));
1008
+ }
1026
1009
  const queryString = searchParams.toString();
1027
1010
  return queryString ? `${base}?${queryString}` : base;
1028
1011
  }
@@ -1140,8 +1123,35 @@ var InboxThreads = class {
1140
1123
  this.emails = new InboxThreadEmails(resend);
1141
1124
  }
1142
1125
  async list(options, requestOptions = {}) {
1143
- const { inboxId, ...query } = options;
1144
- const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads`, query);
1126
+ const { inboxId, folders, labels, read, limit, after, before } = options;
1127
+ const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads`, {
1128
+ folders,
1129
+ labels,
1130
+ read,
1131
+ limit,
1132
+ after,
1133
+ before
1134
+ });
1135
+ return this.resend.get(url, requestOptions);
1136
+ }
1137
+ async search(options, requestOptions = {}) {
1138
+ const { inboxId, folders, labels, read, query, from, to, cc, bcc, hasAttachment, startDate, endDate, limit, after, before } = options;
1139
+ const url = buildInboxCursorUrl(`/inboxes/${inboxId}/threads/search`, {
1140
+ folders,
1141
+ labels,
1142
+ read,
1143
+ query,
1144
+ from,
1145
+ to,
1146
+ cc,
1147
+ bcc,
1148
+ has_attachment: hasAttachment,
1149
+ start_date: startDate,
1150
+ end_date: endDate,
1151
+ limit,
1152
+ after,
1153
+ before
1154
+ });
1145
1155
  return this.resend.get(url, requestOptions);
1146
1156
  }
1147
1157
  async get(options, requestOptions = {}) {
@@ -1693,4 +1703,4 @@ var Resend = class {
1693
1703
  }
1694
1704
  };
1695
1705
  //#endregion
1696
- export { INBOX_AGENT_ACTIONS, INBOX_LABEL_COLORS, INBOX_MESSAGE_FOLDERS, MOVE_THREAD_FOLDERS, Resend };
1706
+ export { INBOX_AGENT_ACTIONS, INBOX_MESSAGE_FOLDERS, MOVE_THREAD_FOLDERS, Resend };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "resend",
3
- "version": "6.32.1-preview-inboxes.4",
3
+ "version": "6.32.1-preview-inboxes.6",
4
4
  "description": "Node.js library for the Resend API",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
package/readme.md CHANGED
@@ -186,7 +186,7 @@ const { data: inbox } = await resend.inboxes.create({
186
186
 
187
187
  const { data: threads } = await resend.inboxes.threads.list({
188
188
  inboxId: inbox.id,
189
- folder: 'inbox',
189
+ folders: ['inbox'],
190
190
  });
191
191
  ```
192
192