agentmail 0.0.64 → 0.0.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/README.md +20 -0
  2. package/dist/cjs/Client.js +2 -2
  3. package/dist/cjs/api/resources/domains/client/Client.d.ts +5 -5
  4. package/dist/cjs/api/resources/domains/client/Client.js +66 -55
  5. package/dist/cjs/api/resources/drafts/client/Client.d.ts +1 -2
  6. package/dist/cjs/api/resources/drafts/client/Client.js +83 -70
  7. package/dist/cjs/api/resources/inboxes/client/Client.d.ts +1 -2
  8. package/dist/cjs/api/resources/inboxes/client/Client.js +62 -52
  9. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.d.ts +1 -2
  10. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.js +83 -70
  11. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.d.ts +1 -2
  12. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.js +83 -70
  13. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.d.ts +1 -2
  14. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.js +83 -70
  15. package/dist/cjs/api/resources/threads/client/Client.d.ts +1 -2
  16. package/dist/cjs/api/resources/threads/client/Client.js +83 -70
  17. package/dist/cjs/api/resources/webhooks/client/Client.d.ts +1 -2
  18. package/dist/cjs/api/resources/webhooks/client/Client.js +62 -52
  19. package/dist/cjs/core/index.d.ts +2 -0
  20. package/dist/cjs/core/index.js +2 -0
  21. package/dist/cjs/core/pagination/Page.d.ts +32 -0
  22. package/dist/cjs/core/pagination/Page.js +100 -0
  23. package/dist/cjs/core/pagination/Pageable.d.ts +14 -0
  24. package/dist/cjs/core/pagination/Pageable.js +10 -0
  25. package/dist/cjs/core/pagination/index.d.ts +2 -0
  26. package/dist/cjs/core/pagination/index.js +7 -0
  27. package/dist/cjs/core/utils/index.d.ts +1 -0
  28. package/dist/cjs/core/utils/index.js +5 -0
  29. package/dist/cjs/core/utils/setObjectProperty.d.ts +11 -0
  30. package/dist/cjs/core/utils/setObjectProperty.js +42 -0
  31. package/dist/cjs/version.d.ts +1 -1
  32. package/dist/cjs/version.js +1 -1
  33. package/dist/esm/Client.mjs +2 -2
  34. package/dist/esm/api/resources/domains/client/Client.d.mts +5 -5
  35. package/dist/esm/api/resources/domains/client/Client.mjs +66 -55
  36. package/dist/esm/api/resources/drafts/client/Client.d.mts +1 -2
  37. package/dist/esm/api/resources/drafts/client/Client.mjs +83 -70
  38. package/dist/esm/api/resources/inboxes/client/Client.d.mts +1 -2
  39. package/dist/esm/api/resources/inboxes/client/Client.mjs +62 -52
  40. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.d.mts +1 -2
  41. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.mjs +83 -70
  42. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.d.mts +1 -2
  43. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.mjs +83 -70
  44. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.d.mts +1 -2
  45. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.mjs +83 -70
  46. package/dist/esm/api/resources/threads/client/Client.d.mts +1 -2
  47. package/dist/esm/api/resources/threads/client/Client.mjs +83 -70
  48. package/dist/esm/api/resources/webhooks/client/Client.d.mts +1 -2
  49. package/dist/esm/api/resources/webhooks/client/Client.mjs +62 -52
  50. package/dist/esm/core/index.d.mts +2 -0
  51. package/dist/esm/core/index.mjs +2 -0
  52. package/dist/esm/core/pagination/Page.d.mts +32 -0
  53. package/dist/esm/core/pagination/Page.mjs +96 -0
  54. package/dist/esm/core/pagination/Pageable.d.mts +14 -0
  55. package/dist/esm/core/pagination/Pageable.mjs +6 -0
  56. package/dist/esm/core/pagination/index.d.mts +2 -0
  57. package/dist/esm/core/pagination/index.mjs +2 -0
  58. package/dist/esm/core/utils/index.d.mts +1 -0
  59. package/dist/esm/core/utils/index.mjs +1 -0
  60. package/dist/esm/core/utils/setObjectProperty.d.mts +11 -0
  61. package/dist/esm/core/utils/setObjectProperty.mjs +39 -0
  62. package/dist/esm/version.d.mts +1 -1
  63. package/dist/esm/version.mjs +1 -1
  64. package/package.json +1 -1
  65. package/reference.md +92 -19
