agentmail 0.0.64 → 0.0.66

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 (64) hide show
  1. package/dist/cjs/Client.js +2 -2
  2. package/dist/cjs/api/resources/domains/client/Client.d.ts +5 -5
  3. package/dist/cjs/api/resources/domains/client/Client.js +66 -55
  4. package/dist/cjs/api/resources/drafts/client/Client.d.ts +1 -2
  5. package/dist/cjs/api/resources/drafts/client/Client.js +83 -70
  6. package/dist/cjs/api/resources/inboxes/client/Client.d.ts +1 -2
  7. package/dist/cjs/api/resources/inboxes/client/Client.js +62 -52
  8. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.d.ts +1 -2
  9. package/dist/cjs/api/resources/inboxes/resources/drafts/client/Client.js +83 -70
  10. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.d.ts +1 -2
  11. package/dist/cjs/api/resources/inboxes/resources/messages/client/Client.js +83 -70
  12. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.d.ts +1 -2
  13. package/dist/cjs/api/resources/inboxes/resources/threads/client/Client.js +83 -70
  14. package/dist/cjs/api/resources/threads/client/Client.d.ts +1 -2
  15. package/dist/cjs/api/resources/threads/client/Client.js +83 -70
  16. package/dist/cjs/api/resources/webhooks/client/Client.d.ts +1 -2
  17. package/dist/cjs/api/resources/webhooks/client/Client.js +62 -52
  18. package/dist/cjs/core/index.d.ts +2 -0
  19. package/dist/cjs/core/index.js +2 -0
  20. package/dist/cjs/core/pagination/Page.d.ts +32 -0
  21. package/dist/cjs/core/pagination/Page.js +100 -0
  22. package/dist/cjs/core/pagination/Pageable.d.ts +14 -0
  23. package/dist/cjs/core/pagination/Pageable.js +10 -0
  24. package/dist/cjs/core/pagination/index.d.ts +2 -0
  25. package/dist/cjs/core/pagination/index.js +7 -0
  26. package/dist/cjs/core/utils/index.d.ts +1 -0
  27. package/dist/cjs/core/utils/index.js +5 -0
  28. package/dist/cjs/core/utils/setObjectProperty.d.ts +11 -0
  29. package/dist/cjs/core/utils/setObjectProperty.js +42 -0
  30. package/dist/cjs/version.d.ts +1 -1
  31. package/dist/cjs/version.js +1 -1
  32. package/dist/esm/Client.mjs +2 -2
  33. package/dist/esm/api/resources/domains/client/Client.d.mts +5 -5
  34. package/dist/esm/api/resources/domains/client/Client.mjs +66 -55
  35. package/dist/esm/api/resources/drafts/client/Client.d.mts +1 -2
  36. package/dist/esm/api/resources/drafts/client/Client.mjs +83 -70
  37. package/dist/esm/api/resources/inboxes/client/Client.d.mts +1 -2
  38. package/dist/esm/api/resources/inboxes/client/Client.mjs +62 -52
  39. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.d.mts +1 -2
  40. package/dist/esm/api/resources/inboxes/resources/drafts/client/Client.mjs +83 -70
  41. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.d.mts +1 -2
  42. package/dist/esm/api/resources/inboxes/resources/messages/client/Client.mjs +83 -70
  43. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.d.mts +1 -2
  44. package/dist/esm/api/resources/inboxes/resources/threads/client/Client.mjs +83 -70
  45. package/dist/esm/api/resources/threads/client/Client.d.mts +1 -2
  46. package/dist/esm/api/resources/threads/client/Client.mjs +83 -70
  47. package/dist/esm/api/resources/webhooks/client/Client.d.mts +1 -2
  48. package/dist/esm/api/resources/webhooks/client/Client.mjs +62 -52
  49. package/dist/esm/core/index.d.mts +2 -0
  50. package/dist/esm/core/index.mjs +2 -0
  51. package/dist/esm/core/pagination/Page.d.mts +32 -0
  52. package/dist/esm/core/pagination/Page.mjs +96 -0
  53. package/dist/esm/core/pagination/Pageable.d.mts +14 -0
  54. package/dist/esm/core/pagination/Pageable.mjs +6 -0
  55. package/dist/esm/core/pagination/index.d.mts +2 -0
  56. package/dist/esm/core/pagination/index.mjs +2 -0
  57. package/dist/esm/core/utils/index.d.mts +1 -0
  58. package/dist/esm/core/utils/index.mjs +1 -0
  59. package/dist/esm/core/utils/setObjectProperty.d.mts +11 -0
  60. package/dist/esm/core/utils/setObjectProperty.mjs +39 -0
  61. package/dist/esm/version.d.mts +1 -1
  62. package/dist/esm/version.mjs +1 -1
  63. package/package.json +1 -1
  64. package/reference.md +12 -11
