@anthropic-ai/sdk 0.4.4 → 0.5.1

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 (156) hide show
  1. package/_shims/agent.d.ts +9 -0
  2. package/_shims/agent.d.ts.map +1 -0
  3. package/_shims/agent.js +14 -0
  4. package/_shims/agent.js.map +1 -0
  5. package/_shims/agent.mjs +10 -0
  6. package/_shims/agent.mjs.map +1 -0
  7. package/_shims/agent.node.d.ts +7 -0
  8. package/_shims/agent.node.d.ts.map +1 -0
  9. package/_shims/agent.node.js +28 -0
  10. package/_shims/agent.node.js.map +1 -0
  11. package/_shims/agent.node.mjs +16 -0
  12. package/_shims/agent.node.mjs.map +1 -0
  13. package/_shims/fetch.d.ts +52 -0
  14. package/_shims/fetch.js +13 -0
  15. package/_shims/fetch.mjs +15 -0
  16. package/_shims/fetch.node.d.ts +53 -0
  17. package/_shims/fetch.node.js +12 -0
  18. package/_shims/fetch.node.mjs +14 -0
  19. package/_shims/fileFromPath.d.ts +22 -0
  20. package/_shims/fileFromPath.d.ts.map +1 -0
  21. package/_shims/fileFromPath.js +16 -0
  22. package/_shims/fileFromPath.js.map +1 -0
  23. package/_shims/fileFromPath.mjs +12 -0
  24. package/_shims/fileFromPath.mjs.map +1 -0
  25. package/_shims/fileFromPath.node.d.ts +17 -0
  26. package/_shims/fileFromPath.node.d.ts.map +1 -0
  27. package/_shims/fileFromPath.node.js +17 -0
  28. package/_shims/fileFromPath.node.js.map +1 -0
  29. package/_shims/fileFromPath.node.mjs +13 -0
  30. package/_shims/fileFromPath.node.mjs.map +1 -0
  31. package/_shims/formdata.d.ts +43 -0
  32. package/_shims/formdata.js +9 -0
  33. package/_shims/formdata.mjs +11 -0
  34. package/_shims/formdata.node.d.ts +44 -0
  35. package/_shims/formdata.node.js +11 -0
  36. package/_shims/formdata.node.mjs +9 -0
  37. package/_shims/getMultipartRequestOptions.d.ts +10 -0
  38. package/_shims/getMultipartRequestOptions.d.ts.map +1 -0
  39. package/_shims/getMultipartRequestOptions.js +12 -0
  40. package/_shims/getMultipartRequestOptions.js.map +1 -0
  41. package/_shims/getMultipartRequestOptions.mjs +8 -0
  42. package/_shims/getMultipartRequestOptions.mjs.map +1 -0
  43. package/_shims/getMultipartRequestOptions.node.d.ts +10 -0
  44. package/_shims/getMultipartRequestOptions.node.d.ts.map +1 -0
  45. package/_shims/getMultipartRequestOptions.node.js +22 -0
  46. package/_shims/getMultipartRequestOptions.node.js.map +1 -0
  47. package/_shims/getMultipartRequestOptions.node.mjs +18 -0
  48. package/_shims/getMultipartRequestOptions.node.mjs.map +1 -0
  49. package/_shims/node-readable.d.ts +23 -0
  50. package/_shims/node-readable.d.ts.map +1 -0
  51. package/_shims/node-readable.js +11 -0
  52. package/_shims/node-readable.js.map +1 -0
  53. package/_shims/node-readable.mjs +7 -0
  54. package/_shims/node-readable.mjs.map +1 -0
  55. package/_shims/node-readable.node.d.ts +8 -0
  56. package/_shims/node-readable.node.d.ts.map +1 -0
  57. package/_shims/node-readable.node.js +9 -0
  58. package/_shims/node-readable.node.js.map +1 -0
  59. package/_shims/node-readable.node.mjs +5 -0
  60. package/_shims/node-readable.node.mjs.map +1 -0
  61. package/core.d.ts +226 -0
  62. package/core.d.ts.map +1 -0
  63. package/core.js +683 -0
  64. package/core.js.map +1 -0
  65. package/core.mjs +587 -0
  66. package/core.mjs.map +1 -0
  67. package/error.d.ts +48 -0
  68. package/error.d.ts.map +1 -0
  69. package/error.js +126 -0
  70. package/error.js.map +1 -0
  71. package/error.mjs +101 -0
  72. package/error.mjs.map +1 -0
  73. package/index.d.mts +104 -0
  74. package/index.d.ts +104 -0
  75. package/index.d.ts.map +1 -0
  76. package/index.js +177 -0
  77. package/index.js.map +1 -0
  78. package/index.mjs +118 -0
  79. package/index.mjs.map +1 -0
  80. package/package.json +73 -23
  81. package/resource.d.ts +12 -0
  82. package/resource.d.ts.map +1 -0
  83. package/resource.js +17 -0
  84. package/resource.js.map +1 -0
  85. package/resource.mjs +13 -0
  86. package/resource.mjs.map +1 -0
  87. package/resources/completions.d.ts +311 -0
  88. package/resources/completions.d.ts.map +1 -0
  89. package/resources/completions.js +19 -0
  90. package/resources/completions.js.map +1 -0
  91. package/resources/completions.mjs +15 -0
  92. package/resources/completions.mjs.map +1 -0
  93. package/resources/index.d.ts +2 -0
  94. package/resources/index.d.ts.map +1 -0
  95. package/resources/index.js +12 -0
  96. package/resources/index.js.map +1 -0
  97. package/resources/index.mjs +3 -0
  98. package/resources/index.mjs.map +1 -0
  99. package/resources/top-level.d.ts +2 -0
  100. package/resources/top-level.d.ts.map +1 -0
  101. package/resources/top-level.js +4 -0
  102. package/resources/top-level.js.map +1 -0
  103. package/resources/top-level.mjs +3 -0
  104. package/resources/top-level.mjs.map +1 -0
  105. package/src/_shims/agent.node.ts +22 -0
  106. package/src/_shims/agent.ts +12 -0
  107. package/src/_shims/fetch.d.ts +52 -0
  108. package/src/_shims/fetch.js +13 -0
  109. package/src/_shims/fetch.mjs +15 -0
  110. package/src/_shims/fetch.node.d.ts +53 -0
  111. package/src/_shims/fetch.node.js +12 -0
  112. package/src/_shims/fetch.node.mjs +14 -0
  113. package/src/_shims/fileFromPath.node.ts +29 -0
  114. package/src/_shims/fileFromPath.ts +29 -0
  115. package/src/_shims/formdata.d.ts +43 -0
  116. package/src/_shims/formdata.js +9 -0
  117. package/src/_shims/formdata.mjs +11 -0
  118. package/src/_shims/formdata.node.d.ts +44 -0
  119. package/src/_shims/formdata.node.js +11 -0
  120. package/src/_shims/formdata.node.mjs +9 -0
  121. package/src/_shims/getMultipartRequestOptions.node.ts +25 -0
  122. package/src/_shims/getMultipartRequestOptions.ts +14 -0
  123. package/src/_shims/node-readable.node.ts +10 -0
  124. package/src/_shims/node-readable.ts +30 -0
  125. package/src/core.ts +783 -0
  126. package/src/error.ts +115 -0
  127. package/src/index.ts +200 -0
  128. package/src/resource.ts +24 -0
  129. package/src/resources/completions.ts +344 -0
  130. package/src/resources/index.ts +3 -0
  131. package/src/resources/top-level.ts +3 -0
  132. package/src/streaming.ts +220 -0
  133. package/src/uploads.ts +248 -0
  134. package/src/version.ts +1 -0
  135. package/streaming.d.ts +14 -0
  136. package/streaming.d.ts.map +1 -0
  137. package/streaming.js +168 -0
  138. package/streaming.js.map +1 -0
  139. package/streaming.mjs +164 -0
  140. package/streaming.mjs.map +1 -0
  141. package/uploads.d.ts +90 -0
  142. package/uploads.d.ts.map +1 -0
  143. package/uploads.js +207 -0
  144. package/uploads.js.map +1 -0
  145. package/uploads.mjs +174 -0
  146. package/uploads.mjs.map +1 -0
  147. package/version.d.ts +2 -0
  148. package/version.d.ts.map +1 -0
  149. package/version.js +5 -0
  150. package/version.js.map +1 -0
  151. package/version.mjs +2 -0
  152. package/version.mjs.map +1 -0
  153. package/LICENSE +0 -21
  154. package/README.md +0 -34
  155. package/build/src/index.d.ts +0 -39
  156. package/build/src/index.js +0 -116
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Disclaimer: modules in _shims aren't intended to be imported by SDK users.
3
+ */
4
+ import { Readable } from 'node:stream';
5
+ import { FormDataEncoder } from 'form-data-encoder';
6
+ import { MultipartBody } from '../uploads.mjs';
7
+ export async function getMultipartRequestOptions(form, opts) {
8
+ const encoder = new FormDataEncoder(form);
9
+ const readable = Readable.from(encoder);
10
+ const body = new MultipartBody(readable);
11
+ const headers = {
12
+ ...opts.headers,
13
+ ...encoder.headers,
14
+ 'Content-Length': encoder.contentLength,
15
+ };
16
+ return { ...opts, body: body, headers };
17
+ }
18
+ //# sourceMappingURL=getMultipartRequestOptions.node.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMultipartRequestOptions.node.mjs","sourceRoot":"","sources":["../src/_shims/getMultipartRequestOptions.node.ts"],"names":[],"mappings":"AAAA;;GAEG;OAII,EAAE,QAAQ,EAAE,MAAM,aAAa;OAC/B,EAAE,eAAe,EAAE,MAAM,mBAAmB;OAC5C,EAAE,aAAa,EAAE;AAExB,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAc,EACd,IAAuB;IAEvB,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG;QACd,GAAG,IAAI,CAAC,OAAO;QACf,GAAG,OAAO,CAAC,OAAO;QAClB,gBAAgB,EAAE,OAAO,CAAC,aAAa;KACxC,CAAC;IAEF,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAW,EAAE,OAAO,EAAE,CAAC;AACjD,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Disclaimer: modules in _shims aren't intended to be imported by SDK users.
3
+ */
4
+ export declare class Readable {
5
+ readable: boolean;
6
+ readonly readableEnded: boolean;
7
+ readonly readableFlowing: boolean | null;
8
+ readonly readableHighWaterMark: number;
9
+ readonly readableLength: number;
10
+ readonly readableObjectMode: boolean;
11
+ destroyed: boolean;
12
+ read(size?: number): any;
13
+ pause(): this;
14
+ resume(): this;
15
+ isPaused(): boolean;
16
+ destroy(error?: Error): this;
17
+ [Symbol.asyncIterator](): AsyncIterableIterator<any>;
18
+ }
19
+ export declare class FsReadStream extends Readable {
20
+ path: {};
21
+ }
22
+ export declare function isFsReadStream(value: any): value is FsReadStream;
23
+ //# sourceMappingURL=node-readable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.d.ts","sourceRoot":"","sources":["../src/_shims/node-readable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG;IACxB,KAAK,IAAI,IAAI;IACb,MAAM,IAAI,IAAI;IACd,QAAQ,IAAI,OAAO;IACnB,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAC5B,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,qBAAqB,CAAC,GAAG,CAAC;CACrD;AAED,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,QAAQ;IAChD,IAAI,EAAE,EAAE,CAAC;CACV;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,YAAY,CAEhE"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+ /**
3
+ * Disclaimer: modules in _shims aren't intended to be imported by SDK users.
4
+ */
5
+ Object.defineProperty(exports, '__esModule', { value: true });
6
+ exports.isFsReadStream = void 0;
7
+ function isFsReadStream(value) {
8
+ return false;
9
+ }
10
+ exports.isFsReadStream = isFsReadStream;
11
+ //# sourceMappingURL=node-readable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.js","sourceRoot":"","sources":["../src/_shims/node-readable.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAyBH,SAAgB,cAAc,CAAC,KAAU;IACvC,OAAO,KAAK,CAAC;AACf,CAAC;AAFD,wCAEC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Disclaimer: modules in _shims aren't intended to be imported by SDK users.
3
+ */
4
+ export function isFsReadStream(value) {
5
+ return false;
6
+ }
7
+ //# sourceMappingURL=node-readable.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.mjs","sourceRoot":"","sources":["../src/_shims/node-readable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyBH,MAAM,UAAU,cAAc,CAAC,KAAU;IACvC,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Disclaimer: modules in _shims aren't intended to be imported by SDK users.
3
+ */
4
+ export type { Readable } from 'node:stream';
5
+ import { ReadStream as FsReadStream } from 'node:fs';
6
+ export type { FsReadStream };
7
+ export declare function isFsReadStream(value: any): value is FsReadStream;
8
+ //# sourceMappingURL=node-readable.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.node.d.ts","sourceRoot":"","sources":["../src/_shims/node-readable.node.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC;AAE7B,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,YAAY,CAEhE"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ exports.isFsReadStream = void 0;
4
+ const node_fs_1 = require('node:fs');
5
+ function isFsReadStream(value) {
6
+ return value instanceof node_fs_1.ReadStream;
7
+ }
8
+ exports.isFsReadStream = isFsReadStream;
9
+ //# sourceMappingURL=node-readable.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.node.js","sourceRoot":"","sources":["../src/_shims/node-readable.node.ts"],"names":[],"mappings":";;;AAIA,qCAAqD;AAGrD,SAAgB,cAAc,CAAC,KAAU;IACvC,OAAO,KAAK,YAAY,oBAAY,CAAC;AACvC,CAAC;AAFD,wCAEC"}
@@ -0,0 +1,5 @@
1
+ import { ReadStream as FsReadStream } from 'node:fs';
2
+ export function isFsReadStream(value) {
3
+ return value instanceof FsReadStream;
4
+ }
5
+ //# sourceMappingURL=node-readable.node.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-readable.node.mjs","sourceRoot":"","sources":["../src/_shims/node-readable.node.ts"],"names":[],"mappings":"OAIO,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,SAAS;AAGpD,MAAM,UAAU,cAAc,CAAC,KAAU;IACvC,OAAO,KAAK,YAAY,YAAY,CAAC;AACvC,CAAC"}
package/core.d.ts ADDED
@@ -0,0 +1,226 @@
1
+ import * as qs from 'qs';
2
+ import { APIError } from './error.js';
3
+ import type { Readable } from '@anthropic-ai/sdk/_shims/node-readable';
4
+ import { type Agent } from '@anthropic-ai/sdk/_shims/agent';
5
+ import { type RequestInfo, type RequestInit, type Response } from '@anthropic-ai/sdk/_shims/fetch';
6
+ export {
7
+ maybeMultipartFormRequestOptions,
8
+ multipartFormRequestOptions,
9
+ createForm,
10
+ type Uploadable,
11
+ } from './uploads.js';
12
+ type Fetch = (url: RequestInfo, init?: RequestInit) => Promise<Response>;
13
+ export declare abstract class APIClient {
14
+ baseURL: string;
15
+ maxRetries: number;
16
+ timeout: number;
17
+ httpAgent: Agent | undefined;
18
+ private fetch;
19
+ protected idempotencyHeader?: string;
20
+ constructor({
21
+ baseURL,
22
+ maxRetries,
23
+ timeout, // 60s
24
+ httpAgent,
25
+ }: {
26
+ baseURL: string;
27
+ maxRetries?: number | undefined;
28
+ timeout: number | undefined;
29
+ httpAgent: Agent | undefined;
30
+ });
31
+ protected authHeaders(): Headers;
32
+ /**
33
+ * Override this to add your own default headers, for example:
34
+ *
35
+ * {
36
+ * ...super.defaultHeaders(),
37
+ * Authorization: 'Bearer 123',
38
+ * }
39
+ */
40
+ protected defaultHeaders(): Headers;
41
+ protected abstract defaultQuery(): DefaultQuery | undefined;
42
+ /**
43
+ * Override this to add your own headers validation:
44
+ */
45
+ protected validateHeaders(headers: Headers, customHeaders: Headers): void;
46
+ /**
47
+ * Override this to add your own qs.stringify options, for example:
48
+ *
49
+ * {
50
+ * ...super.qsOptions(),
51
+ * strictNullHandling: true,
52
+ * }
53
+ */
54
+ protected qsOptions(): qs.IStringifyOptions | undefined;
55
+ protected defaultIdempotencyKey(): string;
56
+ get<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
57
+ post<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
58
+ patch<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
59
+ put<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
60
+ delete<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
61
+ getAPIList<Item, PageClass extends AbstractPage<Item> = AbstractPage<Item>>(
62
+ path: string,
63
+ Page: new (...args: any[]) => PageClass,
64
+ opts?: RequestOptions<any>,
65
+ ): PagePromise<PageClass>;
66
+ buildRequest<Req extends {}>(
67
+ options: FinalRequestOptions<Req>,
68
+ ): {
69
+ req: RequestInit;
70
+ url: string;
71
+ timeout: number;
72
+ };
73
+ /**
74
+ * Used as a callback for mutating the given `RequestInit` object.
75
+ *
76
+ * This is useful for cases where you want to add certain headers based off of
77
+ * the request properties, e.g. `method` or `url`.
78
+ */
79
+ protected prepareRequest(
80
+ request: RequestInit,
81
+ {
82
+ url,
83
+ }: {
84
+ url: string;
85
+ },
86
+ ): Promise<void>;
87
+ protected makeStatusError(
88
+ status: number | undefined,
89
+ error: Object | undefined,
90
+ message: string | undefined,
91
+ headers: Headers | undefined,
92
+ ): APIError;
93
+ request<Req extends {}, Rsp>(
94
+ options: FinalRequestOptions<Req>,
95
+ retriesRemaining?: number,
96
+ ): Promise<APIResponse<Rsp>>;
97
+ requestAPIList<Item = unknown, PageClass extends AbstractPage<Item> = AbstractPage<Item>>(
98
+ Page: new (...args: ConstructorParameters<typeof AbstractPage>) => PageClass,
99
+ options: FinalRequestOptions,
100
+ ): PagePromise<PageClass>;
101
+ buildURL<Req>(path: string, query: Req | undefined): string;
102
+ fetchWithTimeout(
103
+ url: RequestInfo,
104
+ init: RequestInit | undefined,
105
+ ms: number,
106
+ controller: AbortController,
107
+ ): Promise<Response>;
108
+ protected getRequestClient(): RequestClient;
109
+ private shouldRetry;
110
+ private retryRequest;
111
+ private calculateRetryTimeoutSeconds;
112
+ private getUserAgent;
113
+ private debug;
114
+ }
115
+ export declare class APIResource {
116
+ protected client: APIClient;
117
+ constructor(client: APIClient);
118
+ protected get: APIClient['get'];
119
+ protected post: APIClient['post'];
120
+ protected patch: APIClient['patch'];
121
+ protected put: APIClient['put'];
122
+ protected delete: APIClient['delete'];
123
+ protected getAPIList: APIClient['getAPIList'];
124
+ }
125
+ export type PageInfo =
126
+ | {
127
+ url: URL;
128
+ }
129
+ | {
130
+ params: Record<string, unknown> | null;
131
+ };
132
+ export declare abstract class AbstractPage<Item> implements AsyncIterable<Item> {
133
+ #private;
134
+ protected options: FinalRequestOptions;
135
+ constructor(client: APIClient, response: APIResponse<unknown>, options: FinalRequestOptions);
136
+ /**
137
+ * @deprecated Use nextPageInfo instead
138
+ */
139
+ abstract nextPageParams(): Partial<Record<string, unknown>> | null;
140
+ abstract nextPageInfo(): PageInfo | null;
141
+ abstract getPaginatedItems(): Item[];
142
+ hasNextPage(): boolean;
143
+ getNextPage(): Promise<AbstractPage<Item>>;
144
+ iterPages(): AsyncGenerator<AbstractPage<Item>, void, unknown>;
145
+ [Symbol.asyncIterator](): AsyncGenerator<Awaited<Item>, void, unknown>;
146
+ }
147
+ export declare class PagePromise<
148
+ PageClass extends AbstractPage<Item>,
149
+ Item = ReturnType<PageClass['getPaginatedItems']>[number],
150
+ >
151
+ extends Promise<PageClass>
152
+ implements AsyncIterable<Item>
153
+ {
154
+ /**
155
+ * This subclass of Promise will resolve to an instantiated Page once the request completes.
156
+ */
157
+ constructor(
158
+ client: APIClient,
159
+ requestPromise: Promise<APIResponse<unknown>>,
160
+ options: FinalRequestOptions,
161
+ Page: new (...args: ConstructorParameters<typeof AbstractPage>) => PageClass,
162
+ );
163
+ /**
164
+ * Enable subclassing Promise.
165
+ * Ref: https://stackoverflow.com/a/60328122
166
+ */
167
+ static get [Symbol.species](): PromiseConstructor;
168
+ /**
169
+ * Allow auto-paginating iteration on an unawaited list call, eg:
170
+ *
171
+ * for await (const item of client.items.list()) {
172
+ * console.log(item)
173
+ * }
174
+ */
175
+ [Symbol.asyncIterator](): AsyncGenerator<Awaited<Item>, void, unknown>;
176
+ }
177
+ export declare const createResponseHeaders: (
178
+ headers: Awaited<ReturnType<Fetch>>['headers'],
179
+ ) => Record<string, string>;
180
+ type HTTPMethod = 'get' | 'post' | 'put' | 'patch' | 'delete';
181
+ export type RequestClient = {
182
+ fetch: Fetch;
183
+ };
184
+ export type Headers = Record<string, string | null | undefined>;
185
+ export type DefaultQuery = Record<string, string | undefined>;
186
+ export type KeysEnum<T> = {
187
+ [P in keyof Required<T>]: true;
188
+ };
189
+ export type RequestOptions<Req extends {} = Record<string, unknown> | Readable> = {
190
+ method?: HTTPMethod;
191
+ path?: string;
192
+ query?: Req | undefined;
193
+ body?: Req | undefined;
194
+ headers?: Headers | undefined;
195
+ maxRetries?: number;
196
+ stream?: boolean | undefined;
197
+ timeout?: number;
198
+ httpAgent?: Agent;
199
+ idempotencyKey?: string;
200
+ };
201
+ export declare const isRequestOptions: (
202
+ obj: unknown,
203
+ ) => obj is RequestOptions<Readable | Record<string, unknown>>;
204
+ export type FinalRequestOptions<Req extends {} = Record<string, unknown> | Readable> = RequestOptions<Req> & {
205
+ method: HTTPMethod;
206
+ path: string;
207
+ };
208
+ export type APIResponse<T> = T & {
209
+ /** @deprecated - we plan to add a different way to access raw response information shortly. */
210
+ responseHeaders: Headers;
211
+ };
212
+ export declare const safeJSON: (text: string) => any;
213
+ export declare const castToError: (err: any) => Error;
214
+ export declare const ensurePresent: <T>(value: T | null | undefined) => T;
215
+ export declare const coerceInteger: (value: unknown) => number;
216
+ export declare const coerceFloat: (value: unknown) => number;
217
+ export declare const coerceBoolean: (value: unknown) => boolean;
218
+ export declare function isEmptyObj(obj: Object | null | undefined): boolean;
219
+ export declare function hasOwn(obj: Object, key: string): boolean;
220
+ export interface HeadersProtocol {
221
+ get: (header: string) => string | null | undefined;
222
+ }
223
+ export type HeadersLike = Record<string, string | string[] | undefined> | HeadersProtocol;
224
+ export declare const isHeadersProtocol: (headers: any) => headers is HeadersProtocol;
225
+ export declare const getHeader: (headers: HeadersLike, key: string) => string | null | undefined;
226
+ //# sourceMappingURL=core.d.ts.map
package/core.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["src/core.ts"],"names":[],"mappings":"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"}