@@ -31,87 +31,100 @@ export class Drafts {
31
31
  * @example
32
32
  * await client.inboxes.drafts.list("inbox_id")
33
33
  */
34
- list(inboxId, request = {}, requestOptions) {
35
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
36
- }
37
- __list(inboxId_1) {
34
+ list(inboxId_1) {
38
35
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
39
- var _a, _b, _c;
40
- const { limit, pageToken, labels, before, after, ascending } = request;
41
- const _queryParams = {};
42
- if (limit != null) {
43
- _queryParams["limit"] = limit.toString();
44
- }
45
- if (pageToken != null) {
46
- _queryParams["page_token"] = pageToken;
47
- }
48
- if (labels != null) {
49
- _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
50
- }
51
- if (before != null) {
52
- _queryParams["before"] = before.toISOString();
53
- }
54
- if (after != null) {
55
- _queryParams["after"] = after.toISOString();
56
- }
57
- if (ascending != null) {
58
- _queryParams["ascending"] = ascending.toString();
59
- }
60
- let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
61
- const _response = yield core.fetcher({
62
- url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/drafts`),
63
- method: "GET",
64
- headers: _headers,
65
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
66
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
67
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
68
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
69
- });
70
- if (_response.ok) {
71
- return {
72
- data: serializers.ListDraftsResponse.parseOrThrow(_response.body, {
73
- unrecognizedObjectKeys: "passthrough",
74
- allowUnrecognizedUnionMembers: true,
75
- allowUnrecognizedEnumValues: true,
76
- skipValidation: true,
77
- breadcrumbsPrefix: ["response"],
78
- }),
79
- rawResponse: _response.rawResponse,
80
- };
81
- }
82
- if (_response.error.reason === "status-code") {
83
- switch (_response.error.statusCode) {
84
- case 404:
85
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
36
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
37
+ var _a, _b, _c;
38
+ const { limit, pageToken, labels, before, after, ascending } = request;
39
+ const _queryParams = {};
40
+ if (limit != null) {
41
+ _queryParams["limit"] = limit.toString();
42
+ }
43
+ if (pageToken != null) {
44
+ _queryParams["page_token"] = pageToken;
45
+ }
46
+ if (labels != null) {
47
+ _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, {
48
+ unrecognizedObjectKeys: "strip",
49
+ omitUndefined: true,
50
+ }));
51
+ }
52
+ if (before != null) {
53
+ _queryParams["before"] = before.toISOString();
54
+ }
55
+ if (after != null) {
56
+ _queryParams["after"] = after.toISOString();
57
+ }
58
+ if (ascending != null) {
59
+ _queryParams["ascending"] = ascending.toString();
60
+ }
61
+ let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
62
+ const _response = yield core.fetcher({
63
+ url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/drafts`),
64
+ method: "GET",
65
+ headers: _headers,
66
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
67
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
68
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
69
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
70
+ });
71
+ if (_response.ok) {
72
+ return {
73
+ data: serializers.ListDraftsResponse.parseOrThrow(_response.body, {
86
74
  unrecognizedObjectKeys: "passthrough",
87
75
  allowUnrecognizedUnionMembers: true,
88
76
  allowUnrecognizedEnumValues: true,
89
77
  skipValidation: true,
90
78
  breadcrumbsPrefix: ["response"],
91
- }), _response.rawResponse);
92
- default:
79
+ }),
80
+ rawResponse: _response.rawResponse,
81
+ };
82
+ }
83
+ if (_response.error.reason === "status-code") {
84
+ switch (_response.error.statusCode) {
85
+ case 404:
86
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
87
+ unrecognizedObjectKeys: "passthrough",
88
+ allowUnrecognizedUnionMembers: true,
89
+ allowUnrecognizedEnumValues: true,
90
+ skipValidation: true,
91
+ breadcrumbsPrefix: ["response"],
92
+ }), _response.rawResponse);
93
+ default:
94
+ throw new errors.AgentMailError({
95
+ statusCode: _response.error.statusCode,
96
+ body: _response.error.body,
97
+ rawResponse: _response.rawResponse,
98
+ });
99
+ }
100
+ }
101
+ switch (_response.error.reason) {
102
+ case "non-json":
93
103
  throw new errors.AgentMailError({
94
104
  statusCode: _response.error.statusCode,
95
- body: _response.error.body,
105
+ body: _response.error.rawBody,
106
+ rawResponse: _response.rawResponse,
107
+ });
108
+ case "timeout":
109
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/drafts.");
110
+ case "unknown":
111
+ throw new errors.AgentMailError({
112
+ message: _response.error.errorMessage,
96
113
  rawResponse: _response.rawResponse,
97
114
  });
98
115
  }