@@ -67,87 +67,100 @@ class Drafts {
67
67
  * @example
68
68
  * await client.inboxes.drafts.list("inbox_id")
69
69
  */
70
- list(inboxId, request = {}, requestOptions) {
71
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
72
- }
73
- __list(inboxId_1) {
70
+ list(inboxId_1) {
74
71
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
75
- var _a, _b, _c;
76
- const { limit, pageToken, labels, before, after, ascending } = request;
77
- const _queryParams = {};
78
- if (limit != null) {
79
- _queryParams["limit"] = limit.toString();
80
- }
81
- if (pageToken != null) {
82
- _queryParams["page_token"] = pageToken;
83
- }
84
- if (labels != null) {
85
- _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
86
- }
87
- if (before != null) {
88
- _queryParams["before"] = before.toISOString();
89
- }
90
- if (after != null) {
91
- _queryParams["after"] = after.toISOString();
92
- }
93
- if (ascending != null) {
94
- _queryParams["ascending"] = ascending.toString();
95
- }
96
- let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
97
- const _response = yield core.fetcher({
98
- 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`),
99
- method: "GET",
100
- headers: _headers,
101
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
102
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
103
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
104
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
105
- });
106
- if (_response.ok) {
107
- return {
108
- data: serializers.ListDraftsResponse.parseOrThrow(_response.body, {
109
- unrecognizedObjectKeys: "passthrough",
110
- allowUnrecognizedUnionMembers: true,
111
- allowUnrecognizedEnumValues: true,
112
- skipValidation: true,
113
- breadcrumbsPrefix: ["response"],
114
- }),
115
- rawResponse: _response.rawResponse,
116
- };
117
- }
118
- if (_response.error.reason === "status-code") {
119
- switch (_response.error.statusCode) {
120
- case 404:
121
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
72
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
73
+ var _a, _b, _c;
74
+ const { limit, pageToken, labels, before, after, ascending } = request;
75
+ const _queryParams = {};
76
+ if (limit != null) {
77
+ _queryParams["limit"] = limit.toString();
78
+ }
79
+ if (pageToken != null) {
80
+ _queryParams["page_token"] = pageToken;
81
+ }
82
+ if (labels != null) {
83
+ _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, {
84
+ unrecognizedObjectKeys: "strip",
85
+ omitUndefined: true,
86
+ }));
87
+ }
88
+ if (before != null) {
89
+ _queryParams["before"] = before.toISOString();
90
+ }
91
+ if (after != null) {
92
+ _queryParams["after"] = after.toISOString();
93
+ }
94
+ if (ascending != null) {
95
+ _queryParams["ascending"] = ascending.toString();
96
+ }
97
+ let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
98
+ const _response = yield core.fetcher({
99
+ 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`),
100
+ method: "GET",
101
+ headers: _headers,
102
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
103
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
104
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
105
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
106
+ });
107
+ if (_response.ok) {
108
+ return {
109
+ data: serializers.ListDraftsResponse.parseOrThrow(_response.body, {
122
110
  unrecognizedObjectKeys: "passthrough",
123
111
  allowUnrecognizedUnionMembers: true,
124
112
  allowUnrecognizedEnumValues: true,
125
113
  skipValidation: true,
126
114
  breadcrumbsPrefix: ["response"],
127
- }), _response.rawResponse);
128
- default:
115
+ }),
116
+ rawResponse: _response.rawResponse,
117
+ };
118
+ }
119
+ if (_response.error.reason === "status-code") {
120
+ switch (_response.error.statusCode) {
121
+ case 404:
122
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
123
+ unrecognizedObjectKeys: "passthrough",
124
+ allowUnrecognizedUnionMembers: true,
125
+ allowUnrecognizedEnumValues: true,
126
+ skipValidation: true,
127
+ breadcrumbsPrefix: ["response"],
128
+ }), _response.rawResponse);
129
+ default:
130
+ throw new errors.AgentMailError({
131
+ statusCode: _response.error.statusCode,
132
+ body: _response.error.body,
133
+ rawResponse: _response.rawResponse,
134
+ });
135
+ }
136
+ }
137
+ switch (_response.error.reason) {
138
+ case "non-json":
129
139
  throw new errors.AgentMailError({
130
140
  statusCode: _response.error.statusCode,
131
- body: _response.error.body,
141
+ body: _response.error.rawBody,
142
+ rawResponse: _response.rawResponse,
143
+ });
144
+ case "timeout":
145
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/drafts.");
146
+ case "unknown":
147
+ throw new errors.AgentMailError({
148
+ message: _response.error.errorMessage,
132
149
  rawResponse: _response.rawResponse,
133
150
  });
134
151
  }
