@valtown/sdk 0.26.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/core.d.ts.map +1 -1
  3. package/core.js +12 -6
  4. package/core.js.map +1 -1
  5. package/core.mjs +12 -6
  6. package/core.mjs.map +1 -1
  7. package/index.d.mts +6 -0
  8. package/index.d.ts +6 -0
  9. package/index.d.ts.map +1 -1
  10. package/index.js +7 -0
  11. package/index.js.map +1 -1
  12. package/index.mjs +7 -0
  13. package/index.mjs.map +1 -1
  14. package/package.json +1 -1
  15. package/resources/alias/username/val-name.d.ts +3 -3
  16. package/resources/index.d.ts +1 -0
  17. package/resources/index.d.ts.map +1 -1
  18. package/resources/index.js +4 -1
  19. package/resources/index.js.map +1 -1
  20. package/resources/index.mjs +1 -0
  21. package/resources/index.mjs.map +1 -1
  22. package/resources/me/comments.d.ts +2 -2
  23. package/resources/projects/branches.d.ts +63 -0
  24. package/resources/projects/branches.d.ts.map +1 -0
  25. package/resources/projects/branches.js +29 -0
  26. package/resources/projects/branches.js.map +1 -0
  27. package/resources/projects/branches.mjs +24 -0
  28. package/resources/projects/branches.mjs.map +1 -0
  29. package/resources/projects/index.d.ts +3 -0
  30. package/resources/projects/index.d.ts.map +1 -0
  31. package/resources/projects/index.js +11 -0
  32. package/resources/projects/index.js.map +1 -0
  33. package/resources/projects/index.mjs +4 -0
  34. package/resources/projects/index.mjs.map +1 -0
  35. package/resources/projects/projects.d.ts +92 -0
  36. package/resources/projects/projects.d.ts.map +1 -0
  37. package/resources/projects/projects.js +60 -0
  38. package/resources/projects/projects.js.map +1 -0
  39. package/resources/projects/projects.mjs +32 -0
  40. package/resources/projects/projects.mjs.map +1 -0
  41. package/resources/shared.d.ts +6 -6
  42. package/resources/vals/vals.d.ts +4 -4
  43. package/resources/vals/versions.d.ts +2 -2
  44. package/src/core.ts +14 -6
  45. package/src/index.ts +21 -0
  46. package/src/resources/alias/username/val-name.ts +3 -3
  47. package/src/resources/index.ts +7 -0
  48. package/src/resources/me/comments.ts +2 -2
  49. package/src/resources/projects/branches.ts +103 -0
  50. package/src/resources/projects/index.ts +16 -0
  51. package/src/resources/projects/projects.ts +146 -0
  52. package/src/resources/shared.ts +6 -6
  53. package/src/resources/vals/vals.ts +4 -4
  54. package/src/resources/vals/versions.ts +2 -2
  55. package/src/version.ts +1 -1
  56. package/version.d.ts +1 -1
  57. package/version.js +1 -1
  58. package/version.mjs +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@valtown/sdk",
3
- "version": "0.26.0",
3
+ "version": "0.28.0",
4
4
  "description": "The official TypeScript library for the Val Town API",
5
5
  "author": "Val Town <support@val.town>",
6
6
  "types": "./index.d.ts",