99
- }
100
- switch (_response.error.reason) {
101
- case "non-json":
102
- throw new errors.AgentMailError({
103
- statusCode: _response.error.statusCode,
104
- body: _response.error.rawBody,
105
- rawResponse: _response.rawResponse,
106
- });
107
- case "timeout":
108
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/drafts.");
109
- case "unknown":
110
- throw new errors.AgentMailError({
111
- message: _response.error.errorMessage,
112
- rawResponse: _response.rawResponse,
113
- });
114
- }
116
+ }));
117
+ const dataWithRawResponse = yield list(request).withRawResponse();
118
+ return new core.Pageable({
119
+ response: dataWithRawResponse.data,
120
+ rawResponse: dataWithRawResponse.rawResponse,
121
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
122
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
123
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.drafts) !== null && _a !== void 0 ? _a : []; },
124
+ loadPage: (response) => {
125
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
126
+ },
127
+ });
115
128
  });
116
129
  }
117
130
  /**
@@ -39,8 +39,7 @@ export declare class Messages {
39
39
  * @example
40
40
  * await client.inboxes.messages.list("inbox_id")
41
41
  */
42
- list(inboxId: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.ListMessagesRequest, requestOptions?: Messages.RequestOptions): core.HttpResponsePromise<AgentMail.ListMessagesResponse>;
43
- private __list;
42
+ list(inboxId: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.ListMessagesRequest, requestOptions?: Messages.RequestOptions): Promise<core.Page<AgentMail.MessageItem>>;
44
43
  /**
45
44
  * @param {AgentMail.inboxes.InboxId} inboxId
46
45
  * @param {AgentMail.MessageId} messageId
@@ -31,87 +31,100 @@ export class Messages {
31
31
  * @example
32
32
  * await client.inboxes.messages.list("inbox_id")
33
33
  */