135
- }
136
- switch (_response.error.reason) {
137
- case "non-json":
138
- throw new errors.AgentMailError({
139
- statusCode: _response.error.statusCode,
140
- body: _response.error.rawBody,
141
- rawResponse: _response.rawResponse,
142
- });
143
- case "timeout":
144
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/drafts.");
145
- case "unknown":
146
- throw new errors.AgentMailError({
147
- message: _response.error.errorMessage,
148
- rawResponse: _response.rawResponse,
149
- });
150
- }
152
+ }));
153
+ const dataWithRawResponse = yield list(request).withRawResponse();
154
+ return new core.Pageable({
155
+ response: dataWithRawResponse.data,
156
+ rawResponse: dataWithRawResponse.rawResponse,
157
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
158
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
159
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.drafts) !== null && _a !== void 0 ? _a : []; },
160
+ loadPage: (response) => {
161
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
162
+ },
163
+ });
151
164
  });
152
165
  }
153
166
  /**
@@ -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
@@ -67,87 +67,100 @@ class Messages {
67
67
  * @example
68
68
  * await client.inboxes.messages.list("inbox_id")
69
69
  */
70
- list(inboxId, request = {}, requestOptions) {
71
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
72
- }
73
- __list(inboxId_1) {
70
+ list(inboxId_1) {
74
71
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
75
- var _a, _b, _c;
76
- const { limit, pageToken, labels, before, after, ascending } = request;
77
- const _queryParams = {};
78
- if (limit != null) {
79
- _queryParams["limit"] = limit.toString();
80
- }
81
- if (pageToken != null) {
82
- _queryParams["page_token"] = pageToken;
83
- }
84
- if (labels != null) {
85
- _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
86
- }
87
- if (before != null) {
88
- _queryParams["before"] = before.toISOString();
89
- }
90
- if (after != null) {
91
- _queryParams["after"] = after.toISOString();
92
- }
93
- if (ascending != null) {
94
- _queryParams["ascending"] = ascending.toString();
95
- }
96
- let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
97
- const _response = yield core.fetcher({
98
- 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`),
99
- method: "GET",
100
- headers: _headers,
101
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
102
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
103
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
104
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
105
- });
106
- if (_response.ok) {
107
- return {
108
- data: serializers.ListMessagesResponse.parseOrThrow(_response.body, {
109
- unrecognizedObjectKeys: "passthrough",
110
- allowUnrecognizedUnionMembers: true,
111
- allowUnrecognizedEnumValues: true,
112
- skipValidation: true,
113
- breadcrumbsPrefix: ["response"],
114
- }),
115
- rawResponse: _response.rawResponse,
116
- };
117
- }
118
- if (_response.error.reason === "status-code") {
119
- switch (_response.error.statusCode) {
120
- case 404:
121
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
72
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
73
+ var _a, _b, _c;
74
+ const { limit, pageToken, labels, before, after, ascending } = request;
75
+ const _queryParams = {};
76
+ if (limit != null) {
77
+ _queryParams["limit"] = limit.toString();
78
+ }
79
+ if (pageToken != null) {
80
+ _queryParams["page_token"] = pageToken;
81
+ }
82
+ if (labels != null) {
83
+ _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, {
84
+ unrecognizedObjectKeys: "strip",
85
+ omitUndefined: true,
86
+ }));
87
+ }
88
+ if (before != null) {
89
+ _queryParams["before"] = before.toISOString();
90
+ }
91
+ if (after != null) {
92
+ _queryParams["after"] = after.toISOString();
93
+ }
94
+ if (ascending != null) {
95
+ _queryParams["ascending"] = ascending.toString();
96
+ }
97
+ let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
98
+ const _response = yield core.fetcher({
99
+ 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`),
100
+ method: "GET",
101
+ headers: _headers,
102
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
103
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
104
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
105
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
106
+ });
107
+ if (_response.ok) {
108
+ return {
109
+ data: serializers.ListMessagesResponse.parseOrThrow(_response.body, {
122
110
  unrecognizedObjectKeys: "passthrough",
123
111
  allowUnrecognizedUnionMembers: true,
124
112
  allowUnrecognizedEnumValues: true,
125
113
  skipValidation: true,
126
114
  breadcrumbsPrefix: ["response"],
127
- }), _response.rawResponse);
128
- default:
115
+ }),
116
+ rawResponse: _response.rawResponse,
117
+ };
118
+ }
119
+ if (_response.error.reason === "status-code") {
120
+ switch (_response.error.statusCode) {
121
+ case 404:
122
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
123
+ unrecognizedObjectKeys: "passthrough",
124
+ allowUnrecognizedUnionMembers: true,
125
+ allowUnrecognizedEnumValues: true,
126
+ skipValidation: true,
127
+ breadcrumbsPrefix: ["response"],
128
+ }), _response.rawResponse);
129
+ default:
130
+ throw new errors.AgentMailError({
131
+ statusCode: _response.error.statusCode,
132
+ body: _response.error.body,
133
+ rawResponse: _response.rawResponse,
134
+ });
135
+ }
136
+ }
137
+ switch (_response.error.reason) {
138
+ case "non-json":
129
139
  throw new errors.AgentMailError({
130
140
  statusCode: _response.error.statusCode,
131
- body: _response.error.body,
141
+ body: _response.error.rawBody,
142
+ rawResponse: _response.rawResponse,
143
+ });
144
+ case "timeout":
145
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/messages.");
146
+ case "unknown":
147
+ throw new errors.AgentMailError({
148
+ message: _response.error.errorMessage,
132
149
  rawResponse: _response.rawResponse,
133
150
  });
134
151
  }
