@tryfinch/finch-api 1.0.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 (266) hide show
  1. package/.eslintrc.js +10 -0
  2. package/.github/workflows/publish-npm.yml +28 -0
  3. package/.github/workflows/release-doctor.yml +20 -0
  4. package/.github/workflows/release.yml +38 -0
  5. package/.prettierrc +6 -0
  6. package/.release-please-manifest.json +3 -0
  7. package/.stats.yml +1 -0
  8. package/CHANGELOG.md +7 -0
  9. package/LICENSE +201 -0
  10. package/README.md +220 -0
  11. package/api.md +186 -0
  12. package/bin/check-release-environment +25 -0
  13. package/bin/check-test-server +50 -0
  14. package/bin/publish-npm +6 -0
  15. package/build +12 -0
  16. package/check-version.ts +18 -0
  17. package/core.ts +926 -0
  18. package/dist/cjs/check-version.d.ts +2 -0
  19. package/dist/cjs/check-version.d.ts.map +1 -0
  20. package/dist/cjs/check-version.js +23 -0
  21. package/dist/cjs/check-version.js.map +1 -0
  22. package/dist/cjs/core.d.ts +268 -0
  23. package/dist/cjs/core.d.ts.map +1 -0
  24. package/dist/cjs/core.js +994 -0
  25. package/dist/cjs/core.js.map +1 -0
  26. package/dist/cjs/fetch-polyfill.d.ts +6 -0
  27. package/dist/cjs/fetch-polyfill.d.ts.map +1 -0
  28. package/dist/cjs/fetch-polyfill.js +57 -0
  29. package/dist/cjs/fetch-polyfill.js.map +1 -0
  30. package/dist/cjs/index.d.ts +115 -0
  31. package/dist/cjs/index.d.ts.map +1 -0
  32. package/dist/cjs/index.js +198 -0
  33. package/dist/cjs/index.js.map +1 -0
  34. package/dist/cjs/pagination.d.ts +166 -0
  35. package/dist/cjs/pagination.d.ts.map +1 -0
  36. package/dist/cjs/pagination.js +215 -0
  37. package/dist/cjs/pagination.js.map +1 -0
  38. package/dist/cjs/resource.d.ts +12 -0
  39. package/dist/cjs/resource.d.ts.map +1 -0
  40. package/dist/cjs/resource.js +17 -0
  41. package/dist/cjs/resource.js.map +1 -0
  42. package/dist/cjs/resources/account.d.ts +49 -0
  43. package/dist/cjs/resources/account.d.ts.map +1 -0
  44. package/dist/cjs/resources/account.js +23 -0
  45. package/dist/cjs/resources/account.js.map +1 -0
  46. package/dist/cjs/resources/ats/applications.d.ts +31 -0
  47. package/dist/cjs/resources/ats/applications.d.ts.map +1 -0
  48. package/dist/cjs/resources/ats/applications.js +27 -0
  49. package/dist/cjs/resources/ats/applications.js.map +1 -0
  50. package/dist/cjs/resources/ats/ats.d.ts +14 -0
  51. package/dist/cjs/resources/ats/ats.d.ts.map +1 -0
  52. package/dist/cjs/resources/ats/ats.js +22 -0
  53. package/dist/cjs/resources/ats/ats.js.map +1 -0
  54. package/dist/cjs/resources/ats/candidates.d.ts +45 -0
  55. package/dist/cjs/resources/ats/candidates.d.ts.map +1 -0
  56. package/dist/cjs/resources/ats/candidates.js +24 -0
  57. package/dist/cjs/resources/ats/candidates.js.map +1 -0
  58. package/dist/cjs/resources/ats/index.d.ts +6 -0
  59. package/dist/cjs/resources/ats/index.d.ts.map +1 -0
  60. package/dist/cjs/resources/ats/index.js +12 -0
  61. package/dist/cjs/resources/ats/index.js.map +1 -0
  62. package/dist/cjs/resources/ats/jobs.d.ts +42 -0
  63. package/dist/cjs/resources/ats/jobs.d.ts.map +1 -0
  64. package/dist/cjs/resources/ats/jobs.js +23 -0
  65. package/dist/cjs/resources/ats/jobs.js.map +1 -0
  66. package/dist/cjs/resources/ats/offers.d.ts +34 -0
  67. package/dist/cjs/resources/ats/offers.d.ts.map +1 -0
  68. package/dist/cjs/resources/ats/offers.js +23 -0
  69. package/dist/cjs/resources/ats/offers.js.map +1 -0
  70. package/dist/cjs/resources/ats/stages.d.ts +23 -0
  71. package/dist/cjs/resources/ats/stages.d.ts.map +1 -0
  72. package/dist/cjs/resources/ats/stages.js +21 -0
  73. package/dist/cjs/resources/ats/stages.js.map +1 -0
  74. package/dist/cjs/resources/hris/benefits/benefits.d.ts +155 -0
  75. package/dist/cjs/resources/hris/benefits/benefits.d.ts.map +1 -0
  76. package/dist/cjs/resources/hris/benefits/benefits.js +57 -0
  77. package/dist/cjs/resources/hris/benefits/benefits.js.map +1 -0
  78. package/dist/cjs/resources/hris/benefits/index.d.ts +26 -0
  79. package/dist/cjs/resources/hris/benefits/index.d.ts.map +1 -0
  80. package/dist/cjs/resources/hris/benefits/index.js +42 -0
  81. package/dist/cjs/resources/hris/benefits/index.js.map +1 -0
  82. package/dist/cjs/resources/hris/benefits/individuals.d.ts +163 -0
  83. package/dist/cjs/resources/hris/benefits/individuals.d.ts.map +1 -0
  84. package/dist/cjs/resources/hris/benefits/individuals.js +68 -0
  85. package/dist/cjs/resources/hris/benefits/individuals.js.map +1 -0
  86. package/dist/cjs/resources/hris/company.d.ts +104 -0
  87. package/dist/cjs/resources/hris/company.d.ts.map +1 -0
  88. package/dist/cjs/resources/hris/company.js +15 -0
  89. package/dist/cjs/resources/hris/company.js.map +1 -0
  90. package/dist/cjs/resources/hris/directory.d.ts +65 -0
  91. package/dist/cjs/resources/hris/directory.d.ts.map +1 -0
  92. package/dist/cjs/resources/hris/directory.js +21 -0
  93. package/dist/cjs/resources/hris/directory.js.map +1 -0
  94. package/dist/cjs/resources/hris/hris.d.ts +95 -0
  95. package/dist/cjs/resources/hris/hris.d.ts.map +1 -0
  96. package/dist/cjs/resources/hris/hris.js +24 -0
  97. package/dist/cjs/resources/hris/hris.js.map +1 -0
  98. package/dist/cjs/resources/hris/index.d.ts +31 -0
  99. package/dist/cjs/resources/hris/index.d.ts.map +1 -0
  100. package/dist/cjs/resources/hris/index.js +44 -0
  101. package/dist/cjs/resources/hris/index.js.map +1 -0
  102. package/dist/cjs/resources/hris/individuals/employment-data.d.ts +151 -0
  103. package/dist/cjs/resources/hris/individuals/employment-data.d.ts.map +1 -0
  104. package/dist/cjs/resources/hris/individuals/employment-data.js +26 -0
  105. package/dist/cjs/resources/hris/individuals/employment-data.js.map +1 -0
  106. package/dist/cjs/resources/hris/individuals/index.d.ts +13 -0
  107. package/dist/cjs/resources/hris/individuals/index.d.ts.map +1 -0
  108. package/dist/cjs/resources/hris/individuals/index.js +28 -0
  109. package/dist/cjs/resources/hris/individuals/index.js.map +1 -0
  110. package/dist/cjs/resources/hris/individuals/individuals.d.ts +86 -0
  111. package/dist/cjs/resources/hris/individuals/individuals.d.ts.map +1 -0
  112. package/dist/cjs/resources/hris/individuals/individuals.js +28 -0
  113. package/dist/cjs/resources/hris/individuals/individuals.js.map +1 -0
  114. package/dist/cjs/resources/hris/pay-statements.d.ts +201 -0
  115. package/dist/cjs/resources/hris/pay-statements.d.ts.map +1 -0
  116. package/dist/cjs/resources/hris/pay-statements.js +25 -0
  117. package/dist/cjs/resources/hris/pay-statements.js.map +1 -0
  118. package/dist/cjs/resources/hris/payments.d.ts +54 -0
  119. package/dist/cjs/resources/hris/payments.d.ts.map +1 -0
  120. package/dist/cjs/resources/hris/payments.js +18 -0
  121. package/dist/cjs/resources/hris/payments.js.map +1 -0
  122. package/dist/cjs/resources/index.d.ts +5 -0
  123. package/dist/cjs/resources/index.d.ts.map +1 -0
  124. package/dist/cjs/resources/index.js +39 -0
  125. package/dist/cjs/resources/index.js.map +1 -0
  126. package/dist/cjs/resources/providers.d.ts +46 -0
  127. package/dist/cjs/resources/providers.d.ts.map +1 -0
  128. package/dist/cjs/resources/providers.js +18 -0
  129. package/dist/cjs/resources/providers.js.map +1 -0
  130. package/dist/cjs/resources/top-level.d.ts +2 -0
  131. package/dist/cjs/resources/top-level.d.ts.map +1 -0
  132. package/dist/cjs/resources/top-level.js +4 -0
  133. package/dist/cjs/resources/top-level.js.map +1 -0
  134. package/dist/cjs/tests/api-resources/account.test.d.ts +2 -0
  135. package/dist/cjs/tests/api-resources/account.test.d.ts.map +1 -0
  136. package/dist/cjs/tests/api-resources/account.test.js +66 -0
  137. package/dist/cjs/tests/api-resources/account.test.js.map +1 -0
  138. package/dist/cjs/tests/api-resources/ats/applications.test.d.ts +2 -0
  139. package/dist/cjs/tests/api-resources/ats/applications.test.d.ts.map +1 -0
  140. package/dist/cjs/tests/api-resources/ats/applications.test.js +73 -0
  141. package/dist/cjs/tests/api-resources/ats/applications.test.js.map +1 -0
  142. package/dist/cjs/tests/api-resources/ats/candidates.test.d.ts +2 -0
  143. package/dist/cjs/tests/api-resources/ats/candidates.test.d.ts.map +1 -0
  144. package/dist/cjs/tests/api-resources/ats/candidates.test.js +73 -0
  145. package/dist/cjs/tests/api-resources/ats/candidates.test.js.map +1 -0
  146. package/dist/cjs/tests/api-resources/ats/jobs.test.d.ts +2 -0
  147. package/dist/cjs/tests/api-resources/ats/jobs.test.d.ts.map +1 -0
  148. package/dist/cjs/tests/api-resources/ats/jobs.test.js +73 -0
  149. package/dist/cjs/tests/api-resources/ats/jobs.test.js.map +1 -0
  150. package/dist/cjs/tests/api-resources/ats/offers.test.d.ts +2 -0
  151. package/dist/cjs/tests/api-resources/ats/offers.test.d.ts.map +1 -0
  152. package/dist/cjs/tests/api-resources/ats/offers.test.js +73 -0
  153. package/dist/cjs/tests/api-resources/ats/offers.test.js.map +1 -0
  154. package/dist/cjs/tests/api-resources/ats/stages.test.d.ts +2 -0
  155. package/dist/cjs/tests/api-resources/ats/stages.test.d.ts.map +1 -0
  156. package/dist/cjs/tests/api-resources/ats/stages.test.js +55 -0
  157. package/dist/cjs/tests/api-resources/ats/stages.test.js.map +1 -0
  158. package/dist/cjs/tests/api-resources/hris/benefits/benefits.test.d.ts +2 -0
  159. package/dist/cjs/tests/api-resources/hris/benefits/benefits.test.d.ts.map +1 -0
  160. package/dist/cjs/tests/api-resources/hris/benefits/benefits.test.js +116 -0
  161. package/dist/cjs/tests/api-resources/hris/benefits/benefits.test.js.map +1 -0
  162. package/dist/cjs/tests/api-resources/hris/benefits/individuals.test.d.ts +2 -0
  163. package/dist/cjs/tests/api-resources/hris/benefits/individuals.test.d.ts.map +1 -0
  164. package/dist/cjs/tests/api-resources/hris/benefits/individuals.test.js +103 -0
  165. package/dist/cjs/tests/api-resources/hris/benefits/individuals.test.js.map +1 -0
  166. package/dist/cjs/tests/api-resources/hris/company.test.d.ts +2 -0
  167. package/dist/cjs/tests/api-resources/hris/company.test.d.ts.map +1 -0
  168. package/dist/cjs/tests/api-resources/hris/company.test.js +55 -0
  169. package/dist/cjs/tests/api-resources/hris/company.test.js.map +1 -0
  170. package/dist/cjs/tests/api-resources/hris/directory.test.d.ts +2 -0
  171. package/dist/cjs/tests/api-resources/hris/directory.test.d.ts.map +1 -0
  172. package/dist/cjs/tests/api-resources/hris/directory.test.js +62 -0
  173. package/dist/cjs/tests/api-resources/hris/directory.test.js.map +1 -0
  174. package/dist/cjs/tests/api-resources/hris/individuals/employment-data.test.d.ts +2 -0
  175. package/dist/cjs/tests/api-resources/hris/individuals/employment-data.test.d.ts.map +1 -0
  176. package/dist/cjs/tests/api-resources/hris/individuals/employment-data.test.js +56 -0
  177. package/dist/cjs/tests/api-resources/hris/individuals/employment-data.test.js.map +1 -0
  178. package/dist/cjs/tests/api-resources/hris/individuals/individuals.test.d.ts +2 -0
  179. package/dist/cjs/tests/api-resources/hris/individuals/individuals.test.d.ts.map +1 -0
  180. package/dist/cjs/tests/api-resources/hris/individuals/individuals.test.js +68 -0
  181. package/dist/cjs/tests/api-resources/hris/individuals/individuals.test.js.map +1 -0
  182. package/dist/cjs/tests/api-resources/hris/pay-statements.test.d.ts +2 -0
  183. package/dist/cjs/tests/api-resources/hris/pay-statements.test.d.ts.map +1 -0
  184. package/dist/cjs/tests/api-resources/hris/pay-statements.test.js +64 -0
  185. package/dist/cjs/tests/api-resources/hris/pay-statements.test.js.map +1 -0
  186. package/dist/cjs/tests/api-resources/hris/payments.test.d.ts +2 -0
  187. package/dist/cjs/tests/api-resources/hris/payments.test.d.ts.map +1 -0
  188. package/dist/cjs/tests/api-resources/hris/payments.test.js +52 -0
  189. package/dist/cjs/tests/api-resources/hris/payments.test.js.map +1 -0
  190. package/dist/cjs/tests/api-resources/providers.test.d.ts +2 -0
  191. package/dist/cjs/tests/api-resources/providers.test.d.ts.map +1 -0
  192. package/dist/cjs/tests/api-resources/providers.test.js +55 -0
  193. package/dist/cjs/tests/api-resources/providers.test.js.map +1 -0
  194. package/dist/cjs/tests/api-resources/top-level.test.d.ts +2 -0
  195. package/dist/cjs/tests/api-resources/top-level.test.d.ts.map +1 -0
  196. package/dist/cjs/tests/api-resources/top-level.test.js +52 -0
  197. package/dist/cjs/tests/api-resources/top-level.test.js.map +1 -0
  198. package/dist/cjs/tests/form.test.d.ts +2 -0
  199. package/dist/cjs/tests/form.test.d.ts.map +1 -0
  200. package/dist/cjs/tests/form.test.js +61 -0
  201. package/dist/cjs/tests/form.test.js.map +1 -0
  202. package/dist/cjs/tests/index.test.d.ts +2 -0
  203. package/dist/cjs/tests/index.test.d.ts.map +1 -0
  204. package/dist/cjs/tests/index.test.js +34 -0
  205. package/dist/cjs/tests/index.test.js.map +1 -0
  206. package/dist/cjs/tests/responses.test.d.ts +2 -0
  207. package/dist/cjs/tests/responses.test.d.ts.map +1 -0
  208. package/dist/cjs/tests/responses.test.js +60 -0
  209. package/dist/cjs/tests/responses.test.js.map +1 -0
  210. package/dist/cjs/version.d.ts +2 -0
  211. package/dist/cjs/version.d.ts.map +1 -0
  212. package/dist/cjs/version.js +5 -0
  213. package/dist/cjs/version.js.map +1 -0
  214. package/fetch-polyfill.ts +69 -0
  215. package/index.ts +212 -0
  216. package/jest.config.js +8 -0
  217. package/package.json +47 -0
  218. package/pagination.ts +401 -0
  219. package/release-please-config.json +12 -0
  220. package/resource.ts +24 -0
  221. package/resources/account.ts +63 -0
  222. package/resources/ats/applications.ts +55 -0
  223. package/resources/ats/ats.ts +16 -0
  224. package/resources/ats/candidates.ts +74 -0
  225. package/resources/ats/index.ts +7 -0
  226. package/resources/ats/jobs.ts +70 -0
  227. package/resources/ats/offers.ts +57 -0
  228. package/resources/ats/stages.ts +31 -0
  229. package/resources/hris/benefits/benefits.ts +214 -0
  230. package/resources/hris/benefits/index.ts +27 -0
  231. package/resources/hris/benefits/individuals.ts +234 -0
  232. package/resources/hris/company.ts +127 -0
  233. package/resources/hris/directory.ts +87 -0
  234. package/resources/hris/hris.ts +113 -0
  235. package/resources/hris/index.ts +32 -0
  236. package/resources/hris/individuals/employment-data.ts +188 -0
  237. package/resources/hris/individuals/index.ts +14 -0
  238. package/resources/hris/individuals/individuals.ts +128 -0
  239. package/resources/hris/pay-statements.ts +251 -0
  240. package/resources/hris/payments.ts +73 -0
  241. package/resources/index.ts +6 -0
  242. package/resources/providers.ts +59 -0
  243. package/resources/top-level.ts +3 -0
  244. package/tests/api-resources/account.test.ts +29 -0
  245. package/tests/api-resources/ats/applications.test.ts +36 -0
  246. package/tests/api-resources/ats/candidates.test.ts +36 -0
  247. package/tests/api-resources/ats/jobs.test.ts +36 -0
  248. package/tests/api-resources/ats/offers.test.ts +36 -0
  249. package/tests/api-resources/ats/stages.test.ts +18 -0
  250. package/tests/api-resources/hris/benefits/benefits.test.ts +79 -0
  251. package/tests/api-resources/hris/benefits/individuals.test.ts +66 -0
  252. package/tests/api-resources/hris/company.test.ts +18 -0
  253. package/tests/api-resources/hris/directory.test.ts +25 -0
  254. package/tests/api-resources/hris/individuals/employment-data.test.ts +19 -0
  255. package/tests/api-resources/hris/individuals/individuals.test.ts +31 -0
  256. package/tests/api-resources/hris/pay-statements.test.ts +27 -0
  257. package/tests/api-resources/hris/payments.test.ts +15 -0
  258. package/tests/api-resources/providers.test.ts +18 -0
  259. package/tests/api-resources/top-level.test.ts +15 -0
  260. package/tests/form.test.ts +27 -0
  261. package/tests/index.test.ts +34 -0
  262. package/tests/responses.test.ts +25 -0
  263. package/tsconfig.cjs.json +8 -0
  264. package/tsconfig.json +39 -0
  265. package/typings/digest-fetch/index.d.ts +33 -0
  266. package/version.ts +1 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=check-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-version.d.ts","sourceRoot":"","sources":["../../check-version.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+ var __importDefault =