34
- list(inboxId, request = {}, requestOptions) {
35
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
36
- }
37
- __list(inboxId_1) {
34
+ list(inboxId_1) {
38
35
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
39
- var _a, _b, _c;
40
- const { limit, pageToken, labels, before, after, ascending } = request;
41
- const _queryParams = {};
42
- if (limit != null) {
43
- _queryParams["limit"] = limit.toString();
44
- }
45
- if (pageToken != null) {
46
- _queryParams["page_token"] = pageToken;
47
- }
48
- if (labels != null) {
49
- _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
50
- }
51
- if (before != null) {
52
- _queryParams["before"] = before.toISOString();
53
- }
54
- if (after != null) {
55
- _queryParams["after"] = after.toISOString();
56
- }
57
- if (ascending != null) {
58
- _queryParams["ascending"] = ascending.toString();
59
- }
60
- let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
61
- const _response = yield core.fetcher({
62
- url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/messages`),
63
- method: "GET",
64
- headers: _headers,
65
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
66
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
67
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
68
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
69
- });
70
- if (_response.ok) {
71
- return {
72
- data: serializers.ListMessagesResponse.parseOrThrow(_response.body, {
73
- unrecognizedObjectKeys: "passthrough",
74
- allowUnrecognizedUnionMembers: true,
75
- allowUnrecognizedEnumValues: true,
76
- skipValidation: true,
77
- breadcrumbsPrefix: ["response"],
78
- }),
79
- rawResponse: _response.rawResponse,
80
- };
81
- }
82
- if (_response.error.reason === "status-code") {
83
- switch (_response.error.statusCode) {
84
- case 404:
85
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
36
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
37
+ var _a, _b, _c;
38
+ const { limit, pageToken, labels, before, after, ascending } = request;
39
+ const _queryParams = {};
40
+ if (limit != null) {
41
+ _queryParams["limit"] = limit.toString();
42
+ }
43
+ if (pageToken != null) {
44
+ _queryParams["page_token"] = pageToken;
45
+ }
46
+ if (labels != null) {
47
+ _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, {
48
+ unrecognizedObjectKeys: "strip",
49
+ omitUndefined: true,
50
+ }));
51
+ }
52
+ if (before != null) {
53
+ _queryParams["before"] = before.toISOString();
54
+ }
55
+ if (after != null) {
56
+ _queryParams["after"] = after.toISOString();
57
+ }
58
+ if (ascending != null) {
59
+ _queryParams["ascending"] = ascending.toString();
60
+ }
61
+ let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
62
+ const _response = yield core.fetcher({
63
+ url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/messages`),
64
+ method: "GET",
65
+ headers: _headers,
66
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
67
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
68
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
69
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
70
+ });
71
+ if (_response.ok) {
72
+ return {
73
+ data: serializers.ListMessagesResponse.parseOrThrow(_response.body, {
86
74
  unrecognizedObjectKeys: "passthrough",
87
75
  allowUnrecognizedUnionMembers: true,
88
76
  allowUnrecognizedEnumValues: true,
89
77
  skipValidation: true,
90
78
  breadcrumbsPrefix: ["response"],
91
- }), _response.rawResponse);
92
- default:
79
+ }),
80
+ rawResponse: _response.rawResponse,
81
+ };
82
+ }
83
+ if (_response.error.reason === "status-code") {
84
+ switch (_response.error.statusCode) {
85
+ case 404:
86
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
87
+ unrecognizedObjectKeys: "passthrough",
88
+ allowUnrecognizedUnionMembers: true,
89
+ allowUnrecognizedEnumValues: true,
90
+ skipValidation: true,
91
+ breadcrumbsPrefix: ["response"],
92
+ }), _response.rawResponse);
93
+ default:
94
+ throw new errors.AgentMailError({
95
+ statusCode: _response.error.statusCode,
96
+ body: _response.error.body,
97
+ rawResponse: _response.rawResponse,
98
+ });
99
+ }
100
+ }
101
+ switch (_response.error.reason) {
102
+ case "non-json":
93
103
  throw new errors.AgentMailError({
94
104
  statusCode: _response.error.statusCode,
95
- body: _response.error.body,
105
+ body: _response.error.rawBody,
106
+ rawResponse: _response.rawResponse,
107
+ });
108
+ case "timeout":
109
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/messages.");
110
+ case "unknown":
111
+ throw new errors.AgentMailError({
112
+ message: _response.error.errorMessage,
96
113
  rawResponse: _response.rawResponse,
97
114
  });
98
115
  }