135
- }
136
- switch (_response.error.reason) {
137
- case "non-json":
138
- throw new errors.AgentMailError({
139
- statusCode: _response.error.statusCode,
140
- body: _response.error.rawBody,
141
- rawResponse: _response.rawResponse,
142
- });
143
- case "timeout":
144
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/messages.");
145
- case "unknown":
146
- throw new errors.AgentMailError({
147
- message: _response.error.errorMessage,
148
- rawResponse: _response.rawResponse,
149
- });
150
- }
152
+ }));
153
+ const dataWithRawResponse = yield list(request).withRawResponse();
154
+ return new core.Pageable({
155
+ response: dataWithRawResponse.data,
156
+ rawResponse: dataWithRawResponse.rawResponse,
157
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
158
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
159
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.messages) !== null && _a !== void 0 ? _a : []; },
160
+ loadPage: (response) => {
161
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
162
+ },
163
+ });
151
164
  });
152
165
  }
153
166
  /**
@@ -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
@@ -67,87 +67,100 @@ class Threads {
67
67
  * @example
68
68
  * await client.inboxes.threads.list("inbox_id")
69
69
  */
70
- list(inboxId, request = {}, requestOptions) {
71
- return core.HttpResponsePromise.fromPromise(this.__list(inboxId, request, requestOptions));
72
- }
73
- __list(inboxId_1) {
70
+ list(inboxId_1) {
74
71
  return __awaiter(this, arguments, void 0, function* (inboxId, request = {}, requestOptions) {
75
- var _a, _b, _c;
76
- const { limit, pageToken, labels, before, after, ascending } = request;
77
- const _queryParams = {};
78
- if (limit != null) {
79
- _queryParams["limit"] = limit.toString();
80
- }
81
- if (pageToken != null) {
82
- _queryParams["page_token"] = pageToken;
83
- }
84
- if (labels != null) {
85
- _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, { unrecognizedObjectKeys: "strip", omitUndefined: true }));
86
- }
87
- if (before != null) {
88
- _queryParams["before"] = before.toISOString();
89
- }
90
- if (after != null) {
91
- _queryParams["after"] = after.toISOString();
92
- }
93
- if (ascending != null) {
94
- _queryParams["ascending"] = ascending.toString();
95
- }
96
- let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
97
- const _response = yield core.fetcher({
98
- 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`),
99
- method: "GET",
100
- headers: _headers,
101
- queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
102
- timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
103
- maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
104
- abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
105
- });
106
- if (_response.ok) {
107
- return {
108
- data: serializers.ListThreadsResponse.parseOrThrow(_response.body, {
109
- unrecognizedObjectKeys: "passthrough",
110
- allowUnrecognizedUnionMembers: true,
111
- allowUnrecognizedEnumValues: true,
112
- skipValidation: true,
113
- breadcrumbsPrefix: ["response"],
114
- }),
115
- rawResponse: _response.rawResponse,
116
- };
117
- }
118
- if (_response.error.reason === "status-code") {
119
- switch (_response.error.statusCode) {
120
- case 404:
121
- throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
72
+ const list = core.HttpResponsePromise.interceptFunction((request) => __awaiter(this, void 0, void 0, function* () {
73
+ var _a, _b, _c;
74
+ const { limit, pageToken, labels, before, after, ascending } = request;
75
+ const _queryParams = {};
76
+ if (limit != null) {
77
+ _queryParams["limit"] = limit.toString();
78
+ }
79
+ if (pageToken != null) {
80
+ _queryParams["page_token"] = pageToken;
81
+ }
82
+ if (labels != null) {
83
+ _queryParams["labels"] = (0, json_js_1.toJson)(serializers.Labels.jsonOrThrow(labels, {
84
+ unrecognizedObjectKeys: "strip",
85
+ omitUndefined: true,
86
+ }));
87
+ }
88
+ if (before != null) {
89
+ _queryParams["before"] = before.toISOString();
90
+ }
91
+ if (after != null) {
92
+ _queryParams["after"] = after.toISOString();
93
+ }
94
+ if (ascending != null) {
95
+ _queryParams["ascending"] = ascending.toString();
96
+ }
97
+ let _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)({ Authorization: yield this._getAuthorizationHeader() }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
98
+ const _response = yield core.fetcher({
99
+ 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`),
100
+ method: "GET",
101
+ headers: _headers,
102
+ queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
103
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
104
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
105
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
106
+ });
107
+ if (_response.ok) {
108
+ return {
109
+ data: serializers.ListThreadsResponse.parseOrThrow(_response.body, {
122
110
  unrecognizedObjectKeys: "passthrough",
123
111
  allowUnrecognizedUnionMembers: true,
124
112
  allowUnrecognizedEnumValues: true,
125
113
  skipValidation: true,
126
114
  breadcrumbsPrefix: ["response"],
127
- }), _response.rawResponse);
128
- default:
115
+ }),
116
+ rawResponse: _response.rawResponse,
117
+ };
118
+ }
119
+ if (_response.error.reason === "status-code") {
120
+ switch (_response.error.statusCode) {
121
+ case 404:
122
+ throw new AgentMail.NotFoundError(serializers.ErrorResponse.parseOrThrow(_response.error.body, {
123
+ unrecognizedObjectKeys: "passthrough",
124
+ allowUnrecognizedUnionMembers: true,
125
+ allowUnrecognizedEnumValues: true,
126
+ skipValidation: true,
127
+ breadcrumbsPrefix: ["response"],
128
+ }), _response.rawResponse);
129
+ default:
130
+ throw new errors.AgentMailError({
131
+ statusCode: _response.error.statusCode,
132
+ body: _response.error.body,
133
+ rawResponse: _response.rawResponse,
134
+ });
135
+ }
136
+ }
137
+ switch (_response.error.reason) {
138
+ case "non-json":
129
139
  throw new errors.AgentMailError({
130
140
  statusCode: _response.error.statusCode,
131
- body: _response.error.body,
141
+ body: _response.error.rawBody,
142
+ rawResponse: _response.rawResponse,
143
+ });
144
+ case "timeout":
145
+ throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/threads.");
146
+ case "unknown":
147
+ throw new errors.AgentMailError({
148
+ message: _response.error.errorMessage,
132
149
  rawResponse: _response.rawResponse,
133
150
  });
134
151
  }