3
+ (this && this.__importDefault) ||
4
+ function (mod) {
5
+ return mod && mod.__esModule ? mod : { default: mod };
6
+ };
7
+ Object.defineProperty(exports, '__esModule', { value: true });
8
+ const fs_1 = __importDefault(require('fs'));
9
+ const main = () => {
10
+ const pkg = JSON.parse(fs_1.default.readFileSync('package.json').toString());
11
+ const version = pkg['version'];
12
+ if (!version) throw 'The version property is not set in the package.json file';
13
+ if (typeof version !== 'string') {
14
+ throw `Unexpected type for the package.json version field; got ${typeof version}, expected string`;
15
+ }
16
+ const contents = fs_1.default.readFileSync('version.ts', 'utf8');
17
+ const output = contents.replace(/(export const VERSION = ')(.*)(')/g, `$1${version}$3`);
18
+ fs_1.default.writeFileSync('version.ts', output);
19
+ };
20
+ if (require.main === module) {
21
+ main();
22
+ }
23
+ //# sourceMappingURL=check-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-version.js","sourceRoot":"","sources":["../../check-version.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AAEpB,MAAM,IAAI,GAAG,GAAG,EAAE;IAChB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAA4B,CAAC;IAC9F,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,MAAM,0DAA0D,CAAC;IAC/E,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,MAAM,2DAA2D,OAAO,OAAO,mBAAmB,CAAC;KACpG;IAED,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,oCAAoC,EAAE,KAAK,OAAO,IAAI,CAAC,CAAC;IACxF,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,IAAI,EAAE,CAAC;CACR"}
@@ -0,0 +1,268 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ /// <reference types="node" />
5
+ import qs from 'qs';
6
+ import type { Agent } from 'http';
7
+ import type { RequestInfo, RequestInit, Response } from 'node-fetch';
8
+ import { Readable } from 'stream';
9
+ import { Fetch } from './fetch-polyfill';
10
+ export declare abstract class APIClient {
11
+ baseURL: string;
12
+ maxRetries: number;
13
+ timeout: number;
14
+ httpAgent: Agent | undefined;
15
+ private fetch;
16
+ protected idempotencyHeader?: string;
17
+ constructor({
18
+ baseURL,
19
+ maxRetries,
20
+ timeout, // 60s
21
+ httpAgent,
22
+ }: {
23
+ baseURL: string;
24
+ maxRetries?: number;
25
+ timeout: number | undefined;
26
+ httpAgent: Agent | undefined;
27
+ });
28
+ protected authHeaders(): Headers;
29
+ /**
30
+ * Override this to add your own default headers, for example:
31
+ *
32
+ * {
33
+ * ...super.defaultHeaders(),
34
+ * Authorization: 'Bearer 123',
35
+ * }
36
+ */
37
+ protected defaultHeaders(): Headers;
38
+ /**
39
+ * Override this to add your own headers validation:
40
+ */
41
+ protected validateHeaders(headers: Headers, customHeaders: Headers): void;
42
+ /**
43
+ * Override this to add your own qs.stringify options, for example:
44
+ *
45
+ * {
46
+ * ...super.qsOptions(),
47
+ * strictNullHandling: true,
48
+ * }
49
+ */
50
+ protected qsOptions(): qs.IStringifyOptions | undefined;
51
+ protected defaultIdempotencyKey(): string;
52
+ get<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
53
+ post<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
54
+ patch<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
55
+ put<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
56
+ delete<Req extends {}, Rsp>(path: string, opts?: RequestOptions<Req>): Promise<Rsp>;
57
+ getAPIList<Item, PageClass extends AbstractPage<Item> = AbstractPage<Item>>(
58
+ path: string,
59
+ Page: new (...args: any[]) => PageClass,
60
+ opts?: RequestOptions<any>,
61
+ ): PagePromise<PageClass>;
62
+ buildRequest<Req extends {}>(
63
+ options: FinalRequestOptions<Req>,
64
+ ): {
65
+ req: RequestInit;
66
+ url: string;
67
+ timeout: number;
68
+ };
69
+ protected makeStatusError(
70
+ status: number | undefined,
71
+ error: Object | undefined,
72
+ message: string | undefined,
73
+ headers: Headers | undefined,
74
+ ): APIError;
75
+ request<Req extends {}, Rsp>(
76
+ options: FinalRequestOptions<Req>,
77
+ retriesRemaining?: number,
78
+ ): Promise<APIResponse<Rsp>>;
79
+ requestAPIList<Item = unknown, PageClass extends AbstractPage<Item> = AbstractPage<Item>>(
80
+ Page: new (...args: ConstructorParameters<typeof AbstractPage>) => PageClass,
81
+ options: FinalRequestOptions,
82
+ ): PagePromise<PageClass>;
83
+ buildURL<Req>(path: string, query: Req | undefined): string;
84
+ fetchWithTimeout(
85
+ url: RequestInfo,
86
+ { signal, ...options }: RequestInit | undefined,
87
+ ms: number,
88
+ controller: AbortController,
89
+ ): Promise<Response>;
90
+ protected getRequestClient(): RequestClient;
91
+ private shouldRetry;
92
+ private retryRequest;
93
+ private calculateRetryTimeoutSeconds;
94
+ private getUserAgent;
95
+ private debug;
96
+ }
97
+ export declare class APIResource {
98
+ protected client: APIClient;
99
+ constructor(client: APIClient);
100
+ protected get: APIClient['get'];
101
+ protected post: APIClient['post'];
102
+ protected patch: APIClient['patch'];
103
+ protected put: APIClient['put'];
104
+ protected delete: APIClient['delete'];
105
+ protected getAPIList: APIClient['getAPIList'];
106
+ }
107
+ export type PageInfo =
108
+ | {
109
+ url: URL;
110
+ }
111
+ | {
112
+ params: Record<string, unknown> | null;
113
+ };
114
+ export declare abstract class AbstractPage<Item> implements AsyncIterable<Item> {
115
+ #private;
116
+ protected options: FinalRequestOptions;
117
+ constructor(client: APIClient, response: APIResponse<unknown>, options: FinalRequestOptions);
118
+ /**
119
+ * @deprecated Use nextPageInfo instead
120
+ */
121
+ abstract nextPageParams(): Partial<Record<string, unknown>> | null;
122
+ abstract nextPageInfo(): PageInfo | null;
123
+ abstract getPaginatedItems(): Item[];
124
+ hasNextPage(): boolean;
125
+ getNextPage(): Promise<AbstractPage<Item>>;
126
+ iterPages(): AsyncGenerator<AbstractPage<Item>, void, unknown>;
127
+ [Symbol.asyncIterator](): AsyncGenerator<Awaited<Item>, void, unknown>;
128
+ }
129
+ export declare class PagePromise<
130
+ PageClass extends AbstractPage<Item>,
131
+ Item = ReturnType<PageClass['getPaginatedItems']>[number],
132
+ >
133
+ extends Promise<PageClass>
134
+ implements AsyncIterable<Item>
135
+ {
136
+ /**
137
+ * This subclass of Promise will resolve to an instantiated Page once the request completes.
138
+ */
139
+ constructor(
140
+ client: APIClient,
141
+ requestPromise: Promise<APIResponse<unknown>>,
142
+ options: FinalRequestOptions,
143
+ Page: new (...args: ConstructorParameters<typeof AbstractPage>) => PageClass,
144
+ );
145
+ /**
146
+ * Enable subclassing Promise.
147
+ * Ref: https://stackoverflow.com/a/60328122
148
+ */
149
+ static get [Symbol.species](): PromiseConstructor;
150
+ /**
151
+ * Allow auto-paginating iteration on an unawaited list call, eg:
152
+ *
153
+ * for await (const item of client.items.list()) {
154
+ * console.log(item)
155
+ * }
156
+ */
157
+ [Symbol.asyncIterator](): AsyncGenerator<Awaited<Item>, void, unknown>;
158
+ }
159
+ export declare class Stream<Item> implements AsyncIterable<Item>, APIResponse<Stream<Item>> {
160
+ response: Response;
161
+ responseHeaders: Headers;
162
+ controller: AbortController;
163
+ constructor(response: Response, controller: AbortController);
164
+ [Symbol.asyncIterator](): AsyncIterator<Item, any, undefined>;
165
+ }
166
+ export declare const createResponseHeaders: (
167
+ headers: Awaited<ReturnType<Fetch>>['headers'],
168
+ ) => Record<string, string>;
169
+ type HTTPMethod = 'get' | 'post' | 'put' | 'patch' | 'delete';
170
+ export type RequestClient = {
171
+ fetch: Fetch;
172
+ };
173
+ export type Headers = Record<string, string | null | undefined>;
174
+ export type KeysEnum<T> = {
175
+ [P in keyof Required<T>]: true;
176
+ };
177
+ export type RequestOptions<Req extends {} = Record<string, unknown> | Readable> = {
178
+ method?: HTTPMethod;
179
+ path?: string;
180
+ query?: Req | undefined;
181
+ body?: Req | undefined;
182
+ headers?: Headers | undefined;
183
+ maxRetries?: number;
184
+ stream?: boolean | undefined;
185
+ timeout?: number;
186
+ httpAgent?: Agent;
187
+ idempotencyKey?: string;
188
+ };
189
+ export declare const isRequestOptions: (
190
+ obj: unknown,
191
+ ) => obj is RequestOptions<Record<string, unknown> | Readable>;
192
+ export type FinalRequestOptions<Req extends {} = Record<string, unknown> | Readable> = RequestOptions<Req> & {
193
+ method: HTTPMethod;
194
+ path: string;
195
+ };
196
+ export type APIResponse<T> = T & {
197
+ responseHeaders: Headers;
198
+ };
199
+ export declare class APIError extends Error {
200
+ readonly status: number | undefined;
201
+ readonly headers: Headers | undefined;
202
+ readonly error: Object | undefined;
203
+ constructor(
204
+ status: number | undefined,
205
+ error: Object | undefined,
206
+ message: string | undefined,
207
+ headers: Headers | undefined,
208
+ );
209
+ static generate(
210
+ status: number | undefined,
211
+ error: Object | undefined,
212
+ message: string | undefined,
213
+ headers: Headers | undefined,
214
+ ): APIError;
215
+ }
216
+ export declare class BadRequestError extends APIError {
217
+ readonly status: 400;
218
+ }
219
+ export declare class AuthenticationError extends APIError {
220
+ readonly status: 401;
221
+ }
222
+ export declare class PermissionDeniedError extends APIError {
223
+ readonly status: 403;
224
+ }
225
+ export declare class NotFoundError extends APIError {
226
+ readonly status: 404;
227
+ }
228
+ export declare class ConflictError extends APIError {
229
+ readonly status: 409;
230
+ }
231
+ export declare class UnprocessableEntityError extends APIError {
232
+ readonly status: 422;
233
+ }
234
+ export declare class RateLimitError extends APIError {
235
+ readonly status: 429;
236
+ }
237
+ export declare class InternalServerError extends APIError {}
238
+ export declare class APIConnectionError extends APIError {
239
+ readonly status: undefined;
240
+ constructor({ message, cause }: { message?: string; cause?: Error | undefined });
241
+ }
242
+ export declare class APIConnectionTimeoutError extends APIConnectionError {
243
+ constructor();
244
+ }
245
+ /**
246
+ * Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
247
+ * Otherwise returns the request as is.
248
+ */
249
+ export declare const maybeMultipartFormRequestOptions: <T extends {} = Record<string, unknown>>(
250
+ opts: RequestOptions<T>,
251
+ ) => RequestOptions<Readable | T>;
252
+ export declare const multipartFormRequestOptions: <T extends {} = Record<string, unknown>>(
253
+ opts: RequestOptions<T>,
254
+ ) => RequestOptions<Readable | T>;
255
+ export declare const ensurePresent: <T>(value: T | null | undefined) => T;
256
+ export declare const coerceInteger: (value: unknown) => number;
257
+ export declare const coerceFloat: (value: unknown) => number;
258
+ export declare const coerceBoolean: (value: unknown) => boolean;
259
+ export declare function isEmptyObj(obj: Object | null | undefined): boolean;
260
+ export declare function hasOwn(obj: Object, key: string): boolean;
261
+ export interface HeadersProtocol {
262
+ get: (header: string) => string | null | undefined;
263
+ }
264
+ export type HeadersLike = Record<string, string | string[] | undefined> | HeadersProtocol;
265
+ export declare const isHeadersProtocol: (headers: any) => headers is HeadersProtocol;
266
+ export declare const getHeader: (headers: HeadersLike, key: string) => string | null | undefined;
267
+ export {};
268
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../core.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGrE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,EAAE,KAAK,EAA6B,MAAM,kBAAkB,CAAC;AAEpE,8BAAsB,SAAS;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;IAE7B,OAAO,CAAC,KAAK,CAAQ;IACrB,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAEzB,EACV,OAAO,EACP,UAAc,EACd,OAAmB,EAAE,MAAM;IAC3B,SAAS,GACV,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QAC5B,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;KAC9B;IASD,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,IAAI,OAAO;IAUnC;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO;IAElE;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,iBAAiB,GAAG,SAAS;IAIvD,SAAS,CAAC,qBAAqB,IAAI,MAAM;IAIzC,GAAG,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAGhF,IAAI,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAGjF,KAAK,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAGlF,GAAG,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAGhF,MAAM,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAInF,UAAU,CAAC,IAAI,EAAE,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,EACxE,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,SAAS,EACvC,IAAI,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,WAAW,CAAC,SAAS,CAAC;IAIzB,YAAY,CAAC,GAAG,SAAS,EAAE,EACzB,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAChC;QAAE,GAAG,EAAE,WAAW,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAsCrD,SAAS,CAAC,eAAe,CACvB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,OAAO,GAAG,SAAS;IAKxB,OAAO,CAAC,GAAG,SAAS,EAAE,EAAE,GAAG,EAC/B,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,EACjC,gBAAgB,SAAwC,GACvD,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IA6D5B,cAAc,CAAC,IAAI,GAAG,OAAO,EAAE,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,EACtF,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,YAAY,CAAC,KAAK,SAAS,EAC5E,OAAO,EAAE,mBAAmB,GAC3B,WAAW,CAAC,SAAS,CAAC;IAKzB,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,SAAS,GAAG,MAAM;IAUrD,gBAAgB,CACpB,GAAG,EAAE,WAAW,EAChB,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,yBAAkB,EACxC,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,eAAe;IAa7B,SAAS,CAAC,gBAAgB,IAAI,aAAa;IAI3C,OAAO,CAAC,WAAW;YAoBL,YAAY;IAoB1B,OAAO,CAAC,4BAA4B;IAyBpC,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,KAAK;CAKd;AAED,qBAAa,WAAW;IACtB,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC;gBAChB,MAAM,EAAE,SAAS;IAW7B,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;IAChC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,GAAG,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAAE,CAAC;AAEjF,8BAAsB,YAAY,CAAC,IAAI,CAAE,YAAW,aAAa,CAAC,IAAI,CAAC;;IAErE,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBAE3B,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,mBAAmB;IAK3F;;OAEG;IACH,QAAQ,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI;IAClE,QAAQ,CAAC,YAAY,IAAI,QAAQ,GAAG,IAAI;IAExC,QAAQ,CAAC,iBAAiB,IAAI,IAAI,EAAE;IAEpC,WAAW,IAAI,OAAO;IAMhB,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAqBzC,SAAS;IAUT,CAAC,MAAM,CAAC,aAAa,CAAC;CAO9B;AAED,qBAAa,WAAW,CACpB,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,EACpC,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAE3D,SAAQ,OAAO,CAAC,SAAS,CACzB,YAAW,aAAa,CAAC,IAAI,CAAC;IAE9B;;OAEG;gBAED,MAAM,EAAE,SAAS,EACjB,cAAc,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAC7C,OAAO,EAAE,mBAAmB,EAC5B,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,qBAAqB,CAAC,OAAO,YAAY,CAAC,KAAK,SAAS;IAO9E;;;OAGG;IACH,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,uBAE1B;IAED;;;;;;OAMG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC;CAM9B;AAED,qBAAa,MAAM,CAAC,IAAI,CAAE,YAAW,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjF,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,eAAe,CAAC;gBAEhB,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe;IAMpD,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC;CAqCrE;AAED,eAAO,MAAM,qBAAqB,YACvB,QAAQ,WAAW,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAC7C,OAAO,MAAM,EAAE,MAAM,CAOvB,CAAC;AAEF,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9D,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAC7C,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAChE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;CAAE,CAAC;AAE7D,MAAM,MAAM,cAAc,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,IAAI;IAChF,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;IACxB,IAAI,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAE9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAmBF,eAAO,MAAM,gBAAgB,QAAS,OAAO,8DAO5C,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG;IAC3G,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG;IAC/B,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGjC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,OAAO,GAAG,SAAS;IAQ9B,MAAM,CAAC,QAAQ,CACb,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,OAAO,GAAG,SAAS;CAe/B;AAED,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,mBAAoB,SAAQ,QAAQ;IAC/C,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,aAAc,SAAQ,QAAQ;IACzC,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,aAAc,SAAQ,QAAQ;IACzC,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,wBAAyB,SAAQ,QAAQ;IACpD,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,SAAkB,MAAM,EAAE,GAAG,CAAO;CACrC;AACD,qBAAa,mBAAoB,SAAQ,QAAQ;CAAG;AAEpD,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,SAAkB,MAAM,EAAE,SAAS,CAAa;gBAEpC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;KAAE;CAMhF;AAED,qBAAa,yBAA0B,SAAQ,kBAAkB;;CAIhE;AA+HD;;;GAGG;AACH,eAAO,MAAM,gCAAgC,mGAc5C,CAAC;AAEF,eAAO,MAAM,2BAA2B,mGAIvC,CAAC;AAmDF,eAAO,MAAM,aAAa,uCAGzB,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,MAK9C,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,OAAO,KAAG,MAK5C,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,OAI9C,CAAC;AAGF,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAIlE;AAGD,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AAaD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACpD;AACD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,eAAe,CAAC;AAE1F,eAAO,MAAM,iBAAiB,YAAa,GAAG,+BAE7C,CAAC;AAEF,eAAO,MAAM,SAAS,YAAa,WAAW,OAAO,MAAM,KAAG,MAAM,GAAG,IAAI,GAAG,SAU7E,CAAC"}