99
- }
100
- switch (_response.error.reason) {
101
- case "non-json":
102
- throw new errors.AgentMailError({
103
- statusCode: _response.error.statusCode,
104
- body: _response.error.rawBody,
105
- rawResponse: _response.rawResponse,
106
- });
107
- case "timeout":
108
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/messages.");
109
- case "unknown":
110
- throw new errors.AgentMailError({
111
- message: _response.error.errorMessage,
112
- rawResponse: _response.rawResponse,
113
- });
114
- }
116
+ }));
117
+ const dataWithRawResponse = yield list(request).withRawResponse();
118
+ return new core.Pageable({
119
+ response: dataWithRawResponse.data,
120
+ rawResponse: dataWithRawResponse.rawResponse,
121
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
122
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
123
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.messages) !== null && _a !== void 0 ? _a : []; },
124
+ loadPage: (response) => {
125
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
126
+ },
127
+ });
115
128
  });
116
129
  }
117
130
  /**
@@ -39,8 +39,7 @@ export declare class Threads {
39
39
  * @example
40
40
  * await client.inboxes.threads.list("inbox_id")
41
41
  */
42
- list(inboxId: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.ListThreadsRequest, requestOptions?: Threads.RequestOptions): core.HttpResponsePromise<AgentMail.ListThreadsResponse>;
43
- private __list;
42
+ list(inboxId: AgentMail.inboxes.InboxId, request?: AgentMail.inboxes.ListThreadsRequest, requestOptions?: Threads.RequestOptions): Promise<core.Page<AgentMail.ThreadItem>>;
44
43
  /**
45
44
  * @param {AgentMail.inboxes.InboxId} inboxId
46
45
  * @param {AgentMail.ThreadId} threadId
@@ -31,87 +31,100 @@ export class Threads {
31
31
  * @example
32
32
  * await client.inboxes.threads.list("inbox_id")
33
33
  */