@@ -33,8 +33,8 @@ export interface ValNameRetrieveResponse {
33
33
  */
34
34
  name: string;
35
35
  /**
36
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
37
- * elsewhere, but you can link to them.
36
+ * This resource's privacy setting. Unlisted resources do not appear on profile
37
+ * pages or elsewhere, but you can link to them.
38
38
  */
39
39
  privacy: 'public' | 'unlisted' | 'private';
40
40
  /**
@@ -52,7 +52,7 @@ export interface ValNameRetrieveResponse {
52
52
  */
53
53
  type: 'interval' | 'http' | 'express' | 'email' | 'script' | 'rpc' | 'httpnext';
54
54
  /**
55
- * The URL of this val on the Val Town website
55
+ * The URL of this resource on the Val Town website
56
56
  */
57
57
  url: string;
58
58
  /**
@@ -3,6 +3,7 @@ export { Alias } from "./alias/alias.js";
3
3
  export { Blobs, type BlobListResponse, type BlobListParams, type BlobStoreParams } from "./blobs.js";
4
4
  export { Emails, type EmailSendResponse, type EmailSendParams } from "./emails.js";
5
5
  export { Me } from "./me/me.js";
6
+ export { ProjectListResponsesPageCursorURL, Projects, type ProjectRetrieveResponse, type ProjectListResponse, type ProjectListParams, } from "./projects/projects.js";
6
7
  export { Search } from "./search/search.js";
7
8
  export { Sqlite, type SqliteBatchResponse, type SqliteBatchParams, type SqliteExecuteParams } from "./sqlite.js";
8
9
  export { Users } from "./users/users.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAChF,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9G,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,IAAI,EACJ,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAChF,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EACL,iCAAiC,EACjC,QAAQ,EACR,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9G,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,IAAI,EACJ,KAAK,2BAA2B,EAChC,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC"}
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.Vals = exports.Users = exports.Sqlite = exports.Search = exports.Me = exports.Emails = exports.Blobs = exports.Alias = void 0;
18
+ exports.Vals = exports.Users = exports.Sqlite = exports.Search = exports.Projects = exports.ProjectListResponsesPageCursorURL = exports.Me = exports.Emails = exports.Blobs = exports.Alias = void 0;
19
19
  __exportStar(require("./shared.js"), exports);
20
20
  var alias_1 = require("./alias/alias.js");
21
21
  Object.defineProperty(exports, "Alias", { enumerable: true, get: function () { return alias_1.Alias; } });
@@ -25,6 +25,9 @@ var emails_1 = require("./emails.js");
25
25
  Object.defineProperty(exports, "Emails", { enumerable: true, get: function () { return emails_1.Emails; } });
26
26
  var me_1 = require("./me/me.js");
27
27
  Object.defineProperty(exports, "Me", { enumerable: true, get: function () { return me_1.Me; } });
28
+ var projects_1 = require("./projects/projects.js");
29
+ Object.defineProperty(exports, "ProjectListResponsesPageCursorURL", { enumerable: true, get: function () { return projects_1.ProjectListResponsesPageCursorURL; } });
30
+ Object.defineProperty(exports, "Projects", { enumerable: true, get: function () { return projects_1.Projects; } });
28
31
  var search_1 = require("./search/search.js");
29
32
  Object.defineProperty(exports, "Search", { enumerable: true, get: function () { return search_1.Search; } });
30
33
  var sqlite_1 = require("./sqlite.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;;;;;;;;;;;;AAEtF,8CAAyB;AACzB,0CAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,oCAAkG;AAAzF,8FAAA,KAAK,OAAA;AACd,sCAAgF;AAAvE,gGAAA,MAAM,OAAA;AACf,iCAA6B;AAApB,wFAAA,EAAE,OAAA;AACX,6CAAyC;AAAhC,gGAAA,MAAM,OAAA;AACf,sCAA8G;AAArG,gGAAA,MAAM,OAAA;AACf,0CAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,uCAMqB;AALnB,4FAAA,IAAI,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;;;;;;;;;;;;AAEtF,8CAAyB;AACzB,0CAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,oCAAkG;AAAzF,8FAAA,KAAK,OAAA;AACd,sCAAgF;AAAvE,gGAAA,MAAM,OAAA;AACf,iCAA6B;AAApB,wFAAA,EAAE,OAAA;AACX,mDAM6B;AAL3B,6HAAA,iCAAiC,OAAA;AACjC,oGAAA,QAAQ,OAAA;AAKV,6CAAyC;AAAhC,gGAAA,MAAM,OAAA;AACf,sCAA8G;AAArG,gGAAA,MAAM,OAAA;AACf,0CAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,uCAMqB;AALnB,4FAAA,IAAI,OAAA"}
@@ -4,6 +4,7 @@ export { Alias } from "./alias/alias.mjs";
4
4
  export { Blobs } from "./blobs.mjs";
5
5
  export { Emails } from "./emails.mjs";
6
6
  export { Me } from "./me/me.mjs";
7
+ export { ProjectListResponsesPageCursorURL, Projects, } from "./projects/projects.mjs";
7
8
  export { Search } from "./search/search.mjs";
8
9
  export { Sqlite } from "./sqlite.mjs";
9
10
  export { Users } from "./users/users.mjs";
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;;OAG/E,EAAE,KAAK,EAAE;OACT,EAAE,KAAK,EAAoE;OAC3E,EAAE,MAAM,EAAgD;OACxD,EAAE,EAAE,EAAE;OACN,EAAE,MAAM,EAAE;OACV,EAAE,MAAM,EAA8E;OACtF,EAAE,KAAK,EAAE;OACT,EACL,IAAI,GAKL"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;;OAG/E,EAAE,KAAK,EAAE;OACT,EAAE,KAAK,EAAoE;OAC3E,EAAE,MAAM,EAAgD;OACxD,EAAE,EAAE,EAAE;OACN,EACL,iCAAiC,EACjC,QAAQ,GAIT;OACM,EAAE,MAAM,EAAE;OACV,EAAE,MAAM,EAA8E;OACtF,EAAE,KAAK,EAAE;OACT,EACL,IAAI,GAKL"}
@@ -38,8 +38,8 @@ export declare namespace CommentListResponse {
38
38
  */
39
39
  name: string;
40
40
  /**
41
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
42
- * elsewhere, but you can link to them.
41
+ * This resource's privacy setting. Unlisted resources do not appear on profile
42
+ * pages or elsewhere, but you can link to them.
43
43
  */
44
44
  privacy: 'public' | 'unlisted' | 'private';
45
45
  version: number;
@@ -0,0 +1,63 @@
1
+ import { APIResource } from "../../resource.js";
2
+ import * as Core from "../../core.js";
3
+ import { PageCursorURL, type PageCursorURLParams } from "../../pagination.js";
4
+ export declare class Branches extends APIResource {
5
+ /**
6
+ * [BETA] Get a branch by id
7
+ */
8
+ retrieve(projectId: string, branchId: string, options?: Core.RequestOptions): Core.APIPromise<BranchRetrieveResponse>;
9
+ /**
10
+ * [BETA] List all branches for a project
11
+ */
12
+ list(projectId: string, query: BranchListParams, options?: Core.RequestOptions): Core.PagePromise<BranchListResponsesPageCursorURL, BranchListResponse>;
13
+ }
14
+ export declare class BranchListResponsesPageCursorURL extends PageCursorURL<BranchListResponse> {
15
+ }
16
+ /**
17
+ * A Branch
18
+ */
19
+ export interface BranchRetrieveResponse {
20
+ /**
21
+ * The id of the branch
22
+ */
23
+ id: string;
24
+ createdAt: string;
25
+ /**
26
+ * The id of the branch this branch was forked from
27
+ */
28
+ forkedBranchId: string | null;
29
+ name: string;
30
+ updatedAt: string;
31
+ /**
32
+ * The URL of this resource on the Val Town website
33
+ */
34
+ valTownUrl: string;
35
+ version: number;
36
+ }
37
+ /**
38
+ * A Branch
39
+ */
40
+ export interface BranchListResponse {
41
+ /**
42
+ * The id of the branch
43
+ */
44
+ id: string;
45
+ createdAt: string;
46
+ /**
47
+ * The id of the branch this branch was forked from
48
+ */
49
+ forkedBranchId: string | null;
50
+ name: string;
51
+ updatedAt: string;
52
+ /**
53
+ * The URL of this resource on the Val Town website
54
+ */
55
+ valTownUrl: string;
56
+ version: number;
57
+ }
58
+ export interface BranchListParams extends PageCursorURLParams {
59
+ }
60
+ export declare namespace Branches {
61
+ export { type BranchRetrieveResponse as BranchRetrieveResponse, type BranchListResponse as BranchListResponse, BranchListResponsesPageCursorURL as BranchListResponsesPageCursorURL, type BranchListParams as BranchListParams, };
62
+ }
63
+ //# sourceMappingURL=branches.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/resources/projects/branches.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3E,qBAAa,QAAS,SAAQ,WAAW;IACvC;;OAEG;IACH,QAAQ,CACN,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC;IAI1C;;OAEG;IACH,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,IAAI,CAAC,WAAW,CAAC,gCAAgC,EAAE,kBAAkB,CAAC;CAM1E;AAED,qBAAa,gCAAiC,SAAQ,aAAa,CAAC,kBAAkB,CAAC;CAAG;AAE1F;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,IAAI,EAAE,MAAM,CAAC;IAEb,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,IAAI,EAAE,MAAM,CAAC;IAEb,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;CAAG;AAIhE,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,sBAAsB,IAAI,sBAAsB,EACrD,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,gCAAgC,IAAI,gCAAgC,EACpE,KAAK,gBAAgB,IAAI,gBAAgB,GAC1C,CAAC;CACH"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.BranchListResponsesPageCursorURL = exports.Branches = void 0;
5
+ const resource_1 = require("../../resource.js");
6
+ const pagination_1 = require("../../pagination.js");
7
+ class Branches extends resource_1.APIResource {
8
+ /**
9
+ * [BETA] Get a branch by id
10
+ */
11
+ retrieve(projectId, branchId, options) {
12
+ return this._client.get(`/v1/projects/${projectId}/branches/${branchId}`, options);
13
+ }
14
+ /**
15
+ * [BETA] List all branches for a project
16
+ */
17
+ list(projectId, query, options) {
18
+ return this._client.getAPIList(`/v1/projects/${projectId}/branches`, BranchListResponsesPageCursorURL, {
19
+ query,
20
+ ...options,
21
+ });
22
+ }
23
+ }
24
+ exports.Branches = Branches;
25
+ class BranchListResponsesPageCursorURL extends pagination_1.PageCursorURL {
26
+ }
27
+ exports.BranchListResponsesPageCursorURL = BranchListResponsesPageCursorURL;
28
+ Branches.BranchListResponsesPageCursorURL = BranchListResponsesPageCursorURL;
29
+ //# sourceMappingURL=branches.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branches.js","sourceRoot":"","sources":["../../src/resources/projects/branches.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,gDAA6C;AAE7C,oDAA2E;AAE3E,MAAa,QAAS,SAAQ,sBAAW;IACvC;;OAEG;IACH,QAAQ,CACN,SAAiB,EACjB,QAAgB,EAChB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,SAAS,aAAa,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,IAAI,CACF,SAAiB,EACjB,KAAuB,EACvB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,SAAS,WAAW,EAAE,gCAAgC,EAAE;YACrG,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;CACF;AAzBD,4BAyBC;AAED,MAAa,gCAAiC,SAAQ,0BAAiC;CAAG;AAA1F,4EAA0F;AA4D1F,QAAQ,CAAC,gCAAgC,GAAG,gCAAgC,CAAC"}
@@ -0,0 +1,24 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { APIResource } from "../../resource.mjs";
3
+ import { PageCursorURL } from "../../pagination.mjs";
4
+ export class Branches extends APIResource {
5
+ /**
6
+ * [BETA] Get a branch by id
7
+ */
8
+ retrieve(projectId, branchId, options) {
9
+ return this._client.get(`/v1/projects/${projectId}/branches/${branchId}`, options);
10
+ }
11
+ /**
12
+ * [BETA] List all branches for a project
13
+ */
14
+ list(projectId, query, options) {
15
+ return this._client.getAPIList(`/v1/projects/${projectId}/branches`, BranchListResponsesPageCursorURL, {
16
+ query,
17
+ ...options,
18
+ });
19
+ }
20
+ }
21
+ export class BranchListResponsesPageCursorURL extends PageCursorURL {
22
+ }
23
+ Branches.BranchListResponsesPageCursorURL = BranchListResponsesPageCursorURL;
24
+ //# sourceMappingURL=branches.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branches.mjs","sourceRoot":"","sources":["../../src/resources/projects/branches.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAEf,EAAE,aAAa,EAA4B;AAElD,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC;;OAEG;IACH,QAAQ,CACN,SAAiB,EACjB,QAAgB,EAChB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,SAAS,aAAa,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,IAAI,CACF,SAAiB,EACjB,KAAuB,EACvB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,SAAS,WAAW,EAAE,gCAAgC,EAAE;YACrG,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,OAAO,gCAAiC,SAAQ,aAAiC;CAAG;AA4D1F,QAAQ,CAAC,gCAAgC,GAAG,gCAAgC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { BranchListResponsesPageCursorURL, Branches, type BranchRetrieveResponse, type BranchListResponse, type BranchListParams, } from "./branches.js";
2
+ export { ProjectListResponsesPageCursorURL, Projects, type ProjectRetrieveResponse, type ProjectListResponse, type ProjectListParams, } from "./projects.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/projects/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gCAAgC,EAChC,QAAQ,EACR,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iCAAiC,EACjC,QAAQ,EACR,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Projects = exports.ProjectListResponsesPageCursorURL = exports.Branches = exports.BranchListResponsesPageCursorURL = void 0;
5
+ var branches_1 = require("./branches.js");
6
+ Object.defineProperty(exports, "BranchListResponsesPageCursorURL", { enumerable: true, get: function () { return branches_1.BranchListResponsesPageCursorURL; } });
7
+ Object.defineProperty(exports, "Branches", { enumerable: true, get: function () { return branches_1.Branches; } });
8
+ var projects_1 = require("./projects.js");
9
+ Object.defineProperty(exports, "ProjectListResponsesPageCursorURL", { enumerable: true, get: function () { return projects_1.ProjectListResponsesPageCursorURL; } });
10
+ Object.defineProperty(exports, "Projects", { enumerable: true, get: function () { return projects_1.Projects; } });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/projects/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,0CAMoB;AALlB,4HAAA,gCAAgC,OAAA;AAChC,oGAAA,QAAQ,OAAA;AAKV,0CAMoB;AALlB,6HAAA,iCAAiC,OAAA;AACjC,oGAAA,QAAQ,OAAA"}
@@ -0,0 +1,4 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ export { BranchListResponsesPageCursorURL, Branches, } from "./branches.mjs";
3
+ export { ProjectListResponsesPageCursorURL, Projects, } from "./projects.mjs";
4
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/resources/projects/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EACL,gCAAgC,EAChC,QAAQ,GAIT;OACM,EACL,iCAAiC,EACjC,QAAQ,GAIT"}
@@ -0,0 +1,92 @@
1
+ import { APIResource } from "../../resource.js";
2
+ import * as Core from "../../core.js";
3
+ import * as BranchesAPI from "./branches.js";
4
+ import { BranchListParams, BranchListResponse, BranchListResponsesPageCursorURL, BranchRetrieveResponse, Branches } from "./branches.js";
5
+ import { PageCursorURL, type PageCursorURLParams } from "../../pagination.js";
6
+ /**
7
+ * Projects let you organize multiple files and collaborate with pull requests
8
+ */
9
+ export declare class Projects extends APIResource {
10
+ branches: BranchesAPI.Branches;
11
+ /**
12
+ * [BETA] Get a project by id
13
+ */
14
+ retrieve(projectId: string, options?: Core.RequestOptions): Core.APIPromise<ProjectRetrieveResponse>;
15
+ /**
16
+ * [BETA] List all of a user's projects for authenticated users
17
+ */
18
+ list(query: ProjectListParams, options?: Core.RequestOptions): Core.PagePromise<ProjectListResponsesPageCursorURL, ProjectListResponse>;
19
+ }
20
+ export declare class ProjectListResponsesPageCursorURL extends PageCursorURL<ProjectListResponse> {
21
+ }
22
+ /**
23
+ * A Project
24
+ */
25
+ export interface ProjectRetrieveResponse {
26
+ /**
27
+ * The id of the project
28
+ */
29
+ id: string;
30
+ author: ProjectRetrieveResponse.Author;
31
+ createdAt: string;
32
+ description: string | null;
33
+ /**
34
+ * The URL of this project's image
35
+ */
36
+ imageUrl: string | null;
37
+ name: string;
38
+ /**
39
+ * This resource's privacy setting. Unlisted resources do not appear on profile
40
+ * pages or elsewhere, but you can link to them.
41
+ */
42
+ privacy: 'public' | 'unlisted' | 'private';
43
+ /**
44
+ * The URL of this resource on the Val Town website
45
+ */
46
+ valTownUrl: string;
47
+ }
48
+ export declare namespace ProjectRetrieveResponse {
49
+ interface Author {
50
+ id: string;
51
+ username: string | null;
52
+ }
53
+ }
54
+ /**
55
+ * A Project
56
+ */
57
+ export interface ProjectListResponse {
58
+ /**
59
+ * The id of the project
60
+ */
61
+ id: string;
62
+ author: ProjectListResponse.Author;
63
+ createdAt: string;
64
+ description: string | null;
65
+ /**
66
+ * The URL of this project's image
67
+ */
68
+ imageUrl: string | null;
69
+ name: string;
70
+ /**
71
+ * This resource's privacy setting. Unlisted resources do not appear on profile
72
+ * pages or elsewhere, but you can link to them.
73
+ */
74
+ privacy: 'public' | 'unlisted' | 'private';
75
+ /**
76
+ * The URL of this resource on the Val Town website
77
+ */
78
+ valTownUrl: string;
79
+ }
80
+ export declare namespace ProjectListResponse {
81
+ interface Author {
82
+ id: string;
83
+ username: string | null;
84
+ }
85
+ }
86
+ export interface ProjectListParams extends PageCursorURLParams {
87
+ }
88
+ export declare namespace Projects {
89
+ export { type ProjectRetrieveResponse as ProjectRetrieveResponse, type ProjectListResponse as ProjectListResponse, ProjectListResponsesPageCursorURL as ProjectListResponsesPageCursorURL, type ProjectListParams as ProjectListParams, };
90
+ export { Branches as Branches, type BranchRetrieveResponse as BranchRetrieveResponse, type BranchListResponse as BranchListResponse, BranchListResponsesPageCursorURL as BranchListResponsesPageCursorURL, type BranchListParams as BranchListParams, };
91
+ }
92
+ //# sourceMappingURL=projects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/resources/projects/projects.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,WAAW,MAAM,YAAY,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,gCAAgC,EAChC,sBAAsB,EACtB,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;GAEG;AACH,qBAAa,QAAS,SAAQ,WAAW;IACvC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAA0C;IAExE;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;IAIpG;;OAEG;IACH,IAAI,CACF,KAAK,EAAE,iBAAiB,EACxB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,IAAI,CAAC,WAAW,CAAC,iCAAiC,EAAE,mBAAmB,CAAC;CAG5E;AAED,qBAAa,iCAAkC,SAAQ,aAAa,CAAC,mBAAmB,CAAC;CAAG;AAE5F;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,MAAM,EAAE,uBAAuB,CAAC,MAAM,CAAC;IAEvC,SAAS,EAAE,MAAM,CAAC;IAElB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,OAAO,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAE3C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,yBAAiB,uBAAuB,CAAC;IACvC,UAAiB,MAAM;QACrB,EAAE,EAAE,MAAM,CAAC;QAEX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;KACzB;CACF;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAAC;IAEnC,SAAS,EAAE,MAAM,CAAC;IAElB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,OAAO,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAE3C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,yBAAiB,mBAAmB,CAAC;IACnC,UAAiB,MAAM;QACrB,EAAE,EAAE,MAAM,CAAC;QAEX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;KACzB;CACF;AAED,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;CAAG;AAMjE,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EACL,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,iCAAiC,IAAI,iCAAiC,EACtE,KAAK,iBAAiB,IAAI,iBAAiB,GAC5C,CAAC;IAEF,OAAO,EACL,QAAQ,IAAI,QAAQ,EACpB,KAAK,sBAAsB,IAAI,sBAAsB,EACrD,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,gCAAgC,IAAI,gCAAgC,EACpE,KAAK,gBAAgB,IAAI,gBAAgB,GAC1C,CAAC;CACH"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || function (mod) {
20
+ if (mod && mod.__esModule) return mod;
21
+ var result = {};
22
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
+ __setModuleDefault(result, mod);
24
+ return result;
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.ProjectListResponsesPageCursorURL = exports.Projects = void 0;
28
+ const resource_1 = require("../../resource.js");
29
+ const BranchesAPI = __importStar(require("./branches.js"));
30
+ const branches_1 = require("./branches.js");
31
+ const pagination_1 = require("../../pagination.js");
32
+ /**
33
+ * Projects let you organize multiple files and collaborate with pull requests
34
+ */
35
+ class Projects extends resource_1.APIResource {
36
+ constructor() {
37
+ super(...arguments);
38
+ this.branches = new BranchesAPI.Branches(this._client);
39
+ }
40
+ /**
41
+ * [BETA] Get a project by id
42
+ */
43
+ retrieve(projectId, options) {
44
+ return this._client.get(`/v1/projects/${projectId}`, options);
45
+ }
46
+ /**
47
+ * [BETA] List all of a user's projects for authenticated users
48
+ */
49
+ list(query, options) {
50
+ return this._client.getAPIList('/v1/projects', ProjectListResponsesPageCursorURL, { query, ...options });
51
+ }
52
+ }
53
+ exports.Projects = Projects;
54
+ class ProjectListResponsesPageCursorURL extends pagination_1.PageCursorURL {
55
+ }
56
+ exports.ProjectListResponsesPageCursorURL = ProjectListResponsesPageCursorURL;
57
+ Projects.ProjectListResponsesPageCursorURL = ProjectListResponsesPageCursorURL;
58
+ Projects.Branches = branches_1.Branches;
59
+ Projects.BranchListResponsesPageCursorURL = branches_1.BranchListResponsesPageCursorURL;
60
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/resources/projects/projects.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtF,gDAA6C;AAE7C,2DAA0C;AAC1C,4CAMoB;AACpB,oDAA2E;AAE3E;;GAEG;AACH,MAAa,QAAS,SAAQ,sBAAW;IAAzC;;QACE,aAAQ,GAAyB,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAkB1E,CAAC;IAhBC;;OAEG;IACH,QAAQ,CAAC,SAAiB,EAAE,OAA6B;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CACF,KAAwB,EACxB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,iCAAiC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3G,CAAC;CACF;AAnBD,4BAmBC;AAED,MAAa,iCAAkC,SAAQ,0BAAkC;CAAG;AAA5F,8EAA4F;AAwF5F,QAAQ,CAAC,iCAAiC,GAAG,iCAAiC,CAAC;AAC/E,QAAQ,CAAC,QAAQ,GAAG,mBAAQ,CAAC;AAC7B,QAAQ,CAAC,gCAAgC,GAAG,2CAAgC,CAAC"}
@@ -0,0 +1,32 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { APIResource } from "../../resource.mjs";
3
+ import * as BranchesAPI from "./branches.mjs";
4
+ import { BranchListResponsesPageCursorURL, Branches, } from "./branches.mjs";
5
+ import { PageCursorURL } from "../../pagination.mjs";
6
+ /**
7
+ * Projects let you organize multiple files and collaborate with pull requests
8
+ */
9
+ export class Projects extends APIResource {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.branches = new BranchesAPI.Branches(this._client);
13
+ }
14
+ /**
15
+ * [BETA] Get a project by id
16
+ */
17
+ retrieve(projectId, options) {
18
+ return this._client.get(`/v1/projects/${projectId}`, options);
19
+ }
20
+ /**
21
+ * [BETA] List all of a user's projects for authenticated users
22
+ */
23
+ list(query, options) {
24
+ return this._client.getAPIList('/v1/projects', ProjectListResponsesPageCursorURL, { query, ...options });
25
+ }
26
+ }
27
+ export class ProjectListResponsesPageCursorURL extends PageCursorURL {
28
+ }
29
+ Projects.ProjectListResponsesPageCursorURL = ProjectListResponsesPageCursorURL;
30
+ Projects.Branches = Branches;
31
+ Projects.BranchListResponsesPageCursorURL = BranchListResponsesPageCursorURL;
32
+ //# sourceMappingURL=projects.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.mjs","sourceRoot":"","sources":["../../src/resources/projects/projects.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAEf,KAAK,WAAW;OAChB,EAGL,gCAAgC,EAEhC,QAAQ,GACT;OACM,EAAE,aAAa,EAA4B;AAElD;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,WAAW;IAAzC;;QACE,aAAQ,GAAyB,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAkB1E,CAAC;IAhBC;;OAEG;IACH,QAAQ,CAAC,SAAiB,EAAE,OAA6B;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,IAAI,CACF,KAAwB,EACxB,OAA6B;QAE7B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,iCAAiC,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC3G,CAAC;CACF;AAED,MAAM,OAAO,iCAAkC,SAAQ,aAAkC;CAAG;AAwF5F,QAAQ,CAAC,iCAAiC,GAAG,iCAAiC,CAAC;AAC/E,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC7B,QAAQ,CAAC,gCAAgC,GAAG,gCAAgC,CAAC"}
@@ -22,8 +22,8 @@ export interface BasicVal {
22
22
  */
23
23
  name: string;
24
24
  /**
25
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
26
- * elsewhere, but you can link to them.
25
+ * This resource's privacy setting. Unlisted resources do not appear on profile
26
+ * pages or elsewhere, but you can link to them.
27
27
  */
28
28
  privacy: 'public' | 'unlisted' | 'private';
29
29
  /**
@@ -36,7 +36,7 @@ export interface BasicVal {
36
36
  */
37
37
  type: 'interval' | 'http' | 'express' | 'email' | 'script' | 'rpc' | 'httpnext';
38
38
  /**
39
- * The URL of this val on the Val Town website
39
+ * The URL of this resource on the Val Town website
40
40
  */
41
41
  url: string;
42
42
  /**
@@ -98,8 +98,8 @@ export interface ExtendedVal {
98
98
  */
99
99
  name: string;
100
100
  /**
101
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
102
- * elsewhere, but you can link to them.
101
+ * This resource's privacy setting. Unlisted resources do not appear on profile
102
+ * pages or elsewhere, but you can link to them.
103
103
  */
104
104
  privacy: 'public' | 'unlisted' | 'private';
105
105
  /**
@@ -117,7 +117,7 @@ export interface ExtendedVal {
117
117
  */
118
118
  type: 'interval' | 'http' | 'express' | 'email' | 'script' | 'rpc' | 'httpnext';
119
119
  /**
120
- * The URL of this val on the Val Town website
120
+ * The URL of this resource on the Val Town website
121
121
  */
122
122
  url: string;
123
123
  /**
@@ -54,8 +54,8 @@ export interface ValCreateParams {
54
54
  */
55
55
  name?: string;
56
56
  /**
57
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
58
- * elsewhere, but you can link to them.
57
+ * This resource's privacy setting. Unlisted resources do not appear on profile
58
+ * pages or elsewhere, but you can link to them.
59
59
  */
60
60
  privacy?: 'public' | 'unlisted' | 'private';
61
61
  /**
@@ -74,8 +74,8 @@ export interface ValUpdateParams {
74
74
  */
75
75
  name?: string;
76
76
  /**
77
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
78
- * elsewhere, but you can link to them.
77
+ * This resource's privacy setting. Unlisted resources do not appear on profile
78
+ * pages or elsewhere, but you can link to them.
79
79
  */
80
80
  privacy?: 'public' | 'unlisted' | 'private';
81
81
  /**
@@ -43,8 +43,8 @@ export interface VersionCreateParams {
43
43
  */
44
44
  name?: string;
45
45
  /**
46
- * This val’s privacy setting. Unlisted vals do not appear on profile pages or
47
- * elsewhere, but you can link to them.
46
+ * This resource's privacy setting. Unlisted resources do not appear on profile
47
+ * pages or elsewhere, but you can link to them.
48
48
  */
49
49
  privacy?: 'public' | 'unlisted' | 'private';
50
50
  /**
package/src/core.ts CHANGED
@@ -280,6 +280,7 @@ export abstract class APIClient {
280
280
  options: FinalRequestOptions<Req>,
281
281
  { retryCount = 0 }: { retryCount?: number } = {},
282
282
  ): { req: RequestInit; url: string; timeout: number } {
283
+ options = { ...options };
283
284
  const { method, path, query, headers: headers = {} } = options;
284
285
 
285
286
  const body =
@@ -292,9 +293,9 @@ export abstract class APIClient {
292
293
 
293
294
  const url = this.buildURL(path!, query);
294
295
  if ('timeout' in options) validatePositiveInteger('timeout', options.timeout);
295
- const timeout = options.timeout ?? this.timeout;
296
+ options.timeout = options.timeout ?? this.timeout;
296
297
  const httpAgent = options.httpAgent ?? this.httpAgent ?? getDefaultAgent(url);
297
- const minAgentTimeout = timeout + 1000;
298
+ const minAgentTimeout = options.timeout + 1000;
298
299
  if (
299
300
  typeof (httpAgent as any)?.options?.timeout === 'number' &&
300
301
  minAgentTimeout > ((httpAgent as any).options.timeout ?? 0)
@@ -323,7 +324,7 @@ export abstract class APIClient {
323
324
  signal: options.signal ?? null,
324
325
  };
325
326
 
326
- return { req, url, timeout };
327
+ return { req, url, timeout: options.timeout };
327
328
  }
328
329
 
329
330
  private buildHeaders({
@@ -351,15 +352,22 @@ export abstract class APIClient {
351
352
  delete reqHeaders['content-type'];
352
353
  }
353
354
 
354
- // Don't set the retry count header if it was already set or removed through default headers or by the
355
- // caller. We check `defaultHeaders` and `headers`, which can contain nulls, instead of `reqHeaders` to
356
- // account for the removal case.
355
+ // Don't set theses headers if they were already set or removed through default headers or by the caller.
356
+ // We check `defaultHeaders` and `headers`, which can contain nulls, instead of `reqHeaders` to account
357
+ // for the removal case.
357
358
  if (
358
359
  getHeader(defaultHeaders, 'x-stainless-retry-count') === undefined &&
359
360
  getHeader(headers, 'x-stainless-retry-count') === undefined
360
361
  ) {
361
362
  reqHeaders['x-stainless-retry-count'] = String(retryCount);
362
363
  }
364
+ if (
365
+ getHeader(defaultHeaders, 'x-stainless-timeout') === undefined &&
366
+ getHeader(headers, 'x-stainless-timeout') === undefined &&
367
+ options.timeout
368
+ ) {
369
+ reqHeaders['x-stainless-timeout'] = String(options.timeout);
370
+ }
363
371
 
364
372
  this.validateHeaders(reqHeaders, headers);
365
373