135
- }
136
- switch (_response.error.reason) {
137
- case "non-json":
138
- throw new errors.AgentMailError({
139
- statusCode: _response.error.statusCode,
140
- body: _response.error.rawBody,
141
- rawResponse: _response.rawResponse,
142
- });
143
- case "timeout":
144
- throw new errors.AgentMailTimeoutError("Timeout exceeded when calling GET /v0/inboxes/{inbox_id}/threads.");
145
- case "unknown":
146
- throw new errors.AgentMailError({
147
- message: _response.error.errorMessage,
148
- rawResponse: _response.rawResponse,
149
- });
150
- }
152
+ }));
153
+ const dataWithRawResponse = yield list(request).withRawResponse();
154
+ return new core.Pageable({
155
+ response: dataWithRawResponse.data,
156
+ rawResponse: dataWithRawResponse.rawResponse,
157
+ hasNextPage: (response) => (response === null || response === void 0 ? void 0 : response.nextPageToken) != null &&
158
+ !(typeof (response === null || response === void 0 ? void 0 : response.nextPageToken) === "string" && (response === null || response === void 0 ? void 0 : response.nextPageToken) === ""),
159
+ getItems: (response) => { var _a; return (_a = response === null || response === void 0 ? void 0 : response.threads) !== null && _a !== void 0 ? _a : []; },
160
+ loadPage: (response) => {
161
+ return list(core.setObjectProperty(request, "pageToken", response === null || response === void 0 ? void 0 : response.nextPageToken));
162
+ },
163
+ });
151
164
  });
152
165
  }
153
166
  /**
@@ -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.