34
- list(inboxId, request = {}, requestOptions) {
35
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
36
- }
37
- __list(inboxId_1) {
34
+ list(inboxId_1) {
38
35
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
39
- var _a, _b, _c;
40
- const { limit, pageToken, labels, before, after, ascending } = request;
41
- const _queryParams = {};
42
- if (limit != null) {
43
- _queryParams["limit"] = limit.toString();
44
- }
45
- if (pageToken != null) {
46
- _queryParams["page_token"] = pageToken;
47
- }
48
- if (labels != null) {
49
- _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
50
- }
51
- if (before != null) {
52
- _queryParams["before"] = before.toISOString();
53
- }
54
- if (after != null) {
55
- _queryParams["after"] = after.toISOString();
56
- }
57
- if (ascending != null) {
58
- _queryParams["ascending"] = ascending.toString();
59
- }
60
- let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
61
- const _response = yield core.fetcher({
62
- url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/threads`),
63
- method: "GET",
64
- headers: _headers,
65
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
66
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
67
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
68
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
69
- });
70
- if (_response.ok) {
71
- return {
72
- data: serializers.ListThreadsResponse.parseOrThrow(_response.body, {
73
- unrecognizedObjectKeys: "passthrough",
74
- allowUnrecognizedUnionMembers: true,
75
- allowUnrecognizedEnumValues: true,
76
- skipValidation: true,
77
- breadcrumbsPrefix: ["response"],
78
- }),
79
- rawResponse: _response.rawResponse,
80
- };
81
- }
82
- if (_response.error.reason === "status-code") {
83
- switch (_response.error.statusCode) {
84
- case 404:
85
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
36
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
37
+ var _a, _b, _c;
38
+ const { limit, pageToken, labels, before, after, ascending } = request;
39
+ const _queryParams = {};
40
+ if (limit != null) {
41
+ _queryParams["limit"] = limit.toString();
42
+ }
43
+ if (pageToken != null) {
44
+ _queryParams["page_token"] = pageToken;
45
+ }
46
+ if (labels != null) {
47
+ _queryParams["labels"] = toJson(serializers.Labels.jsonOrThrow(labels, {
48
+ unrecognizedObjectKeys: "strip",
49
+ omitUndefined: true,
50
+ }));
51
+ }
52
+ if (before != null) {
53
+ _queryParams["before"] = before.toISOString();
54
+ }
55
+ if (after != null) {
56
+ _queryParams["after"] = after.toISOString();
57
+ }
58
+ if (ascending != null) {
59
+ _queryParams["ascending"] = ascending.toString();
60
+ }
61
+ let _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
62
+ const _response = yield core.fetcher({
63
+ url: core.url.join((_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : ((_c = (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentMailEnvironment.Production).http, `/v0/inboxes/${encodeURIComponent(serializers.inboxes.InboxId.jsonOrThrow(inboxId, { omitUndefined: true }))}/threads`),
64
+ method: "GET",
65
+ headers: _headers,
66
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
67
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
68
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
69
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
70
+ });
71
+ if (_response.ok) {
72
+ return {
73
+ data: serializers.ListThreadsResponse.parseOrThrow(_response.body, {
86
74
  unrecognizedObjectKeys: "passthrough",
87
75
  allowUnrecognizedUnionMembers: true,
88
76
  allowUnrecognizedEnumValues: true,
89
77
  skipValidation: true,
90
78
  breadcrumbsPrefix: ["response"],
91
- }), _response.rawResponse);
92
- default:
79
+ }),
80
+ rawResponse: _response.rawResponse,
81
+ };
82
+ }
83
+ if (_response.error.reason === "status-code") {
84
+ switch (_response.error.statusCode) {
85
+ case 404:
86
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
87
+ unrecognizedObjectKeys: "passthrough",
88
+ allowUnrecognizedUnionMembers: true,
89
+ allowUnrecognizedEnumValues: true,
90
+ skipValidation: true,
91
+ breadcrumbsPrefix: ["response"],
92
+ }), _response.rawResponse);
93
+ default:
94
+ throw new errors.AgentMailError({
95
+ statusCode: _response.error.statusCode,
96
+ body: _response.error.body,
97
+ rawResponse: _response.rawResponse,
98
+ });
99
+ }
100
+ }
101
+ switch (_response.error.reason) {
102
+ case "non-json":
93
103
  throw new errors.AgentMailError({
94
104
  statusCode: _response.error.statusCode,
95
- body: _response.error.body,
105
+ body: _response.error.rawBody,
106
+ rawResponse: _response.rawResponse,
107
+ });
108
+ case "timeout":
109
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/threads.");
110
+ case "unknown":
111
+ throw new errors.AgentMailError({
112
+ message: _response.error.errorMessage,
96
113
  rawResponse: _response.rawResponse,
97
114
  });
98
115
  }
99
- }
100
- switch (_response.error.reason) {
101
- case "non-json":
102
- throw new errors.AgentMailError({
103
- statusCode: _response.error.statusCode,
104
- body: _response.error.rawBody,
105
- rawResponse: _response.rawResponse,
106
- });
107
- case "timeout":
108
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/threads.");
109
- case "unknown":
110
- throw new errors.AgentMailError({
111
- message: _response.error.errorMessage,
112
- rawResponse: _response.rawResponse,
113
- });
114
- }
116
+ }));
117
+ const dataWithRawResponse = yield list(request).withRawResponse();
118
+ return new core.Pageable({
119
+ response: dataWithRawResponse.data,
120
+ rawResponse: dataWithRawResponse.rawResponse,
121
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
122
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
123
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.threads) !== null && _a !== void 0 ? _a : []; },
124
+ loadPage: (response) => {
125
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
126
+ },
127
+ });
115
128
  });
116
129
  }
117
130
  /**
@@ -38,8 +38,7 @@ export declare class Threads {
38
38
  * @example
39
39
  * await client.threads.list()
40
40
  */
41
- list(request?: AgentMail.ListThreadsRequest, requestOptions?: Threads.RequestOptions): core.HttpResponsePromise<AgentMail.ListThreadsResponse>;
42
- private __list;
41
+ list(request?: AgentMail.ListThreadsRequest, requestOptions?: Threads.RequestOptions): Promise<core.Page<AgentMail.ThreadItem>>;
43
42
  /**
44
43
  * @param {AgentMail.ThreadId} threadId
45
44
  * @param {Threads.RequestOptions} requestOptions - Request-specific configuration.