boltz-api 0.30.3

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 (579) hide show
  1. package/CHANGELOG.md +708 -0
  2. package/LICENSE +201 -0
  3. package/README.md +466 -0
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +219 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +219 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +522 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +518 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/pagination.d.mts +78 -0
  37. package/core/pagination.d.mts.map +1 -0
  38. package/core/pagination.d.ts +78 -0
  39. package/core/pagination.d.ts.map +1 -0
  40. package/core/pagination.js +154 -0
  41. package/core/pagination.js.map +1 -0
  42. package/core/pagination.mjs +147 -0
  43. package/core/pagination.mjs.map +1 -0
  44. package/core/resource.d.mts +6 -0
  45. package/core/resource.d.mts.map +1 -0
  46. package/core/resource.d.ts +6 -0
  47. package/core/resource.d.ts.map +1 -0
  48. package/core/resource.js +11 -0
  49. package/core/resource.js.map +1 -0
  50. package/core/resource.mjs +7 -0
  51. package/core/resource.mjs.map +1 -0
  52. package/core/uploads.d.mts +3 -0
  53. package/core/uploads.d.mts.map +1 -0
  54. package/core/uploads.d.ts +3 -0
  55. package/core/uploads.d.ts.map +1 -0
  56. package/core/uploads.js +6 -0
  57. package/core/uploads.js.map +1 -0
  58. package/core/uploads.mjs +2 -0
  59. package/core/uploads.mjs.map +1 -0
  60. package/error.d.mts +2 -0
  61. package/error.d.mts.map +1 -0
  62. package/error.d.ts +2 -0
  63. package/error.d.ts.map +1 -0
  64. package/error.js +6 -0
  65. package/error.js.map +1 -0
  66. package/error.mjs +2 -0
  67. package/error.mjs.map +1 -0
  68. package/index.d.mts +7 -0
  69. package/index.d.mts.map +1 -0
  70. package/index.d.ts +7 -0
  71. package/index.d.ts.map +1 -0
  72. package/index.js +32 -0
  73. package/index.js.map +1 -0
  74. package/index.mjs +8 -0
  75. package/index.mjs.map +1 -0
  76. package/internal/builtin-types.d.mts +73 -0
  77. package/internal/builtin-types.d.mts.map +1 -0
  78. package/internal/builtin-types.d.ts +73 -0
  79. package/internal/builtin-types.d.ts.map +1 -0
  80. package/internal/builtin-types.js +4 -0
  81. package/internal/builtin-types.js.map +1 -0
  82. package/internal/builtin-types.mjs +3 -0
  83. package/internal/builtin-types.mjs.map +1 -0
  84. package/internal/detect-platform.d.mts +15 -0
  85. package/internal/detect-platform.d.mts.map +1 -0
  86. package/internal/detect-platform.d.ts +15 -0
  87. package/internal/detect-platform.d.ts.map +1 -0
  88. package/internal/detect-platform.js +162 -0
  89. package/internal/detect-platform.js.map +1 -0
  90. package/internal/detect-platform.mjs +157 -0
  91. package/internal/detect-platform.mjs.map +1 -0
  92. package/internal/errors.d.mts +3 -0
  93. package/internal/errors.d.mts.map +1 -0
  94. package/internal/errors.d.ts +3 -0
  95. package/internal/errors.d.ts.map +1 -0
  96. package/internal/errors.js +41 -0
  97. package/internal/errors.js.map +1 -0
  98. package/internal/errors.mjs +36 -0
  99. package/internal/errors.mjs.map +1 -0
  100. package/internal/headers.d.mts +20 -0
  101. package/internal/headers.d.mts.map +1 -0
  102. package/internal/headers.d.ts +20 -0
  103. package/internal/headers.d.ts.map +1 -0
  104. package/internal/headers.js +79 -0
  105. package/internal/headers.js.map +1 -0
  106. package/internal/headers.mjs +74 -0
  107. package/internal/headers.mjs.map +1 -0
  108. package/internal/parse.d.mts +12 -0
  109. package/internal/parse.d.mts.map +1 -0
  110. package/internal/parse.d.ts +12 -0
  111. package/internal/parse.d.ts.map +1 -0
  112. package/internal/parse.js +40 -0
  113. package/internal/parse.js.map +1 -0
  114. package/internal/parse.mjs +37 -0
  115. package/internal/parse.mjs.map +1 -0
  116. package/internal/qs/formats.d.mts +7 -0
  117. package/internal/qs/formats.d.mts.map +1 -0
  118. package/internal/qs/formats.d.ts +7 -0
  119. package/internal/qs/formats.d.ts.map +1 -0
  120. package/internal/qs/formats.js +13 -0
  121. package/internal/qs/formats.js.map +1 -0
  122. package/internal/qs/formats.mjs +9 -0
  123. package/internal/qs/formats.mjs.map +1 -0
  124. package/internal/qs/index.d.mts +10 -0
  125. package/internal/qs/index.d.mts.map +1 -0
  126. package/internal/qs/index.d.ts +10 -0
  127. package/internal/qs/index.d.ts.map +1 -0
  128. package/internal/qs/index.js +14 -0
  129. package/internal/qs/index.js.map +1 -0
  130. package/internal/qs/index.mjs +10 -0
  131. package/internal/qs/index.mjs.map +1 -0
  132. package/internal/qs/stringify.d.mts +3 -0
  133. package/internal/qs/stringify.d.mts.map +1 -0
  134. package/internal/qs/stringify.d.ts +3 -0
  135. package/internal/qs/stringify.d.ts.map +1 -0
  136. package/internal/qs/stringify.js +277 -0
  137. package/internal/qs/stringify.js.map +1 -0
  138. package/internal/qs/stringify.mjs +274 -0
  139. package/internal/qs/stringify.mjs.map +1 -0
  140. package/internal/qs/types.d.mts +57 -0
  141. package/internal/qs/types.d.mts.map +1 -0
  142. package/internal/qs/types.d.ts +57 -0
  143. package/internal/qs/types.d.ts.map +1 -0
  144. package/internal/qs/types.js +3 -0
  145. package/internal/qs/types.js.map +1 -0
  146. package/internal/qs/types.mjs +2 -0
  147. package/internal/qs/types.mjs.map +1 -0
  148. package/internal/qs/utils.d.mts +15 -0
  149. package/internal/qs/utils.d.mts.map +1 -0
  150. package/internal/qs/utils.d.ts +15 -0
  151. package/internal/qs/utils.d.ts.map +1 -0
  152. package/internal/qs/utils.js +230 -0
  153. package/internal/qs/utils.js.map +1 -0
  154. package/internal/qs/utils.mjs +217 -0
  155. package/internal/qs/utils.mjs.map +1 -0
  156. package/internal/request-options.d.mts +75 -0
  157. package/internal/request-options.d.mts.map +1 -0
  158. package/internal/request-options.d.ts +75 -0
  159. package/internal/request-options.d.ts.map +1 -0
  160. package/internal/request-options.js +14 -0
  161. package/internal/request-options.js.map +1 -0
  162. package/internal/request-options.mjs +10 -0
  163. package/internal/request-options.mjs.map +1 -0
  164. package/internal/shim-types.d.mts +17 -0
  165. package/internal/shim-types.d.mts.map +1 -0
  166. package/internal/shim-types.d.ts +17 -0
  167. package/internal/shim-types.d.ts.map +1 -0
  168. package/internal/shim-types.js +4 -0
  169. package/internal/shim-types.js.map +1 -0
  170. package/internal/shim-types.mjs +3 -0
  171. package/internal/shim-types.mjs.map +1 -0
  172. package/internal/shims.d.mts +20 -0
  173. package/internal/shims.d.mts.map +1 -0
  174. package/internal/shims.d.ts +20 -0
  175. package/internal/shims.d.ts.map +1 -0
  176. package/internal/shims.js +92 -0
  177. package/internal/shims.js.map +1 -0
  178. package/internal/shims.mjs +85 -0
  179. package/internal/shims.mjs.map +1 -0
  180. package/internal/to-file.d.mts +45 -0
  181. package/internal/to-file.d.mts.map +1 -0
  182. package/internal/to-file.d.ts +45 -0
  183. package/internal/to-file.d.ts.map +1 -0
  184. package/internal/to-file.js +91 -0
  185. package/internal/to-file.js.map +1 -0
  186. package/internal/to-file.mjs +88 -0
  187. package/internal/to-file.mjs.map +1 -0
  188. package/internal/tslib.js +81 -0
  189. package/internal/tslib.mjs +17 -0
  190. package/internal/types.d.mts +69 -0
  191. package/internal/types.d.mts.map +1 -0
  192. package/internal/types.d.ts +69 -0
  193. package/internal/types.d.ts.map +1 -0
  194. package/internal/types.js +4 -0
  195. package/internal/types.js.map +1 -0
  196. package/internal/types.mjs +3 -0
  197. package/internal/types.mjs.map +1 -0
  198. package/internal/uploads.d.mts +42 -0
  199. package/internal/uploads.d.mts.map +1 -0
  200. package/internal/uploads.d.ts +42 -0
  201. package/internal/uploads.d.ts.map +1 -0
  202. package/internal/uploads.js +141 -0
  203. package/internal/uploads.js.map +1 -0
  204. package/internal/uploads.mjs +131 -0
  205. package/internal/uploads.mjs.map +1 -0
  206. package/internal/utils/base64.d.mts +3 -0
  207. package/internal/utils/base64.d.mts.map +1 -0
  208. package/internal/utils/base64.d.ts +3 -0
  209. package/internal/utils/base64.d.ts.map +1 -0
  210. package/internal/utils/base64.js +38 -0
  211. package/internal/utils/base64.js.map +1 -0
  212. package/internal/utils/base64.mjs +33 -0
  213. package/internal/utils/base64.mjs.map +1 -0
  214. package/internal/utils/bytes.d.mts +4 -0
  215. package/internal/utils/bytes.d.mts.map +1 -0
  216. package/internal/utils/bytes.d.ts +4 -0
  217. package/internal/utils/bytes.d.ts.map +1 -0
  218. package/internal/utils/bytes.js +31 -0
  219. package/internal/utils/bytes.js.map +1 -0
  220. package/internal/utils/bytes.mjs +26 -0
  221. package/internal/utils/bytes.mjs.map +1 -0
  222. package/internal/utils/env.d.mts +9 -0
  223. package/internal/utils/env.d.mts.map +1 -0
  224. package/internal/utils/env.d.ts +9 -0
  225. package/internal/utils/env.d.ts.map +1 -0
  226. package/internal/utils/env.js +22 -0
  227. package/internal/utils/env.js.map +1 -0
  228. package/internal/utils/env.mjs +18 -0
  229. package/internal/utils/env.mjs.map +1 -0
  230. package/internal/utils/log.d.mts +37 -0
  231. package/internal/utils/log.d.mts.map +1 -0
  232. package/internal/utils/log.d.ts +37 -0
  233. package/internal/utils/log.d.ts.map +1 -0
  234. package/internal/utils/log.js +86 -0
  235. package/internal/utils/log.js.map +1 -0
  236. package/internal/utils/log.mjs +80 -0
  237. package/internal/utils/log.mjs.map +1 -0
  238. package/internal/utils/path.d.mts +15 -0
  239. package/internal/utils/path.d.mts.map +1 -0
  240. package/internal/utils/path.d.ts +15 -0
  241. package/internal/utils/path.d.ts.map +1 -0
  242. package/internal/utils/path.js +79 -0
  243. package/internal/utils/path.js.map +1 -0
  244. package/internal/utils/path.mjs +74 -0
  245. package/internal/utils/path.mjs.map +1 -0
  246. package/internal/utils/query.d.mts +2 -0
  247. package/internal/utils/query.d.mts.map +1 -0
  248. package/internal/utils/query.d.ts +2 -0
  249. package/internal/utils/query.d.ts.map +1 -0
  250. package/internal/utils/query.js +10 -0
  251. package/internal/utils/query.js.map +1 -0
  252. package/internal/utils/query.mjs +6 -0
  253. package/internal/utils/query.mjs.map +1 -0
  254. package/internal/utils/sleep.d.mts +2 -0
  255. package/internal/utils/sleep.d.mts.map +1 -0
  256. package/internal/utils/sleep.d.ts +2 -0
  257. package/internal/utils/sleep.d.ts.map +1 -0
  258. package/internal/utils/sleep.js +7 -0
  259. package/internal/utils/sleep.js.map +1 -0
  260. package/internal/utils/sleep.mjs +3 -0
  261. package/internal/utils/sleep.mjs.map +1 -0
  262. package/internal/utils/uuid.d.mts +5 -0
  263. package/internal/utils/uuid.d.mts.map +1 -0
  264. package/internal/utils/uuid.d.ts +5 -0
  265. package/internal/utils/uuid.d.ts.map +1 -0
  266. package/internal/utils/uuid.js +19 -0
  267. package/internal/utils/uuid.js.map +1 -0
  268. package/internal/utils/uuid.mjs +15 -0
  269. package/internal/utils/uuid.mjs.map +1 -0
  270. package/internal/utils/values.d.mts +18 -0
  271. package/internal/utils/values.d.mts.map +1 -0
  272. package/internal/utils/values.d.ts +18 -0
  273. package/internal/utils/values.d.ts.map +1 -0
  274. package/internal/utils/values.js +112 -0
  275. package/internal/utils/values.js.map +1 -0
  276. package/internal/utils/values.mjs +94 -0
  277. package/internal/utils/values.mjs.map +1 -0
  278. package/internal/utils.d.mts +8 -0
  279. package/internal/utils.d.mts.map +1 -0
  280. package/internal/utils.d.ts +8 -0
  281. package/internal/utils.d.ts.map +1 -0
  282. package/internal/utils.js +12 -0
  283. package/internal/utils.js.map +1 -0
  284. package/internal/utils.mjs +9 -0
  285. package/internal/utils.mjs.map +1 -0
  286. package/package.json +153 -0
  287. package/pagination.d.mts +2 -0
  288. package/pagination.d.mts.map +1 -0
  289. package/pagination.d.ts +2 -0
  290. package/pagination.d.ts.map +1 -0
  291. package/pagination.js +6 -0
  292. package/pagination.js.map +1 -0
  293. package/pagination.mjs +2 -0
  294. package/pagination.mjs.map +1 -0
  295. package/resource.d.mts +2 -0
  296. package/resource.d.mts.map +1 -0
  297. package/resource.d.ts +2 -0
  298. package/resource.d.ts.map +1 -0
  299. package/resource.js +6 -0
  300. package/resource.js.map +1 -0
  301. package/resource.mjs +2 -0
  302. package/resource.mjs.map +1 -0
  303. package/resources/admin/admin.d.mts +21 -0
  304. package/resources/admin/admin.d.mts.map +1 -0
  305. package/resources/admin/admin.d.ts +21 -0
  306. package/resources/admin/admin.d.ts.map +1 -0
  307. package/resources/admin/admin.js +28 -0
  308. package/resources/admin/admin.js.map +1 -0
  309. package/resources/admin/admin.mjs +23 -0
  310. package/resources/admin/admin.mjs.map +1 -0
  311. package/resources/admin/api-keys.d.mts +166 -0
  312. package/resources/admin/api-keys.d.mts.map +1 -0
  313. package/resources/admin/api-keys.d.ts +166 -0
  314. package/resources/admin/api-keys.d.ts.map +1 -0
  315. package/resources/admin/api-keys.js +35 -0
  316. package/resources/admin/api-keys.js.map +1 -0
  317. package/resources/admin/api-keys.mjs +31 -0
  318. package/resources/admin/api-keys.mjs.map +1 -0
  319. package/resources/admin/index.d.mts +5 -0
  320. package/resources/admin/index.d.mts.map +1 -0
  321. package/resources/admin/index.d.ts +5 -0
  322. package/resources/admin/index.d.ts.map +1 -0
  323. package/resources/admin/index.js +13 -0
  324. package/resources/admin/index.js.map +1 -0
  325. package/resources/admin/index.mjs +6 -0
  326. package/resources/admin/index.mjs.map +1 -0
  327. package/resources/admin/usage.d.mts +60 -0
  328. package/resources/admin/usage.d.mts.map +1 -0
  329. package/resources/admin/usage.d.ts +60 -0
  330. package/resources/admin/usage.d.ts.map +1 -0
  331. package/resources/admin/usage.js +23 -0
  332. package/resources/admin/usage.js.map +1 -0
  333. package/resources/admin/usage.mjs +19 -0
  334. package/resources/admin/usage.mjs.map +1 -0
  335. package/resources/admin/workspaces.d.mts +278 -0
  336. package/resources/admin/workspaces.d.mts.map +1 -0
  337. package/resources/admin/workspaces.d.ts +278 -0
  338. package/resources/admin/workspaces.d.ts.map +1 -0
  339. package/resources/admin/workspaces.js +48 -0
  340. package/resources/admin/workspaces.js.map +1 -0
  341. package/resources/admin/workspaces.mjs +44 -0
  342. package/resources/admin/workspaces.mjs.map +1 -0
  343. package/resources/admin.d.mts +2 -0
  344. package/resources/admin.d.mts.map +1 -0
  345. package/resources/admin.d.ts +2 -0
  346. package/resources/admin.d.ts.map +1 -0
  347. package/resources/admin.js +6 -0
  348. package/resources/admin.js.map +1 -0
  349. package/resources/admin.mjs +3 -0
  350. package/resources/admin.mjs.map +1 -0
  351. package/resources/auth.d.mts +48 -0
  352. package/resources/auth.d.mts.map +1 -0
  353. package/resources/auth.d.ts +48 -0
  354. package/resources/auth.d.ts.map +1 -0
  355. package/resources/auth.js +25 -0
  356. package/resources/auth.js.map +1 -0
  357. package/resources/auth.mjs +21 -0
  358. package/resources/auth.mjs.map +1 -0
  359. package/resources/cli.d.mts +39 -0
  360. package/resources/cli.d.mts.map +1 -0
  361. package/resources/cli.d.ts +39 -0
  362. package/resources/cli.d.ts.map +1 -0
  363. package/resources/cli.js +23 -0
  364. package/resources/cli.js.map +1 -0
  365. package/resources/cli.mjs +19 -0
  366. package/resources/cli.mjs.map +1 -0
  367. package/resources/index.d.mts +7 -0
  368. package/resources/index.d.mts.map +1 -0
  369. package/resources/index.d.ts +7 -0
  370. package/resources/index.d.ts.map +1 -0
  371. package/resources/index.js +17 -0
  372. package/resources/index.js.map +1 -0
  373. package/resources/index.mjs +8 -0
  374. package/resources/index.mjs.map +1 -0
  375. package/resources/predictions/index.d.mts +3 -0
  376. package/resources/predictions/index.d.mts.map +1 -0
  377. package/resources/predictions/index.d.ts +3 -0
  378. package/resources/predictions/index.d.ts.map +1 -0
  379. package/resources/predictions/index.js +9 -0
  380. package/resources/predictions/index.js.map +1 -0
  381. package/resources/predictions/index.mjs +4 -0
  382. package/resources/predictions/index.mjs.map +1 -0
  383. package/resources/predictions/predictions.d.mts +13 -0
  384. package/resources/predictions/predictions.d.mts.map +1 -0
  385. package/resources/predictions/predictions.d.ts +13 -0
  386. package/resources/predictions/predictions.d.ts.map +1 -0
  387. package/resources/predictions/predictions.js +20 -0
  388. package/resources/predictions/predictions.js.map +1 -0
  389. package/resources/predictions/predictions.mjs +15 -0
  390. package/resources/predictions/predictions.mjs.map +1 -0
  391. package/resources/predictions/structure-and-binding.d.mts +2295 -0
  392. package/resources/predictions/structure-and-binding.d.mts.map +1 -0
  393. package/resources/predictions/structure-and-binding.d.ts +2295 -0
  394. package/resources/predictions/structure-and-binding.d.ts.map +1 -0
  395. package/resources/predictions/structure-and-binding.js +111 -0
  396. package/resources/predictions/structure-and-binding.js.map +1 -0
  397. package/resources/predictions/structure-and-binding.mjs +107 -0
  398. package/resources/predictions/structure-and-binding.mjs.map +1 -0
  399. package/resources/predictions.d.mts +2 -0
  400. package/resources/predictions.d.mts.map +1 -0
  401. package/resources/predictions.d.ts +2 -0
  402. package/resources/predictions.d.ts.map +1 -0
  403. package/resources/predictions.js +6 -0
  404. package/resources/predictions.js.map +1 -0
  405. package/resources/predictions.mjs +3 -0
  406. package/resources/predictions.mjs.map +1 -0
  407. package/resources/protein/design.d.mts +5760 -0
  408. package/resources/protein/design.d.mts.map +1 -0
  409. package/resources/protein/design.d.ts +5760 -0
  410. package/resources/protein/design.d.ts.map +1 -0
  411. package/resources/protein/design.js +157 -0
  412. package/resources/protein/design.js.map +1 -0
  413. package/resources/protein/design.mjs +153 -0
  414. package/resources/protein/design.mjs.map +1 -0
  415. package/resources/protein/index.d.mts +4 -0
  416. package/resources/protein/index.d.mts.map +1 -0
  417. package/resources/protein/index.d.ts +4 -0
  418. package/resources/protein/index.d.ts.map +1 -0
  419. package/resources/protein/index.js +11 -0
  420. package/resources/protein/index.js.map +1 -0
  421. package/resources/protein/index.mjs +5 -0
  422. package/resources/protein/index.mjs.map +1 -0
  423. package/resources/protein/library-screen.d.mts +3428 -0
  424. package/resources/protein/library-screen.d.mts.map +1 -0
  425. package/resources/protein/library-screen.d.ts +3428 -0
  426. package/resources/protein/library-screen.d.ts.map +1 -0
  427. package/resources/protein/library-screen.js +158 -0
  428. package/resources/protein/library-screen.js.map +1 -0
  429. package/resources/protein/library-screen.mjs +154 -0
  430. package/resources/protein/library-screen.mjs.map +1 -0
  431. package/resources/protein/protein.d.mts +17 -0
  432. package/resources/protein/protein.d.mts.map +1 -0
  433. package/resources/protein/protein.d.ts +17 -0
  434. package/resources/protein/protein.d.ts.map +1 -0
  435. package/resources/protein/protein.js +24 -0
  436. package/resources/protein/protein.js.map +1 -0
  437. package/resources/protein/protein.mjs +19 -0
  438. package/resources/protein/protein.mjs.map +1 -0
  439. package/resources/protein.d.mts +2 -0
  440. package/resources/protein.d.mts.map +1 -0
  441. package/resources/protein.d.ts +2 -0
  442. package/resources/protein.d.ts.map +1 -0
  443. package/resources/protein.js +6 -0
  444. package/resources/protein.js.map +1 -0
  445. package/resources/protein.mjs +3 -0
  446. package/resources/protein.mjs.map +1 -0
  447. package/resources/small-molecule/design.d.mts +3428 -0
  448. package/resources/small-molecule/design.d.mts.map +1 -0
  449. package/resources/small-molecule/design.d.ts +3428 -0
  450. package/resources/small-molecule/design.d.ts.map +1 -0
  451. package/resources/small-molecule/design.js +135 -0
  452. package/resources/small-molecule/design.js.map +1 -0
  453. package/resources/small-molecule/design.mjs +131 -0
  454. package/resources/small-molecule/design.mjs.map +1 -0
  455. package/resources/small-molecule/index.d.mts +4 -0
  456. package/resources/small-molecule/index.d.mts.map +1 -0
  457. package/resources/small-molecule/index.d.ts +4 -0
  458. package/resources/small-molecule/index.d.ts.map +1 -0
  459. package/resources/small-molecule/index.js +11 -0
  460. package/resources/small-molecule/index.js.map +1 -0
  461. package/resources/small-molecule/index.mjs +5 -0
  462. package/resources/small-molecule/index.mjs.map +1 -0
  463. package/resources/small-molecule/library-screen.d.mts +3494 -0
  464. package/resources/small-molecule/library-screen.d.mts.map +1 -0
  465. package/resources/small-molecule/library-screen.d.ts +3494 -0
  466. package/resources/small-molecule/library-screen.d.ts.map +1 -0
  467. package/resources/small-molecule/library-screen.js +129 -0
  468. package/resources/small-molecule/library-screen.js.map +1 -0
  469. package/resources/small-molecule/library-screen.mjs +125 -0
  470. package/resources/small-molecule/library-screen.mjs.map +1 -0
  471. package/resources/small-molecule/small-molecule.d.mts +17 -0
  472. package/resources/small-molecule/small-molecule.d.mts.map +1 -0
  473. package/resources/small-molecule/small-molecule.d.ts +17 -0
  474. package/resources/small-molecule/small-molecule.d.ts.map +1 -0
  475. package/resources/small-molecule/small-molecule.js +24 -0
  476. package/resources/small-molecule/small-molecule.js.map +1 -0
  477. package/resources/small-molecule/small-molecule.mjs +19 -0
  478. package/resources/small-molecule/small-molecule.mjs.map +1 -0
  479. package/resources/small-molecule.d.mts +2 -0
  480. package/resources/small-molecule.d.mts.map +1 -0
  481. package/resources/small-molecule.d.ts +2 -0
  482. package/resources/small-molecule.d.ts.map +1 -0
  483. package/resources/small-molecule.js +6 -0
  484. package/resources/small-molecule.js.map +1 -0
  485. package/resources/small-molecule.mjs +3 -0
  486. package/resources/small-molecule.mjs.map +1 -0
  487. package/resources.d.mts +2 -0
  488. package/resources.d.mts.map +1 -0
  489. package/resources.d.ts +2 -0
  490. package/resources.d.ts.map +1 -0
  491. package/resources.js +5 -0
  492. package/resources.js.map +1 -0
  493. package/resources.mjs +2 -0
  494. package/resources.mjs.map +1 -0
  495. package/src/api-promise.ts +2 -0
  496. package/src/client.ts +833 -0
  497. package/src/core/README.md +3 -0
  498. package/src/core/api-promise.ts +92 -0
  499. package/src/core/error.ts +130 -0
  500. package/src/core/pagination.ts +255 -0
  501. package/src/core/resource.ts +11 -0
  502. package/src/core/uploads.ts +2 -0
  503. package/src/error.ts +2 -0
  504. package/src/index.ts +23 -0
  505. package/src/internal/README.md +3 -0
  506. package/src/internal/builtin-types.ts +93 -0
  507. package/src/internal/detect-platform.ts +196 -0
  508. package/src/internal/errors.ts +33 -0
  509. package/src/internal/headers.ts +97 -0
  510. package/src/internal/parse.ts +56 -0
  511. package/src/internal/qs/LICENSE.md +13 -0
  512. package/src/internal/qs/README.md +3 -0
  513. package/src/internal/qs/formats.ts +10 -0
  514. package/src/internal/qs/index.ts +13 -0
  515. package/src/internal/qs/stringify.ts +385 -0
  516. package/src/internal/qs/types.ts +71 -0
  517. package/src/internal/qs/utils.ts +265 -0
  518. package/src/internal/request-options.ts +91 -0
  519. package/src/internal/shim-types.ts +26 -0
  520. package/src/internal/shims.ts +107 -0
  521. package/src/internal/to-file.ts +154 -0
  522. package/src/internal/types.ts +93 -0
  523. package/src/internal/uploads.ts +187 -0
  524. package/src/internal/utils/base64.ts +40 -0
  525. package/src/internal/utils/bytes.ts +32 -0
  526. package/src/internal/utils/env.ts +18 -0
  527. package/src/internal/utils/log.ts +127 -0
  528. package/src/internal/utils/path.ts +88 -0
  529. package/src/internal/utils/query.ts +7 -0
  530. package/src/internal/utils/sleep.ts +3 -0
  531. package/src/internal/utils/uuid.ts +17 -0
  532. package/src/internal/utils/values.ts +105 -0
  533. package/src/internal/utils.ts +9 -0
  534. package/src/lib/.keep +4 -0
  535. package/src/pagination.ts +2 -0
  536. package/src/resource.ts +2 -0
  537. package/src/resources/admin/admin.ts +73 -0
  538. package/src/resources/admin/api-keys.ts +233 -0
  539. package/src/resources/admin/index.ts +30 -0
  540. package/src/resources/admin/usage.ts +107 -0
  541. package/src/resources/admin/workspaces.ts +370 -0
  542. package/src/resources/admin.ts +3 -0
  543. package/src/resources/auth.ts +68 -0
  544. package/src/resources/cli.ts +57 -0
  545. package/src/resources/index.ts +8 -0
  546. package/src/resources/predictions/index.ts +16 -0
  547. package/src/resources/predictions/predictions.ts +43 -0
  548. package/src/resources/predictions/structure-and-binding.ts +2892 -0
  549. package/src/resources/predictions.ts +3 -0
  550. package/src/resources/protein/design.ts +7175 -0
  551. package/src/resources/protein/index.ts +37 -0
  552. package/src/resources/protein/library-screen.ts +4306 -0
  553. package/src/resources/protein/protein.ts +88 -0
  554. package/src/resources/protein.ts +3 -0
  555. package/src/resources/small-molecule/design.ts +4229 -0
  556. package/src/resources/small-molecule/index.ts +37 -0
  557. package/src/resources/small-molecule/library-screen.ts +4312 -0
  558. package/src/resources/small-molecule/small-molecule.ts +88 -0
  559. package/src/resources/small-molecule.ts +3 -0
  560. package/src/resources.ts +1 -0
  561. package/src/tsconfig.json +11 -0
  562. package/src/uploads.ts +2 -0
  563. package/src/version.ts +1 -0
  564. package/uploads.d.mts +2 -0
  565. package/uploads.d.mts.map +1 -0
  566. package/uploads.d.ts +2 -0
  567. package/uploads.d.ts.map +1 -0
  568. package/uploads.js +6 -0
  569. package/uploads.js.map +1 -0
  570. package/uploads.mjs +2 -0
  571. package/uploads.mjs.map +1 -0
  572. package/version.d.mts +2 -0
  573. package/version.d.mts.map +1 -0
  574. package/version.d.ts +2 -0
  575. package/version.d.ts.map +1 -0
  576. package/version.js +5 -0
  577. package/version.js.map +1 -0
  578. package/version.mjs +2 -0
  579. package/version.mjs.map +1 -0
@@ -0,0 +1,2892 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import { APIPromise } from '../../core/api-promise';
5
+ import { CursorPage, type CursorPageParams, PagePromise } from '../../core/pagination';
6
+ import { RequestOptions } from '../../internal/request-options';
7
+ import { path } from '../../internal/utils/path';
8
+
9
+ /**
10
+ * Predict 3D structure coordinates, per-residue confidence scores, and binding metrics for a molecular complex.
11
+ */
12
+ export class StructureAndBinding extends APIResource {
13
+ /**
14
+ * Retrieve a prediction by ID, including its status and results.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const structureAndBinding =
19
+ * await client.predictions.structureAndBinding.retrieve(
20
+ * 'sab_pred_2X7Ab9Cd3Ef6Gh1JkLmN',
21
+ * );
22
+ * ```
23
+ */
24
+ retrieve(
25
+ id: string,
26
+ query: StructureAndBindingRetrieveParams | null | undefined = {},
27
+ options?: RequestOptions,
28
+ ): APIPromise<StructureAndBindingRetrieveResponse> {
29
+ return this._client.get(path`/compute/v1/predictions/structure-and-binding/${id}`, { query, ...options });
30
+ }
31
+
32
+ /**
33
+ * List structure and binding predictions, optionally filtered by workspace
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * // Automatically fetches more pages as needed.
38
+ * for await (const structureAndBindingListResponse of client.predictions.structureAndBinding.list()) {
39
+ * // ...
40
+ * }
41
+ * ```
42
+ */
43
+ list(
44
+ query: StructureAndBindingListParams | null | undefined = {},
45
+ options?: RequestOptions,
46
+ ): PagePromise<StructureAndBindingListResponsesCursorPage, StructureAndBindingListResponse> {
47
+ return this._client.getAPIList(
48
+ '/compute/v1/predictions/structure-and-binding',
49
+ CursorPage<StructureAndBindingListResponse>,
50
+ { query, ...options },
51
+ );
52
+ }
53
+
54
+ /**
55
+ * Permanently delete the input, output, and result data associated with this
56
+ * prediction. The prediction record itself is retained with a `data_deleted_at`
57
+ * timestamp. This action is irreversible.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * const response =
62
+ * await client.predictions.structureAndBinding.deleteData(
63
+ * 'sab_pred_2X7Ab9Cd3Ef6Gh1JkLmN',
64
+ * );
65
+ * ```
66
+ */
67
+ deleteData(id: string, options?: RequestOptions): APIPromise<StructureAndBindingDeleteDataResponse> {
68
+ return this._client.post(path`/compute/v1/predictions/structure-and-binding/${id}/delete-data`, options);
69
+ }
70
+
71
+ /**
72
+ * Estimate the cost of a prediction without creating any resource or consuming
73
+ * GPU.
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * const response =
78
+ * await client.predictions.structureAndBinding.estimateCost(
79
+ * {
80
+ * input: {
81
+ * entities: [
82
+ * {
83
+ * chain_ids: ['string'],
84
+ * type: 'protein',
85
+ * value: 'value',
86
+ * },
87
+ * ],
88
+ * },
89
+ * model: 'boltz-2.1',
90
+ * },
91
+ * );
92
+ * ```
93
+ */
94
+ estimateCost(
95
+ body: StructureAndBindingEstimateCostParams,
96
+ options?: RequestOptions,
97
+ ): APIPromise<StructureAndBindingEstimateCostResponse> {
98
+ return this._client.post('/compute/v1/predictions/structure-and-binding/estimate-cost', {
99
+ body,
100
+ ...options,
101
+ });
102
+ }
103
+
104
+ /**
105
+ * Submit a prediction job that produces 3D structure coordinates and confidence
106
+ * scores for the input molecular complex, with optional binding metrics.
107
+ *
108
+ * @example
109
+ * ```ts
110
+ * const response =
111
+ * await client.predictions.structureAndBinding.start({
112
+ * input: {
113
+ * entities: [
114
+ * {
115
+ * chain_ids: ['string'],
116
+ * type: 'protein',
117
+ * value: 'value',
118
+ * },
119
+ * ],
120
+ * },
121
+ * model: 'boltz-2.1',
122
+ * });
123
+ * ```
124
+ */
125
+ start(
126
+ body: StructureAndBindingStartParams,
127
+ options?: RequestOptions,
128
+ ): APIPromise<StructureAndBindingStartResponse> {
129
+ return this._client.post('/compute/v1/predictions/structure-and-binding', { body, ...options });
130
+ }
131
+ }
132
+
133
+ export type StructureAndBindingListResponsesCursorPage = CursorPage<StructureAndBindingListResponse>;
134
+
135
+ export interface StructureAndBindingRetrieveResponse {
136
+ /**
137
+ * Unique prediction identifier
138
+ */
139
+ id: string;
140
+
141
+ completed_at: string | null;
142
+
143
+ created_at: string;
144
+
145
+ /**
146
+ * When the input/output data was deleted, or null if still available
147
+ */
148
+ data_deleted_at: string | null;
149
+
150
+ /**
151
+ * Error details when failed
152
+ */
153
+ error: StructureAndBindingRetrieveResponse.Error | null;
154
+
155
+ /**
156
+ * When this resource and its associated data will be permanently deleted. Null
157
+ * while still in progress.
158
+ */
159
+ expires_at: string | null;
160
+
161
+ /**
162
+ * Prediction input (null if data deleted)
163
+ */
164
+ input: StructureAndBindingRetrieveResponse.Input | null;
165
+
166
+ /**
167
+ * Whether this resource was created with a live API key.
168
+ */
169
+ livemode: boolean;
170
+
171
+ /**
172
+ * Model used for prediction
173
+ */
174
+ model: 'boltz-2.1';
175
+
176
+ /**
177
+ * Prediction output when succeeded
178
+ */
179
+ output: StructureAndBindingRetrieveResponse.Output | null;
180
+
181
+ started_at: string | null;
182
+
183
+ status: 'pending' | 'running' | 'succeeded' | 'failed';
184
+
185
+ /**
186
+ * Model version used for prediction
187
+ */
188
+ version: string;
189
+
190
+ /**
191
+ * Workspace ID
192
+ */
193
+ workspace_id: string;
194
+
195
+ /**
196
+ * Client-provided idempotency key
197
+ */
198
+ idempotency_key?: string;
199
+ }
200
+
201
+ export namespace StructureAndBindingRetrieveResponse {
202
+ /**
203
+ * Error details when failed
204
+ */
205
+ export interface Error {
206
+ /**
207
+ * Machine-readable error code
208
+ */
209
+ code: string;
210
+
211
+ /**
212
+ * Human-readable error message
213
+ */
214
+ message: string;
215
+
216
+ /**
217
+ * Additional field-level error details keyed by input path, when available.
218
+ */
219
+ details?: unknown;
220
+ }
221
+
222
+ /**
223
+ * Prediction input (null if data deleted)
224
+ */
225
+ export interface Input {
226
+ /**
227
+ * Entities (proteins, RNA, DNA, ligands) forming the complex to predict. Order
228
+ * determines chain assignment.
229
+ */
230
+ entities: Array<
231
+ | Input.ProteinEntityResponse
232
+ | Input.RnaEntityResponse
233
+ | Input.DnaEntityResponse
234
+ | Input.LigandCcdEntityResponse
235
+ | Input.LigandSmilesEntityResponse
236
+ >;
237
+
238
+ binding?: Input.LigandProteinBindingResponse | Input.ProteinProteinBindingResponse;
239
+
240
+ /**
241
+ * Bond constraints between atoms. Atom-level ligand references currently support
242
+ * ligand_ccd only; ligand_smiles is unsupported.
243
+ */
244
+ bonds?: Array<Input.Bond>;
245
+
246
+ /**
247
+ * Structural constraints (pocket and contact). Atom-level ligand references
248
+ * currently support ligand_ccd only; ligand_smiles is unsupported.
249
+ */
250
+ constraints?: Array<Input.PocketConstraintResponse | Input.ContactConstraintResponse>;
251
+
252
+ model_options?: Input.ModelOptions;
253
+
254
+ /**
255
+ * Number of structure samples to generate
256
+ */
257
+ num_samples?: number;
258
+ }
259
+
260
+ export namespace Input {
261
+ export interface ProteinEntityResponse {
262
+ /**
263
+ * Chain IDs for this entity
264
+ */
265
+ chain_ids: Array<string>;
266
+
267
+ type: 'protein';
268
+
269
+ /**
270
+ * Amino acid sequence (one-letter codes)
271
+ */
272
+ value: string;
273
+
274
+ /**
275
+ * Whether the sequence is cyclic
276
+ */
277
+ cyclic?: boolean;
278
+
279
+ /**
280
+ * Post-translational modifications. Optional; defaults to an empty list when
281
+ * omitted.
282
+ */
283
+ modifications?: Array<
284
+ ProteinEntityResponse.CcdModificationResponse | ProteinEntityResponse.SmilesModificationResponse
285
+ >;
286
+ }
287
+
288
+ export namespace ProteinEntityResponse {
289
+ export interface CcdModificationResponse {
290
+ /**
291
+ * 0-based index of the residue to modify
292
+ */
293
+ residue_index: number;
294
+
295
+ type: 'ccd';
296
+
297
+ /**
298
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
299
+ * phosphoserine)
300
+ */
301
+ value: string;
302
+ }
303
+
304
+ export interface SmilesModificationResponse {
305
+ /**
306
+ * 0-based index of the residue to modify
307
+ */
308
+ residue_index: number;
309
+
310
+ type: 'smiles';
311
+
312
+ /**
313
+ * SMILES string for the modification
314
+ */
315
+ value: string;
316
+ }
317
+ }
318
+
319
+ export interface RnaEntityResponse {
320
+ /**
321
+ * Chain IDs for this entity
322
+ */
323
+ chain_ids: Array<string>;
324
+
325
+ type: 'rna';
326
+
327
+ /**
328
+ * RNA nucleotide sequence (A, C, G, U, N)
329
+ */
330
+ value: string;
331
+
332
+ /**
333
+ * Whether the sequence is cyclic
334
+ */
335
+ cyclic?: boolean;
336
+
337
+ /**
338
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
339
+ */
340
+ modifications?: Array<
341
+ RnaEntityResponse.CcdModificationResponse | RnaEntityResponse.SmilesModificationResponse
342
+ >;
343
+ }
344
+
345
+ export namespace RnaEntityResponse {
346
+ export interface CcdModificationResponse {
347
+ /**
348
+ * 0-based index of the residue to modify
349
+ */
350
+ residue_index: number;
351
+
352
+ type: 'ccd';
353
+
354
+ /**
355
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
356
+ * phosphoserine)
357
+ */
358
+ value: string;
359
+ }
360
+
361
+ export interface SmilesModificationResponse {
362
+ /**
363
+ * 0-based index of the residue to modify
364
+ */
365
+ residue_index: number;
366
+
367
+ type: 'smiles';
368
+
369
+ /**
370
+ * SMILES string for the modification
371
+ */
372
+ value: string;
373
+ }
374
+ }
375
+
376
+ export interface DnaEntityResponse {
377
+ /**
378
+ * Chain IDs for this entity
379
+ */
380
+ chain_ids: Array<string>;
381
+
382
+ type: 'dna';
383
+
384
+ /**
385
+ * DNA nucleotide sequence (A, C, G, T, N)
386
+ */
387
+ value: string;
388
+
389
+ /**
390
+ * Whether the sequence is cyclic
391
+ */
392
+ cyclic?: boolean;
393
+
394
+ /**
395
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
396
+ */
397
+ modifications?: Array<
398
+ DnaEntityResponse.CcdModificationResponse | DnaEntityResponse.SmilesModificationResponse
399
+ >;
400
+ }
401
+
402
+ export namespace DnaEntityResponse {
403
+ export interface CcdModificationResponse {
404
+ /**
405
+ * 0-based index of the residue to modify
406
+ */
407
+ residue_index: number;
408
+
409
+ type: 'ccd';
410
+
411
+ /**
412
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
413
+ * phosphoserine)
414
+ */
415
+ value: string;
416
+ }
417
+
418
+ export interface SmilesModificationResponse {
419
+ /**
420
+ * 0-based index of the residue to modify
421
+ */
422
+ residue_index: number;
423
+
424
+ type: 'smiles';
425
+
426
+ /**
427
+ * SMILES string for the modification
428
+ */
429
+ value: string;
430
+ }
431
+ }
432
+
433
+ export interface LigandCcdEntityResponse {
434
+ /**
435
+ * Chain IDs for this ligand
436
+ */
437
+ chain_ids: Array<string>;
438
+
439
+ type: 'ligand_ccd';
440
+
441
+ /**
442
+ * CCD code (e.g., ATP, ADP)
443
+ */
444
+ value: string;
445
+ }
446
+
447
+ export interface LigandSmilesEntityResponse {
448
+ /**
449
+ * Chain IDs for this ligand
450
+ */
451
+ chain_ids: Array<string>;
452
+
453
+ type: 'ligand_smiles';
454
+
455
+ /**
456
+ * SMILES string representing the ligand
457
+ */
458
+ value: string;
459
+ }
460
+
461
+ export interface LigandProteinBindingResponse {
462
+ /**
463
+ * Chain ID of the ligand binder (must have exactly 1 copy, <50 atoms, and only
464
+ * ligands+proteins in entities)
465
+ */
466
+ binder_chain_id: string;
467
+
468
+ type: 'ligand_protein_binding';
469
+ }
470
+
471
+ export interface ProteinProteinBindingResponse {
472
+ /**
473
+ * Chain IDs of the protein binders
474
+ */
475
+ binder_chain_ids: Array<string>;
476
+
477
+ type: 'protein_protein_binding';
478
+ }
479
+
480
+ /**
481
+ * Bond between two atoms. Atom-level ligand references currently support
482
+ * ligand_ccd entities only; ligand_smiles is unsupported.
483
+ */
484
+ export interface Bond {
485
+ /**
486
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
487
+ * entities only; ligand_smiles is unsupported.
488
+ */
489
+ atom1: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
490
+
491
+ /**
492
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
493
+ * entities only; ligand_smiles is unsupported.
494
+ */
495
+ atom2: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
496
+ }
497
+
498
+ export namespace Bond {
499
+ /**
500
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
501
+ * entities only; ligand_smiles is unsupported.
502
+ */
503
+ export interface LigandAtomResponse {
504
+ /**
505
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
506
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
507
+ */
508
+ atom_name: string;
509
+
510
+ /**
511
+ * Chain ID containing the atom
512
+ */
513
+ chain_id: string;
514
+
515
+ type: 'ligand_atom';
516
+ }
517
+
518
+ export interface PolymerAtomResponse {
519
+ /**
520
+ * Standardized atom name (verifiable in CIF file on RCSB)
521
+ */
522
+ atom_name: string;
523
+
524
+ /**
525
+ * Chain ID containing the atom
526
+ */
527
+ chain_id: string;
528
+
529
+ /**
530
+ * 0-based residue index
531
+ */
532
+ residue_index: number;
533
+
534
+ type: 'polymer_atom';
535
+ }
536
+
537
+ /**
538
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
539
+ * entities only; ligand_smiles is unsupported.
540
+ */
541
+ export interface LigandAtomResponse {
542
+ /**
543
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
544
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
545
+ */
546
+ atom_name: string;
547
+
548
+ /**
549
+ * Chain ID containing the atom
550
+ */
551
+ chain_id: string;
552
+
553
+ type: 'ligand_atom';
554
+ }
555
+
556
+ export interface PolymerAtomResponse {
557
+ /**
558
+ * Standardized atom name (verifiable in CIF file on RCSB)
559
+ */
560
+ atom_name: string;
561
+
562
+ /**
563
+ * Chain ID containing the atom
564
+ */
565
+ chain_id: string;
566
+
567
+ /**
568
+ * 0-based residue index
569
+ */
570
+ residue_index: number;
571
+
572
+ type: 'polymer_atom';
573
+ }
574
+ }
575
+
576
+ /**
577
+ * Constrains the binder to interact with specific pocket residues on the target.
578
+ */
579
+ export interface PocketConstraintResponse {
580
+ /**
581
+ * Chain ID of the binder molecule
582
+ */
583
+ binder_chain_id: string;
584
+
585
+ /**
586
+ * Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
587
+ * the value is an array of 0-indexed residue indices that define the pocket on
588
+ * that chain.
589
+ */
590
+ contact_residues: { [key: string]: Array<number> };
591
+
592
+ /**
593
+ * Maximum allowed distance in Angstroms between binder and pocket residues.
594
+ * Typical range: 4-8 A.
595
+ */
596
+ max_distance_angstrom: number;
597
+
598
+ type: 'pocket';
599
+
600
+ /**
601
+ * Whether to force the constraint
602
+ */
603
+ force?: boolean;
604
+ }
605
+
606
+ /**
607
+ * Contact constraint between two tokens. Atom-level ligand references currently
608
+ * support ligand_ccd entities only; ligand_smiles is unsupported.
609
+ */
610
+ export interface ContactConstraintResponse {
611
+ /**
612
+ * Maximum distance in Angstroms
613
+ */
614
+ max_distance_angstrom: number;
615
+
616
+ /**
617
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
618
+ * entities only; ligand_smiles is unsupported.
619
+ */
620
+ token1:
621
+ | ContactConstraintResponse.PolymerContactTokenResponse
622
+ | ContactConstraintResponse.LigandContactTokenResponse;
623
+
624
+ /**
625
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
626
+ * entities only; ligand_smiles is unsupported.
627
+ */
628
+ token2:
629
+ | ContactConstraintResponse.PolymerContactTokenResponse
630
+ | ContactConstraintResponse.LigandContactTokenResponse;
631
+
632
+ type: 'contact';
633
+
634
+ /**
635
+ * Whether to force the constraint
636
+ */
637
+ force?: boolean;
638
+ }
639
+
640
+ export namespace ContactConstraintResponse {
641
+ export interface PolymerContactTokenResponse {
642
+ /**
643
+ * Chain ID
644
+ */
645
+ chain_id: string;
646
+
647
+ /**
648
+ * 0-based residue index
649
+ */
650
+ residue_index: number;
651
+
652
+ type: 'polymer_contact';
653
+ }
654
+
655
+ /**
656
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
657
+ * entities only; ligand_smiles is unsupported.
658
+ */
659
+ export interface LigandContactTokenResponse {
660
+ /**
661
+ * Atom name. Atom-level references to ligand_smiles entities are currently
662
+ * unsupported; use ligand_ccd instead.
663
+ */
664
+ atom_name: string;
665
+
666
+ /**
667
+ * Chain ID
668
+ */
669
+ chain_id: string;
670
+
671
+ type: 'ligand_contact';
672
+ }
673
+
674
+ export interface PolymerContactTokenResponse {
675
+ /**
676
+ * Chain ID
677
+ */
678
+ chain_id: string;
679
+
680
+ /**
681
+ * 0-based residue index
682
+ */
683
+ residue_index: number;
684
+
685
+ type: 'polymer_contact';
686
+ }
687
+
688
+ /**
689
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
690
+ * entities only; ligand_smiles is unsupported.
691
+ */
692
+ export interface LigandContactTokenResponse {
693
+ /**
694
+ * Atom name. Atom-level references to ligand_smiles entities are currently
695
+ * unsupported; use ligand_ccd instead.
696
+ */
697
+ atom_name: string;
698
+
699
+ /**
700
+ * Chain ID
701
+ */
702
+ chain_id: string;
703
+
704
+ type: 'ligand_contact';
705
+ }
706
+ }
707
+
708
+ export interface ModelOptions {
709
+ /**
710
+ * The number of recycling steps to use for prediction. Default is 3.
711
+ */
712
+ recycling_steps?: number;
713
+
714
+ /**
715
+ * The number of sampling steps to use for prediction. Default is 200.
716
+ */
717
+ sampling_steps?: number;
718
+
719
+ /**
720
+ * Diffusion step scale (temperature). Controls sampling diversity — higher values
721
+ * produce more varied structures. Default is 1.638.
722
+ */
723
+ step_scale?: number;
724
+ }
725
+ }
726
+
727
+ /**
728
+ * Prediction output when succeeded
729
+ */
730
+ export interface Output {
731
+ /**
732
+ * Per-sample structure results
733
+ */
734
+ all_sample_results: Array<Output.AllSampleResult>;
735
+
736
+ best_sample: Output.BestSample;
737
+
738
+ archive?: Output.Archive;
739
+
740
+ binding_metrics?: Output.LigandProteinBindingMetrics | Output.ProteinProteinBindingMetrics;
741
+ }
742
+
743
+ export namespace Output {
744
+ export interface AllSampleResult {
745
+ metrics: AllSampleResult.Metrics;
746
+
747
+ structure: AllSampleResult.Structure;
748
+ }
749
+
750
+ export namespace AllSampleResult {
751
+ export interface Metrics {
752
+ /**
753
+ * Complex interface predicted distance error. Lower is better.
754
+ */
755
+ complex_ipde: number;
756
+
757
+ /**
758
+ * Complex interface pLDDT (0-1 float). Confidence at inter-chain interfaces.
759
+ */
760
+ complex_iplddt: number;
761
+
762
+ /**
763
+ * Complex predicted distance error. Lower is better.
764
+ */
765
+ complex_pde: number;
766
+
767
+ /**
768
+ * Complex pLDDT (0-1 float). Per-residue confidence averaged over the complex.
769
+ */
770
+ complex_plddt: number;
771
+
772
+ /**
773
+ * Interface predicted TM score (0-1). Confidence in domain interfaces.
774
+ */
775
+ iptm: number;
776
+
777
+ /**
778
+ * Ligand interface pTM (0-1). Only present when ligands are included.
779
+ */
780
+ ligand_iptm: number;
781
+
782
+ /**
783
+ * Protein-protein interface pTM (0-1). Only present for multi-protein complexes.
784
+ */
785
+ protein_iptm: number;
786
+
787
+ /**
788
+ * Predicted TM score (0-1). Global structure quality.
789
+ */
790
+ ptm: number;
791
+
792
+ /**
793
+ * Overall structure confidence (0-1).
794
+ */
795
+ structure_confidence: number;
796
+ }
797
+
798
+ export interface Structure {
799
+ /**
800
+ * URL to download the file
801
+ */
802
+ url: string;
803
+
804
+ /**
805
+ * When the presigned URL expires
806
+ */
807
+ url_expires_at: string;
808
+ }
809
+ }
810
+
811
+ export interface BestSample {
812
+ metrics: BestSample.Metrics;
813
+
814
+ structure: BestSample.Structure;
815
+ }
816
+
817
+ export namespace BestSample {
818
+ export interface Metrics {
819
+ /**
820
+ * Complex interface predicted distance error. Lower is better.
821
+ */
822
+ complex_ipde: number;
823
+
824
+ /**
825
+ * Complex interface pLDDT (0-1 float). Confidence at inter-chain interfaces.
826
+ */
827
+ complex_iplddt: number;
828
+
829
+ /**
830
+ * Complex predicted distance error. Lower is better.
831
+ */
832
+ complex_pde: number;
833
+
834
+ /**
835
+ * Complex pLDDT (0-1 float). Per-residue confidence averaged over the complex.
836
+ */
837
+ complex_plddt: number;
838
+
839
+ /**
840
+ * Interface predicted TM score (0-1). Confidence in domain interfaces.
841
+ */
842
+ iptm: number;
843
+
844
+ /**
845
+ * Ligand interface pTM (0-1). Only present when ligands are included.
846
+ */
847
+ ligand_iptm: number;
848
+
849
+ /**
850
+ * Protein-protein interface pTM (0-1). Only present for multi-protein complexes.
851
+ */
852
+ protein_iptm: number;
853
+
854
+ /**
855
+ * Predicted TM score (0-1). Global structure quality.
856
+ */
857
+ ptm: number;
858
+
859
+ /**
860
+ * Overall structure confidence (0-1).
861
+ */
862
+ structure_confidence: number;
863
+ }
864
+
865
+ export interface Structure {
866
+ /**
867
+ * URL to download the file
868
+ */
869
+ url: string;
870
+
871
+ /**
872
+ * When the presigned URL expires
873
+ */
874
+ url_expires_at: string;
875
+ }
876
+ }
877
+
878
+ export interface Archive {
879
+ /**
880
+ * URL to download the file
881
+ */
882
+ url: string;
883
+
884
+ /**
885
+ * When the presigned URL expires
886
+ */
887
+ url_expires_at: string;
888
+ }
889
+
890
+ export interface LigandProteinBindingMetrics {
891
+ /**
892
+ * Confidence that binding occurs (0-1). Primary metric for hit discovery.
893
+ */
894
+ binding_confidence: number;
895
+
896
+ /**
897
+ * Binding strength ranking score for lead optimization. Higher values indicate
898
+ * stronger predicted binding.
899
+ */
900
+ optimization_score: number;
901
+
902
+ type: 'ligand_protein_binding_metrics';
903
+ }
904
+
905
+ export interface ProteinProteinBindingMetrics {
906
+ /**
907
+ * Confidence that binding occurs (0-1). Primary metric for hit discovery.
908
+ */
909
+ binding_confidence: number;
910
+
911
+ type: 'protein_protein_binding_metrics';
912
+ }
913
+ }
914
+ }
915
+
916
+ export interface StructureAndBindingListResponse {
917
+ /**
918
+ * Unique prediction identifier
919
+ */
920
+ id: string;
921
+
922
+ completed_at: string | null;
923
+
924
+ created_at: string;
925
+
926
+ /**
927
+ * When the input/output data was deleted, or null if still available
928
+ */
929
+ data_deleted_at: string | null;
930
+
931
+ /**
932
+ * Error details when failed
933
+ */
934
+ error: StructureAndBindingListResponse.Error | null;
935
+
936
+ /**
937
+ * When this resource and its associated data will be permanently deleted. Null
938
+ * while still in progress.
939
+ */
940
+ expires_at: string | null;
941
+
942
+ /**
943
+ * Whether this resource was created with a live API key.
944
+ */
945
+ livemode: boolean;
946
+
947
+ /**
948
+ * Model used for prediction
949
+ */
950
+ model: 'boltz-2.1';
951
+
952
+ started_at: string | null;
953
+
954
+ status: 'pending' | 'running' | 'succeeded' | 'failed';
955
+
956
+ /**
957
+ * Model version used for prediction
958
+ */
959
+ version: string;
960
+
961
+ /**
962
+ * Workspace ID
963
+ */
964
+ workspace_id: string;
965
+
966
+ /**
967
+ * Client-provided idempotency key
968
+ */
969
+ idempotency_key?: string;
970
+ }
971
+
972
+ export namespace StructureAndBindingListResponse {
973
+ /**
974
+ * Error details when failed
975
+ */
976
+ export interface Error {
977
+ /**
978
+ * Machine-readable error code
979
+ */
980
+ code: string;
981
+
982
+ /**
983
+ * Human-readable error message
984
+ */
985
+ message: string;
986
+
987
+ /**
988
+ * Additional field-level error details keyed by input path, when available.
989
+ */
990
+ details?: unknown;
991
+ }
992
+ }
993
+
994
+ export interface StructureAndBindingDeleteDataResponse {
995
+ /**
996
+ * ID of the resource whose data was deleted
997
+ */
998
+ id: string;
999
+
1000
+ data_deleted: true;
1001
+
1002
+ /**
1003
+ * When the data was deleted
1004
+ */
1005
+ data_deleted_at: string;
1006
+ }
1007
+
1008
+ /**
1009
+ * Estimate response with monetary values encoded as decimal strings to preserve
1010
+ * precision.
1011
+ */
1012
+ export interface StructureAndBindingEstimateCostResponse {
1013
+ /**
1014
+ * Cost breakdown for the billed application.
1015
+ */
1016
+ breakdown: StructureAndBindingEstimateCostResponse.Breakdown;
1017
+
1018
+ disclaimer: string;
1019
+
1020
+ /**
1021
+ * Estimated total cost as a decimal string
1022
+ */
1023
+ estimated_cost_usd: string;
1024
+ }
1025
+
1026
+ export namespace StructureAndBindingEstimateCostResponse {
1027
+ /**
1028
+ * Cost breakdown for the billed application.
1029
+ */
1030
+ export interface Breakdown {
1031
+ application:
1032
+ | 'structure_and_binding'
1033
+ | 'small_molecule_design'
1034
+ | 'small_molecule_library_screen'
1035
+ | 'protein_design'
1036
+ | 'protein_library_screen'
1037
+ | 'adme';
1038
+
1039
+ /**
1040
+ * Estimated cost per displayed unit as a decimal string, rounded up to 4 decimal
1041
+ * places. This may include token-size multipliers or generation overhead;
1042
+ * estimated_cost_usd is the authoritative total.
1043
+ */
1044
+ cost_per_unit_usd: string;
1045
+
1046
+ /**
1047
+ * Number of units shown for the estimate. For structure-and-binding, this is the
1048
+ * requested number of samples. For protein and small-molecule design/screen
1049
+ * endpoints, this is the requested number of proteins or molecules.
1050
+ */
1051
+ num_units: number;
1052
+ }
1053
+ }
1054
+
1055
+ export interface StructureAndBindingStartResponse {
1056
+ /**
1057
+ * Unique prediction identifier
1058
+ */
1059
+ id: string;
1060
+
1061
+ completed_at: string | null;
1062
+
1063
+ created_at: string;
1064
+
1065
+ /**
1066
+ * When the input/output data was deleted, or null if still available
1067
+ */
1068
+ data_deleted_at: string | null;
1069
+
1070
+ /**
1071
+ * Error details when failed
1072
+ */
1073
+ error: StructureAndBindingStartResponse.Error | null;
1074
+
1075
+ /**
1076
+ * When this resource and its associated data will be permanently deleted. Null
1077
+ * while still in progress.
1078
+ */
1079
+ expires_at: string | null;
1080
+
1081
+ /**
1082
+ * Prediction input (null if data deleted)
1083
+ */
1084
+ input: StructureAndBindingStartResponse.Input | null;
1085
+
1086
+ /**
1087
+ * Whether this resource was created with a live API key.
1088
+ */
1089
+ livemode: boolean;
1090
+
1091
+ /**
1092
+ * Model used for prediction
1093
+ */
1094
+ model: 'boltz-2.1';
1095
+
1096
+ /**
1097
+ * Prediction output when succeeded
1098
+ */
1099
+ output: StructureAndBindingStartResponse.Output | null;
1100
+
1101
+ started_at: string | null;
1102
+
1103
+ status: 'pending' | 'running' | 'succeeded' | 'failed';
1104
+
1105
+ /**
1106
+ * Model version used for prediction
1107
+ */
1108
+ version: string;
1109
+
1110
+ /**
1111
+ * Workspace ID
1112
+ */
1113
+ workspace_id: string;
1114
+
1115
+ /**
1116
+ * Client-provided idempotency key
1117
+ */
1118
+ idempotency_key?: string;
1119
+ }
1120
+
1121
+ export namespace StructureAndBindingStartResponse {
1122
+ /**
1123
+ * Error details when failed
1124
+ */
1125
+ export interface Error {
1126
+ /**
1127
+ * Machine-readable error code
1128
+ */
1129
+ code: string;
1130
+
1131
+ /**
1132
+ * Human-readable error message
1133
+ */
1134
+ message: string;
1135
+
1136
+ /**
1137
+ * Additional field-level error details keyed by input path, when available.
1138
+ */
1139
+ details?: unknown;
1140
+ }
1141
+
1142
+ /**
1143
+ * Prediction input (null if data deleted)
1144
+ */
1145
+ export interface Input {
1146
+ /**
1147
+ * Entities (proteins, RNA, DNA, ligands) forming the complex to predict. Order
1148
+ * determines chain assignment.
1149
+ */
1150
+ entities: Array<
1151
+ | Input.ProteinEntityResponse
1152
+ | Input.RnaEntityResponse
1153
+ | Input.DnaEntityResponse
1154
+ | Input.LigandCcdEntityResponse
1155
+ | Input.LigandSmilesEntityResponse
1156
+ >;
1157
+
1158
+ binding?: Input.LigandProteinBindingResponse | Input.ProteinProteinBindingResponse;
1159
+
1160
+ /**
1161
+ * Bond constraints between atoms. Atom-level ligand references currently support
1162
+ * ligand_ccd only; ligand_smiles is unsupported.
1163
+ */
1164
+ bonds?: Array<Input.Bond>;
1165
+
1166
+ /**
1167
+ * Structural constraints (pocket and contact). Atom-level ligand references
1168
+ * currently support ligand_ccd only; ligand_smiles is unsupported.
1169
+ */
1170
+ constraints?: Array<Input.PocketConstraintResponse | Input.ContactConstraintResponse>;
1171
+
1172
+ model_options?: Input.ModelOptions;
1173
+
1174
+ /**
1175
+ * Number of structure samples to generate
1176
+ */
1177
+ num_samples?: number;
1178
+ }
1179
+
1180
+ export namespace Input {
1181
+ export interface ProteinEntityResponse {
1182
+ /**
1183
+ * Chain IDs for this entity
1184
+ */
1185
+ chain_ids: Array<string>;
1186
+
1187
+ type: 'protein';
1188
+
1189
+ /**
1190
+ * Amino acid sequence (one-letter codes)
1191
+ */
1192
+ value: string;
1193
+
1194
+ /**
1195
+ * Whether the sequence is cyclic
1196
+ */
1197
+ cyclic?: boolean;
1198
+
1199
+ /**
1200
+ * Post-translational modifications. Optional; defaults to an empty list when
1201
+ * omitted.
1202
+ */
1203
+ modifications?: Array<
1204
+ ProteinEntityResponse.CcdModificationResponse | ProteinEntityResponse.SmilesModificationResponse
1205
+ >;
1206
+ }
1207
+
1208
+ export namespace ProteinEntityResponse {
1209
+ export interface CcdModificationResponse {
1210
+ /**
1211
+ * 0-based index of the residue to modify
1212
+ */
1213
+ residue_index: number;
1214
+
1215
+ type: 'ccd';
1216
+
1217
+ /**
1218
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
1219
+ * phosphoserine)
1220
+ */
1221
+ value: string;
1222
+ }
1223
+
1224
+ export interface SmilesModificationResponse {
1225
+ /**
1226
+ * 0-based index of the residue to modify
1227
+ */
1228
+ residue_index: number;
1229
+
1230
+ type: 'smiles';
1231
+
1232
+ /**
1233
+ * SMILES string for the modification
1234
+ */
1235
+ value: string;
1236
+ }
1237
+ }
1238
+
1239
+ export interface RnaEntityResponse {
1240
+ /**
1241
+ * Chain IDs for this entity
1242
+ */
1243
+ chain_ids: Array<string>;
1244
+
1245
+ type: 'rna';
1246
+
1247
+ /**
1248
+ * RNA nucleotide sequence (A, C, G, U, N)
1249
+ */
1250
+ value: string;
1251
+
1252
+ /**
1253
+ * Whether the sequence is cyclic
1254
+ */
1255
+ cyclic?: boolean;
1256
+
1257
+ /**
1258
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
1259
+ */
1260
+ modifications?: Array<
1261
+ RnaEntityResponse.CcdModificationResponse | RnaEntityResponse.SmilesModificationResponse
1262
+ >;
1263
+ }
1264
+
1265
+ export namespace RnaEntityResponse {
1266
+ export interface CcdModificationResponse {
1267
+ /**
1268
+ * 0-based index of the residue to modify
1269
+ */
1270
+ residue_index: number;
1271
+
1272
+ type: 'ccd';
1273
+
1274
+ /**
1275
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
1276
+ * phosphoserine)
1277
+ */
1278
+ value: string;
1279
+ }
1280
+
1281
+ export interface SmilesModificationResponse {
1282
+ /**
1283
+ * 0-based index of the residue to modify
1284
+ */
1285
+ residue_index: number;
1286
+
1287
+ type: 'smiles';
1288
+
1289
+ /**
1290
+ * SMILES string for the modification
1291
+ */
1292
+ value: string;
1293
+ }
1294
+ }
1295
+
1296
+ export interface DnaEntityResponse {
1297
+ /**
1298
+ * Chain IDs for this entity
1299
+ */
1300
+ chain_ids: Array<string>;
1301
+
1302
+ type: 'dna';
1303
+
1304
+ /**
1305
+ * DNA nucleotide sequence (A, C, G, T, N)
1306
+ */
1307
+ value: string;
1308
+
1309
+ /**
1310
+ * Whether the sequence is cyclic
1311
+ */
1312
+ cyclic?: boolean;
1313
+
1314
+ /**
1315
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
1316
+ */
1317
+ modifications?: Array<
1318
+ DnaEntityResponse.CcdModificationResponse | DnaEntityResponse.SmilesModificationResponse
1319
+ >;
1320
+ }
1321
+
1322
+ export namespace DnaEntityResponse {
1323
+ export interface CcdModificationResponse {
1324
+ /**
1325
+ * 0-based index of the residue to modify
1326
+ */
1327
+ residue_index: number;
1328
+
1329
+ type: 'ccd';
1330
+
1331
+ /**
1332
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
1333
+ * phosphoserine)
1334
+ */
1335
+ value: string;
1336
+ }
1337
+
1338
+ export interface SmilesModificationResponse {
1339
+ /**
1340
+ * 0-based index of the residue to modify
1341
+ */
1342
+ residue_index: number;
1343
+
1344
+ type: 'smiles';
1345
+
1346
+ /**
1347
+ * SMILES string for the modification
1348
+ */
1349
+ value: string;
1350
+ }
1351
+ }
1352
+
1353
+ export interface LigandCcdEntityResponse {
1354
+ /**
1355
+ * Chain IDs for this ligand
1356
+ */
1357
+ chain_ids: Array<string>;
1358
+
1359
+ type: 'ligand_ccd';
1360
+
1361
+ /**
1362
+ * CCD code (e.g., ATP, ADP)
1363
+ */
1364
+ value: string;
1365
+ }
1366
+
1367
+ export interface LigandSmilesEntityResponse {
1368
+ /**
1369
+ * Chain IDs for this ligand
1370
+ */
1371
+ chain_ids: Array<string>;
1372
+
1373
+ type: 'ligand_smiles';
1374
+
1375
+ /**
1376
+ * SMILES string representing the ligand
1377
+ */
1378
+ value: string;
1379
+ }
1380
+
1381
+ export interface LigandProteinBindingResponse {
1382
+ /**
1383
+ * Chain ID of the ligand binder (must have exactly 1 copy, <50 atoms, and only
1384
+ * ligands+proteins in entities)
1385
+ */
1386
+ binder_chain_id: string;
1387
+
1388
+ type: 'ligand_protein_binding';
1389
+ }
1390
+
1391
+ export interface ProteinProteinBindingResponse {
1392
+ /**
1393
+ * Chain IDs of the protein binders
1394
+ */
1395
+ binder_chain_ids: Array<string>;
1396
+
1397
+ type: 'protein_protein_binding';
1398
+ }
1399
+
1400
+ /**
1401
+ * Bond between two atoms. Atom-level ligand references currently support
1402
+ * ligand_ccd entities only; ligand_smiles is unsupported.
1403
+ */
1404
+ export interface Bond {
1405
+ /**
1406
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
1407
+ * entities only; ligand_smiles is unsupported.
1408
+ */
1409
+ atom1: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
1410
+
1411
+ /**
1412
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
1413
+ * entities only; ligand_smiles is unsupported.
1414
+ */
1415
+ atom2: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
1416
+ }
1417
+
1418
+ export namespace Bond {
1419
+ /**
1420
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
1421
+ * entities only; ligand_smiles is unsupported.
1422
+ */
1423
+ export interface LigandAtomResponse {
1424
+ /**
1425
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
1426
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
1427
+ */
1428
+ atom_name: string;
1429
+
1430
+ /**
1431
+ * Chain ID containing the atom
1432
+ */
1433
+ chain_id: string;
1434
+
1435
+ type: 'ligand_atom';
1436
+ }
1437
+
1438
+ export interface PolymerAtomResponse {
1439
+ /**
1440
+ * Standardized atom name (verifiable in CIF file on RCSB)
1441
+ */
1442
+ atom_name: string;
1443
+
1444
+ /**
1445
+ * Chain ID containing the atom
1446
+ */
1447
+ chain_id: string;
1448
+
1449
+ /**
1450
+ * 0-based residue index
1451
+ */
1452
+ residue_index: number;
1453
+
1454
+ type: 'polymer_atom';
1455
+ }
1456
+
1457
+ /**
1458
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
1459
+ * entities only; ligand_smiles is unsupported.
1460
+ */
1461
+ export interface LigandAtomResponse {
1462
+ /**
1463
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
1464
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
1465
+ */
1466
+ atom_name: string;
1467
+
1468
+ /**
1469
+ * Chain ID containing the atom
1470
+ */
1471
+ chain_id: string;
1472
+
1473
+ type: 'ligand_atom';
1474
+ }
1475
+
1476
+ export interface PolymerAtomResponse {
1477
+ /**
1478
+ * Standardized atom name (verifiable in CIF file on RCSB)
1479
+ */
1480
+ atom_name: string;
1481
+
1482
+ /**
1483
+ * Chain ID containing the atom
1484
+ */
1485
+ chain_id: string;
1486
+
1487
+ /**
1488
+ * 0-based residue index
1489
+ */
1490
+ residue_index: number;
1491
+
1492
+ type: 'polymer_atom';
1493
+ }
1494
+ }
1495
+
1496
+ /**
1497
+ * Constrains the binder to interact with specific pocket residues on the target.
1498
+ */
1499
+ export interface PocketConstraintResponse {
1500
+ /**
1501
+ * Chain ID of the binder molecule
1502
+ */
1503
+ binder_chain_id: string;
1504
+
1505
+ /**
1506
+ * Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
1507
+ * the value is an array of 0-indexed residue indices that define the pocket on
1508
+ * that chain.
1509
+ */
1510
+ contact_residues: { [key: string]: Array<number> };
1511
+
1512
+ /**
1513
+ * Maximum allowed distance in Angstroms between binder and pocket residues.
1514
+ * Typical range: 4-8 A.
1515
+ */
1516
+ max_distance_angstrom: number;
1517
+
1518
+ type: 'pocket';
1519
+
1520
+ /**
1521
+ * Whether to force the constraint
1522
+ */
1523
+ force?: boolean;
1524
+ }
1525
+
1526
+ /**
1527
+ * Contact constraint between two tokens. Atom-level ligand references currently
1528
+ * support ligand_ccd entities only; ligand_smiles is unsupported.
1529
+ */
1530
+ export interface ContactConstraintResponse {
1531
+ /**
1532
+ * Maximum distance in Angstroms
1533
+ */
1534
+ max_distance_angstrom: number;
1535
+
1536
+ /**
1537
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
1538
+ * entities only; ligand_smiles is unsupported.
1539
+ */
1540
+ token1:
1541
+ | ContactConstraintResponse.PolymerContactTokenResponse
1542
+ | ContactConstraintResponse.LigandContactTokenResponse;
1543
+
1544
+ /**
1545
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
1546
+ * entities only; ligand_smiles is unsupported.
1547
+ */
1548
+ token2:
1549
+ | ContactConstraintResponse.PolymerContactTokenResponse
1550
+ | ContactConstraintResponse.LigandContactTokenResponse;
1551
+
1552
+ type: 'contact';
1553
+
1554
+ /**
1555
+ * Whether to force the constraint
1556
+ */
1557
+ force?: boolean;
1558
+ }
1559
+
1560
+ export namespace ContactConstraintResponse {
1561
+ export interface PolymerContactTokenResponse {
1562
+ /**
1563
+ * Chain ID
1564
+ */
1565
+ chain_id: string;
1566
+
1567
+ /**
1568
+ * 0-based residue index
1569
+ */
1570
+ residue_index: number;
1571
+
1572
+ type: 'polymer_contact';
1573
+ }
1574
+
1575
+ /**
1576
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
1577
+ * entities only; ligand_smiles is unsupported.
1578
+ */
1579
+ export interface LigandContactTokenResponse {
1580
+ /**
1581
+ * Atom name. Atom-level references to ligand_smiles entities are currently
1582
+ * unsupported; use ligand_ccd instead.
1583
+ */
1584
+ atom_name: string;
1585
+
1586
+ /**
1587
+ * Chain ID
1588
+ */
1589
+ chain_id: string;
1590
+
1591
+ type: 'ligand_contact';
1592
+ }
1593
+
1594
+ export interface PolymerContactTokenResponse {
1595
+ /**
1596
+ * Chain ID
1597
+ */
1598
+ chain_id: string;
1599
+
1600
+ /**
1601
+ * 0-based residue index
1602
+ */
1603
+ residue_index: number;
1604
+
1605
+ type: 'polymer_contact';
1606
+ }
1607
+
1608
+ /**
1609
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
1610
+ * entities only; ligand_smiles is unsupported.
1611
+ */
1612
+ export interface LigandContactTokenResponse {
1613
+ /**
1614
+ * Atom name. Atom-level references to ligand_smiles entities are currently
1615
+ * unsupported; use ligand_ccd instead.
1616
+ */
1617
+ atom_name: string;
1618
+
1619
+ /**
1620
+ * Chain ID
1621
+ */
1622
+ chain_id: string;
1623
+
1624
+ type: 'ligand_contact';
1625
+ }
1626
+ }
1627
+
1628
+ export interface ModelOptions {
1629
+ /**
1630
+ * The number of recycling steps to use for prediction. Default is 3.
1631
+ */
1632
+ recycling_steps?: number;
1633
+
1634
+ /**
1635
+ * The number of sampling steps to use for prediction. Default is 200.
1636
+ */
1637
+ sampling_steps?: number;
1638
+
1639
+ /**
1640
+ * Diffusion step scale (temperature). Controls sampling diversity — higher values
1641
+ * produce more varied structures. Default is 1.638.
1642
+ */
1643
+ step_scale?: number;
1644
+ }
1645
+ }
1646
+
1647
+ /**
1648
+ * Prediction output when succeeded
1649
+ */
1650
+ export interface Output {
1651
+ /**
1652
+ * Per-sample structure results
1653
+ */
1654
+ all_sample_results: Array<Output.AllSampleResult>;
1655
+
1656
+ best_sample: Output.BestSample;
1657
+
1658
+ archive?: Output.Archive;
1659
+
1660
+ binding_metrics?: Output.LigandProteinBindingMetrics | Output.ProteinProteinBindingMetrics;
1661
+ }
1662
+
1663
+ export namespace Output {
1664
+ export interface AllSampleResult {
1665
+ metrics: AllSampleResult.Metrics;
1666
+
1667
+ structure: AllSampleResult.Structure;
1668
+ }
1669
+
1670
+ export namespace AllSampleResult {
1671
+ export interface Metrics {
1672
+ /**
1673
+ * Complex interface predicted distance error. Lower is better.
1674
+ */
1675
+ complex_ipde: number;
1676
+
1677
+ /**
1678
+ * Complex interface pLDDT (0-1 float). Confidence at inter-chain interfaces.
1679
+ */
1680
+ complex_iplddt: number;
1681
+
1682
+ /**
1683
+ * Complex predicted distance error. Lower is better.
1684
+ */
1685
+ complex_pde: number;
1686
+
1687
+ /**
1688
+ * Complex pLDDT (0-1 float). Per-residue confidence averaged over the complex.
1689
+ */
1690
+ complex_plddt: number;
1691
+
1692
+ /**
1693
+ * Interface predicted TM score (0-1). Confidence in domain interfaces.
1694
+ */
1695
+ iptm: number;
1696
+
1697
+ /**
1698
+ * Ligand interface pTM (0-1). Only present when ligands are included.
1699
+ */
1700
+ ligand_iptm: number;
1701
+
1702
+ /**
1703
+ * Protein-protein interface pTM (0-1). Only present for multi-protein complexes.
1704
+ */
1705
+ protein_iptm: number;
1706
+
1707
+ /**
1708
+ * Predicted TM score (0-1). Global structure quality.
1709
+ */
1710
+ ptm: number;
1711
+
1712
+ /**
1713
+ * Overall structure confidence (0-1).
1714
+ */
1715
+ structure_confidence: number;
1716
+ }
1717
+
1718
+ export interface Structure {
1719
+ /**
1720
+ * URL to download the file
1721
+ */
1722
+ url: string;
1723
+
1724
+ /**
1725
+ * When the presigned URL expires
1726
+ */
1727
+ url_expires_at: string;
1728
+ }
1729
+ }
1730
+
1731
+ export interface BestSample {
1732
+ metrics: BestSample.Metrics;
1733
+
1734
+ structure: BestSample.Structure;
1735
+ }
1736
+
1737
+ export namespace BestSample {
1738
+ export interface Metrics {
1739
+ /**
1740
+ * Complex interface predicted distance error. Lower is better.
1741
+ */
1742
+ complex_ipde: number;
1743
+
1744
+ /**
1745
+ * Complex interface pLDDT (0-1 float). Confidence at inter-chain interfaces.
1746
+ */
1747
+ complex_iplddt: number;
1748
+
1749
+ /**
1750
+ * Complex predicted distance error. Lower is better.
1751
+ */
1752
+ complex_pde: number;
1753
+
1754
+ /**
1755
+ * Complex pLDDT (0-1 float). Per-residue confidence averaged over the complex.
1756
+ */
1757
+ complex_plddt: number;
1758
+
1759
+ /**
1760
+ * Interface predicted TM score (0-1). Confidence in domain interfaces.
1761
+ */
1762
+ iptm: number;
1763
+
1764
+ /**
1765
+ * Ligand interface pTM (0-1). Only present when ligands are included.
1766
+ */
1767
+ ligand_iptm: number;
1768
+
1769
+ /**
1770
+ * Protein-protein interface pTM (0-1). Only present for multi-protein complexes.
1771
+ */
1772
+ protein_iptm: number;
1773
+
1774
+ /**
1775
+ * Predicted TM score (0-1). Global structure quality.
1776
+ */
1777
+ ptm: number;
1778
+
1779
+ /**
1780
+ * Overall structure confidence (0-1).
1781
+ */
1782
+ structure_confidence: number;
1783
+ }
1784
+
1785
+ export interface Structure {
1786
+ /**
1787
+ * URL to download the file
1788
+ */
1789
+ url: string;
1790
+
1791
+ /**
1792
+ * When the presigned URL expires
1793
+ */
1794
+ url_expires_at: string;
1795
+ }
1796
+ }
1797
+
1798
+ export interface Archive {
1799
+ /**
1800
+ * URL to download the file
1801
+ */
1802
+ url: string;
1803
+
1804
+ /**
1805
+ * When the presigned URL expires
1806
+ */
1807
+ url_expires_at: string;
1808
+ }
1809
+
1810
+ export interface LigandProteinBindingMetrics {
1811
+ /**
1812
+ * Confidence that binding occurs (0-1). Primary metric for hit discovery.
1813
+ */
1814
+ binding_confidence: number;
1815
+
1816
+ /**
1817
+ * Binding strength ranking score for lead optimization. Higher values indicate
1818
+ * stronger predicted binding.
1819
+ */
1820
+ optimization_score: number;
1821
+
1822
+ type: 'ligand_protein_binding_metrics';
1823
+ }
1824
+
1825
+ export interface ProteinProteinBindingMetrics {
1826
+ /**
1827
+ * Confidence that binding occurs (0-1). Primary metric for hit discovery.
1828
+ */
1829
+ binding_confidence: number;
1830
+
1831
+ type: 'protein_protein_binding_metrics';
1832
+ }
1833
+ }
1834
+ }
1835
+
1836
+ export interface StructureAndBindingRetrieveParams {
1837
+ /**
1838
+ * Workspace ID. Only used with admin API keys. Ignored (or validated) for
1839
+ * workspace-scoped keys.
1840
+ */
1841
+ workspace_id?: string;
1842
+ }
1843
+
1844
+ export interface StructureAndBindingListParams extends CursorPageParams {
1845
+ /**
1846
+ * Filter by workspace ID. Only used with admin API keys. If not provided, defaults
1847
+ * to the workspace associated with the API key, or the default workspace for admin
1848
+ * keys.
1849
+ */
1850
+ workspace_id?: string;
1851
+ }
1852
+
1853
+ export interface StructureAndBindingEstimateCostParams {
1854
+ input: StructureAndBindingEstimateCostParams.Input;
1855
+
1856
+ /**
1857
+ * Model to use for prediction
1858
+ */
1859
+ model: 'boltz-2.1';
1860
+
1861
+ /**
1862
+ * Client-provided key to prevent duplicate submissions on retries
1863
+ */
1864
+ idempotency_key?: string;
1865
+
1866
+ /**
1867
+ * Target workspace ID (admin keys only; ignored for workspace keys)
1868
+ */
1869
+ workspace_id?: string;
1870
+ }
1871
+
1872
+ export namespace StructureAndBindingEstimateCostParams {
1873
+ export interface Input {
1874
+ /**
1875
+ * Entities (proteins, RNA, DNA, ligands) forming the complex to predict. Order
1876
+ * determines chain assignment.
1877
+ */
1878
+ entities: Array<
1879
+ | Input.ProteinEntity
1880
+ | Input.RnaEntity
1881
+ | Input.DnaEntity
1882
+ | Input.LigandCcdEntity
1883
+ | Input.LigandSmilesEntity
1884
+ >;
1885
+
1886
+ binding?: Input.LigandProteinBinding | Input.ProteinProteinBinding;
1887
+
1888
+ /**
1889
+ * Bond constraints between atoms. Atom-level ligand references currently support
1890
+ * ligand_ccd only; ligand_smiles is unsupported.
1891
+ */
1892
+ bonds?: Array<Input.Bond>;
1893
+
1894
+ /**
1895
+ * Structural constraints (pocket and contact). Atom-level ligand references
1896
+ * currently support ligand_ccd only; ligand_smiles is unsupported.
1897
+ */
1898
+ constraints?: Array<Input.PocketConstraint | Input.ContactConstraint>;
1899
+
1900
+ model_options?: Input.ModelOptions;
1901
+
1902
+ /**
1903
+ * Number of structure samples to generate
1904
+ */
1905
+ num_samples?: number;
1906
+ }
1907
+
1908
+ export namespace Input {
1909
+ export interface ProteinEntity {
1910
+ /**
1911
+ * Chain IDs for this entity
1912
+ */
1913
+ chain_ids: Array<string>;
1914
+
1915
+ type: 'protein';
1916
+
1917
+ /**
1918
+ * Amino acid sequence (one-letter codes)
1919
+ */
1920
+ value: string;
1921
+
1922
+ /**
1923
+ * Whether the sequence is cyclic
1924
+ */
1925
+ cyclic?: boolean;
1926
+
1927
+ /**
1928
+ * Post-translational modifications. Optional; defaults to an empty list when
1929
+ * omitted.
1930
+ */
1931
+ modifications?: Array<ProteinEntity.CcdModification | ProteinEntity.SmilesModification>;
1932
+ }
1933
+
1934
+ export namespace ProteinEntity {
1935
+ export interface CcdModification {
1936
+ /**
1937
+ * 0-based index of the residue to modify
1938
+ */
1939
+ residue_index: number;
1940
+
1941
+ type: 'ccd';
1942
+
1943
+ /**
1944
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
1945
+ * phosphoserine)
1946
+ */
1947
+ value: string;
1948
+ }
1949
+
1950
+ export interface SmilesModification {
1951
+ /**
1952
+ * 0-based index of the residue to modify
1953
+ */
1954
+ residue_index: number;
1955
+
1956
+ type: 'smiles';
1957
+
1958
+ /**
1959
+ * SMILES string for the modification
1960
+ */
1961
+ value: string;
1962
+ }
1963
+ }
1964
+
1965
+ export interface RnaEntity {
1966
+ /**
1967
+ * Chain IDs for this entity
1968
+ */
1969
+ chain_ids: Array<string>;
1970
+
1971
+ type: 'rna';
1972
+
1973
+ /**
1974
+ * RNA nucleotide sequence (A, C, G, U, N)
1975
+ */
1976
+ value: string;
1977
+
1978
+ /**
1979
+ * Whether the sequence is cyclic
1980
+ */
1981
+ cyclic?: boolean;
1982
+
1983
+ /**
1984
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
1985
+ */
1986
+ modifications?: Array<RnaEntity.CcdModification | RnaEntity.SmilesModification>;
1987
+ }
1988
+
1989
+ export namespace RnaEntity {
1990
+ export interface CcdModification {
1991
+ /**
1992
+ * 0-based index of the residue to modify
1993
+ */
1994
+ residue_index: number;
1995
+
1996
+ type: 'ccd';
1997
+
1998
+ /**
1999
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
2000
+ * phosphoserine)
2001
+ */
2002
+ value: string;
2003
+ }
2004
+
2005
+ export interface SmilesModification {
2006
+ /**
2007
+ * 0-based index of the residue to modify
2008
+ */
2009
+ residue_index: number;
2010
+
2011
+ type: 'smiles';
2012
+
2013
+ /**
2014
+ * SMILES string for the modification
2015
+ */
2016
+ value: string;
2017
+ }
2018
+ }
2019
+
2020
+ export interface DnaEntity {
2021
+ /**
2022
+ * Chain IDs for this entity
2023
+ */
2024
+ chain_ids: Array<string>;
2025
+
2026
+ type: 'dna';
2027
+
2028
+ /**
2029
+ * DNA nucleotide sequence (A, C, G, T, N)
2030
+ */
2031
+ value: string;
2032
+
2033
+ /**
2034
+ * Whether the sequence is cyclic
2035
+ */
2036
+ cyclic?: boolean;
2037
+
2038
+ /**
2039
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
2040
+ */
2041
+ modifications?: Array<DnaEntity.CcdModification | DnaEntity.SmilesModification>;
2042
+ }
2043
+
2044
+ export namespace DnaEntity {
2045
+ export interface CcdModification {
2046
+ /**
2047
+ * 0-based index of the residue to modify
2048
+ */
2049
+ residue_index: number;
2050
+
2051
+ type: 'ccd';
2052
+
2053
+ /**
2054
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
2055
+ * phosphoserine)
2056
+ */
2057
+ value: string;
2058
+ }
2059
+
2060
+ export interface SmilesModification {
2061
+ /**
2062
+ * 0-based index of the residue to modify
2063
+ */
2064
+ residue_index: number;
2065
+
2066
+ type: 'smiles';
2067
+
2068
+ /**
2069
+ * SMILES string for the modification
2070
+ */
2071
+ value: string;
2072
+ }
2073
+ }
2074
+
2075
+ export interface LigandCcdEntity {
2076
+ /**
2077
+ * Chain IDs for this ligand
2078
+ */
2079
+ chain_ids: Array<string>;
2080
+
2081
+ type: 'ligand_ccd';
2082
+
2083
+ /**
2084
+ * CCD code (e.g., ATP, ADP)
2085
+ */
2086
+ value: string;
2087
+ }
2088
+
2089
+ export interface LigandSmilesEntity {
2090
+ /**
2091
+ * Chain IDs for this ligand
2092
+ */
2093
+ chain_ids: Array<string>;
2094
+
2095
+ type: 'ligand_smiles';
2096
+
2097
+ /**
2098
+ * SMILES string representing the ligand
2099
+ */
2100
+ value: string;
2101
+ }
2102
+
2103
+ export interface LigandProteinBinding {
2104
+ /**
2105
+ * Chain ID of the ligand binder (must have exactly 1 copy, <50 atoms, and only
2106
+ * ligands+proteins in entities)
2107
+ */
2108
+ binder_chain_id: string;
2109
+
2110
+ type: 'ligand_protein_binding';
2111
+ }
2112
+
2113
+ export interface ProteinProteinBinding {
2114
+ /**
2115
+ * Chain IDs of the protein binders
2116
+ */
2117
+ binder_chain_ids: Array<string>;
2118
+
2119
+ type: 'protein_protein_binding';
2120
+ }
2121
+
2122
+ /**
2123
+ * Bond between two atoms. Atom-level ligand references currently support
2124
+ * ligand_ccd entities only; ligand_smiles is unsupported.
2125
+ */
2126
+ export interface Bond {
2127
+ /**
2128
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2129
+ * entities only; ligand_smiles is unsupported.
2130
+ */
2131
+ atom1: Bond.LigandAtom | Bond.PolymerAtom;
2132
+
2133
+ /**
2134
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2135
+ * entities only; ligand_smiles is unsupported.
2136
+ */
2137
+ atom2: Bond.LigandAtom | Bond.PolymerAtom;
2138
+ }
2139
+
2140
+ export namespace Bond {
2141
+ /**
2142
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2143
+ * entities only; ligand_smiles is unsupported.
2144
+ */
2145
+ export interface LigandAtom {
2146
+ /**
2147
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
2148
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
2149
+ */
2150
+ atom_name: string;
2151
+
2152
+ /**
2153
+ * Chain ID containing the atom
2154
+ */
2155
+ chain_id: string;
2156
+
2157
+ type: 'ligand_atom';
2158
+ }
2159
+
2160
+ export interface PolymerAtom {
2161
+ /**
2162
+ * Standardized atom name (verifiable in CIF file on RCSB)
2163
+ */
2164
+ atom_name: string;
2165
+
2166
+ /**
2167
+ * Chain ID containing the atom
2168
+ */
2169
+ chain_id: string;
2170
+
2171
+ /**
2172
+ * 0-based residue index
2173
+ */
2174
+ residue_index: number;
2175
+
2176
+ type: 'polymer_atom';
2177
+ }
2178
+
2179
+ /**
2180
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2181
+ * entities only; ligand_smiles is unsupported.
2182
+ */
2183
+ export interface LigandAtom {
2184
+ /**
2185
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
2186
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
2187
+ */
2188
+ atom_name: string;
2189
+
2190
+ /**
2191
+ * Chain ID containing the atom
2192
+ */
2193
+ chain_id: string;
2194
+
2195
+ type: 'ligand_atom';
2196
+ }
2197
+
2198
+ export interface PolymerAtom {
2199
+ /**
2200
+ * Standardized atom name (verifiable in CIF file on RCSB)
2201
+ */
2202
+ atom_name: string;
2203
+
2204
+ /**
2205
+ * Chain ID containing the atom
2206
+ */
2207
+ chain_id: string;
2208
+
2209
+ /**
2210
+ * 0-based residue index
2211
+ */
2212
+ residue_index: number;
2213
+
2214
+ type: 'polymer_atom';
2215
+ }
2216
+ }
2217
+
2218
+ /**
2219
+ * Constrains the binder to interact with specific pocket residues on the target.
2220
+ */
2221
+ export interface PocketConstraint {
2222
+ /**
2223
+ * Chain ID of the binder molecule
2224
+ */
2225
+ binder_chain_id: string;
2226
+
2227
+ /**
2228
+ * Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
2229
+ * the value is an array of 0-indexed residue indices that define the pocket on
2230
+ * that chain.
2231
+ */
2232
+ contact_residues: { [key: string]: Array<number> };
2233
+
2234
+ /**
2235
+ * Maximum allowed distance in Angstroms between binder and pocket residues.
2236
+ * Typical range: 4-8 A.
2237
+ */
2238
+ max_distance_angstrom: number;
2239
+
2240
+ type: 'pocket';
2241
+
2242
+ /**
2243
+ * Whether to force the constraint
2244
+ */
2245
+ force?: boolean;
2246
+ }
2247
+
2248
+ /**
2249
+ * Contact constraint between two tokens. Atom-level ligand references currently
2250
+ * support ligand_ccd entities only; ligand_smiles is unsupported.
2251
+ */
2252
+ export interface ContactConstraint {
2253
+ /**
2254
+ * Maximum distance in Angstroms
2255
+ */
2256
+ max_distance_angstrom: number;
2257
+
2258
+ /**
2259
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2260
+ * entities only; ligand_smiles is unsupported.
2261
+ */
2262
+ token1: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
2263
+
2264
+ /**
2265
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2266
+ * entities only; ligand_smiles is unsupported.
2267
+ */
2268
+ token2: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
2269
+
2270
+ type: 'contact';
2271
+
2272
+ /**
2273
+ * Whether to force the constraint
2274
+ */
2275
+ force?: boolean;
2276
+ }
2277
+
2278
+ export namespace ContactConstraint {
2279
+ export interface PolymerContactToken {
2280
+ /**
2281
+ * Chain ID
2282
+ */
2283
+ chain_id: string;
2284
+
2285
+ /**
2286
+ * 0-based residue index
2287
+ */
2288
+ residue_index: number;
2289
+
2290
+ type: 'polymer_contact';
2291
+ }
2292
+
2293
+ /**
2294
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2295
+ * entities only; ligand_smiles is unsupported.
2296
+ */
2297
+ export interface LigandContactToken {
2298
+ /**
2299
+ * Atom name. Atom-level references to ligand_smiles entities are currently
2300
+ * unsupported; use ligand_ccd instead.
2301
+ */
2302
+ atom_name: string;
2303
+
2304
+ /**
2305
+ * Chain ID
2306
+ */
2307
+ chain_id: string;
2308
+
2309
+ type: 'ligand_contact';
2310
+ }
2311
+
2312
+ export interface PolymerContactToken {
2313
+ /**
2314
+ * Chain ID
2315
+ */
2316
+ chain_id: string;
2317
+
2318
+ /**
2319
+ * 0-based residue index
2320
+ */
2321
+ residue_index: number;
2322
+
2323
+ type: 'polymer_contact';
2324
+ }
2325
+
2326
+ /**
2327
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2328
+ * entities only; ligand_smiles is unsupported.
2329
+ */
2330
+ export interface LigandContactToken {
2331
+ /**
2332
+ * Atom name. Atom-level references to ligand_smiles entities are currently
2333
+ * unsupported; use ligand_ccd instead.
2334
+ */
2335
+ atom_name: string;
2336
+
2337
+ /**
2338
+ * Chain ID
2339
+ */
2340
+ chain_id: string;
2341
+
2342
+ type: 'ligand_contact';
2343
+ }
2344
+ }
2345
+
2346
+ export interface ModelOptions {
2347
+ /**
2348
+ * The number of recycling steps to use for prediction. Default is 3.
2349
+ */
2350
+ recycling_steps?: number;
2351
+
2352
+ /**
2353
+ * The number of sampling steps to use for prediction. Default is 200.
2354
+ */
2355
+ sampling_steps?: number;
2356
+
2357
+ /**
2358
+ * Diffusion step scale (temperature). Controls sampling diversity — higher values
2359
+ * produce more varied structures. Default is 1.638.
2360
+ */
2361
+ step_scale?: number;
2362
+ }
2363
+ }
2364
+ }
2365
+
2366
+ export interface StructureAndBindingStartParams {
2367
+ input: StructureAndBindingStartParams.Input;
2368
+
2369
+ /**
2370
+ * Model to use for prediction
2371
+ */
2372
+ model: 'boltz-2.1';
2373
+
2374
+ /**
2375
+ * Client-provided key to prevent duplicate submissions on retries
2376
+ */
2377
+ idempotency_key?: string;
2378
+
2379
+ /**
2380
+ * Target workspace ID (admin keys only; ignored for workspace keys)
2381
+ */
2382
+ workspace_id?: string;
2383
+ }
2384
+
2385
+ export namespace StructureAndBindingStartParams {
2386
+ export interface Input {
2387
+ /**
2388
+ * Entities (proteins, RNA, DNA, ligands) forming the complex to predict. Order
2389
+ * determines chain assignment.
2390
+ */
2391
+ entities: Array<
2392
+ | Input.ProteinEntity
2393
+ | Input.RnaEntity
2394
+ | Input.DnaEntity
2395
+ | Input.LigandCcdEntity
2396
+ | Input.LigandSmilesEntity
2397
+ >;
2398
+
2399
+ binding?: Input.LigandProteinBinding | Input.ProteinProteinBinding;
2400
+
2401
+ /**
2402
+ * Bond constraints between atoms. Atom-level ligand references currently support
2403
+ * ligand_ccd only; ligand_smiles is unsupported.
2404
+ */
2405
+ bonds?: Array<Input.Bond>;
2406
+
2407
+ /**
2408
+ * Structural constraints (pocket and contact). Atom-level ligand references
2409
+ * currently support ligand_ccd only; ligand_smiles is unsupported.
2410
+ */
2411
+ constraints?: Array<Input.PocketConstraint | Input.ContactConstraint>;
2412
+
2413
+ model_options?: Input.ModelOptions;
2414
+
2415
+ /**
2416
+ * Number of structure samples to generate
2417
+ */
2418
+ num_samples?: number;
2419
+ }
2420
+
2421
+ export namespace Input {
2422
+ export interface ProteinEntity {
2423
+ /**
2424
+ * Chain IDs for this entity
2425
+ */
2426
+ chain_ids: Array<string>;
2427
+
2428
+ type: 'protein';
2429
+
2430
+ /**
2431
+ * Amino acid sequence (one-letter codes)
2432
+ */
2433
+ value: string;
2434
+
2435
+ /**
2436
+ * Whether the sequence is cyclic
2437
+ */
2438
+ cyclic?: boolean;
2439
+
2440
+ /**
2441
+ * Post-translational modifications. Optional; defaults to an empty list when
2442
+ * omitted.
2443
+ */
2444
+ modifications?: Array<ProteinEntity.CcdModification | ProteinEntity.SmilesModification>;
2445
+ }
2446
+
2447
+ export namespace ProteinEntity {
2448
+ export interface CcdModification {
2449
+ /**
2450
+ * 0-based index of the residue to modify
2451
+ */
2452
+ residue_index: number;
2453
+
2454
+ type: 'ccd';
2455
+
2456
+ /**
2457
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
2458
+ * phosphoserine)
2459
+ */
2460
+ value: string;
2461
+ }
2462
+
2463
+ export interface SmilesModification {
2464
+ /**
2465
+ * 0-based index of the residue to modify
2466
+ */
2467
+ residue_index: number;
2468
+
2469
+ type: 'smiles';
2470
+
2471
+ /**
2472
+ * SMILES string for the modification
2473
+ */
2474
+ value: string;
2475
+ }
2476
+ }
2477
+
2478
+ export interface RnaEntity {
2479
+ /**
2480
+ * Chain IDs for this entity
2481
+ */
2482
+ chain_ids: Array<string>;
2483
+
2484
+ type: 'rna';
2485
+
2486
+ /**
2487
+ * RNA nucleotide sequence (A, C, G, U, N)
2488
+ */
2489
+ value: string;
2490
+
2491
+ /**
2492
+ * Whether the sequence is cyclic
2493
+ */
2494
+ cyclic?: boolean;
2495
+
2496
+ /**
2497
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
2498
+ */
2499
+ modifications?: Array<RnaEntity.CcdModification | RnaEntity.SmilesModification>;
2500
+ }
2501
+
2502
+ export namespace RnaEntity {
2503
+ export interface CcdModification {
2504
+ /**
2505
+ * 0-based index of the residue to modify
2506
+ */
2507
+ residue_index: number;
2508
+
2509
+ type: 'ccd';
2510
+
2511
+ /**
2512
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
2513
+ * phosphoserine)
2514
+ */
2515
+ value: string;
2516
+ }
2517
+
2518
+ export interface SmilesModification {
2519
+ /**
2520
+ * 0-based index of the residue to modify
2521
+ */
2522
+ residue_index: number;
2523
+
2524
+ type: 'smiles';
2525
+
2526
+ /**
2527
+ * SMILES string for the modification
2528
+ */
2529
+ value: string;
2530
+ }
2531
+ }
2532
+
2533
+ export interface DnaEntity {
2534
+ /**
2535
+ * Chain IDs for this entity
2536
+ */
2537
+ chain_ids: Array<string>;
2538
+
2539
+ type: 'dna';
2540
+
2541
+ /**
2542
+ * DNA nucleotide sequence (A, C, G, T, N)
2543
+ */
2544
+ value: string;
2545
+
2546
+ /**
2547
+ * Whether the sequence is cyclic
2548
+ */
2549
+ cyclic?: boolean;
2550
+
2551
+ /**
2552
+ * Chemical modifications. Optional; defaults to an empty list when omitted.
2553
+ */
2554
+ modifications?: Array<DnaEntity.CcdModification | DnaEntity.SmilesModification>;
2555
+ }
2556
+
2557
+ export namespace DnaEntity {
2558
+ export interface CcdModification {
2559
+ /**
2560
+ * 0-based index of the residue to modify
2561
+ */
2562
+ residue_index: number;
2563
+
2564
+ type: 'ccd';
2565
+
2566
+ /**
2567
+ * CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
2568
+ * phosphoserine)
2569
+ */
2570
+ value: string;
2571
+ }
2572
+
2573
+ export interface SmilesModification {
2574
+ /**
2575
+ * 0-based index of the residue to modify
2576
+ */
2577
+ residue_index: number;
2578
+
2579
+ type: 'smiles';
2580
+
2581
+ /**
2582
+ * SMILES string for the modification
2583
+ */
2584
+ value: string;
2585
+ }
2586
+ }
2587
+
2588
+ export interface LigandCcdEntity {
2589
+ /**
2590
+ * Chain IDs for this ligand
2591
+ */
2592
+ chain_ids: Array<string>;
2593
+
2594
+ type: 'ligand_ccd';
2595
+
2596
+ /**
2597
+ * CCD code (e.g., ATP, ADP)
2598
+ */
2599
+ value: string;
2600
+ }
2601
+
2602
+ export interface LigandSmilesEntity {
2603
+ /**
2604
+ * Chain IDs for this ligand
2605
+ */
2606
+ chain_ids: Array<string>;
2607
+
2608
+ type: 'ligand_smiles';
2609
+
2610
+ /**
2611
+ * SMILES string representing the ligand
2612
+ */
2613
+ value: string;
2614
+ }
2615
+
2616
+ export interface LigandProteinBinding {
2617
+ /**
2618
+ * Chain ID of the ligand binder (must have exactly 1 copy, <50 atoms, and only
2619
+ * ligands+proteins in entities)
2620
+ */
2621
+ binder_chain_id: string;
2622
+
2623
+ type: 'ligand_protein_binding';
2624
+ }
2625
+
2626
+ export interface ProteinProteinBinding {
2627
+ /**
2628
+ * Chain IDs of the protein binders
2629
+ */
2630
+ binder_chain_ids: Array<string>;
2631
+
2632
+ type: 'protein_protein_binding';
2633
+ }
2634
+
2635
+ /**
2636
+ * Bond between two atoms. Atom-level ligand references currently support
2637
+ * ligand_ccd entities only; ligand_smiles is unsupported.
2638
+ */
2639
+ export interface Bond {
2640
+ /**
2641
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2642
+ * entities only; ligand_smiles is unsupported.
2643
+ */
2644
+ atom1: Bond.LigandAtom | Bond.PolymerAtom;
2645
+
2646
+ /**
2647
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2648
+ * entities only; ligand_smiles is unsupported.
2649
+ */
2650
+ atom2: Bond.LigandAtom | Bond.PolymerAtom;
2651
+ }
2652
+
2653
+ export namespace Bond {
2654
+ /**
2655
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2656
+ * entities only; ligand_smiles is unsupported.
2657
+ */
2658
+ export interface LigandAtom {
2659
+ /**
2660
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
2661
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
2662
+ */
2663
+ atom_name: string;
2664
+
2665
+ /**
2666
+ * Chain ID containing the atom
2667
+ */
2668
+ chain_id: string;
2669
+
2670
+ type: 'ligand_atom';
2671
+ }
2672
+
2673
+ export interface PolymerAtom {
2674
+ /**
2675
+ * Standardized atom name (verifiable in CIF file on RCSB)
2676
+ */
2677
+ atom_name: string;
2678
+
2679
+ /**
2680
+ * Chain ID containing the atom
2681
+ */
2682
+ chain_id: string;
2683
+
2684
+ /**
2685
+ * 0-based residue index
2686
+ */
2687
+ residue_index: number;
2688
+
2689
+ type: 'polymer_atom';
2690
+ }
2691
+
2692
+ /**
2693
+ * Ligand atom reference. Atom-level ligand references currently support ligand_ccd
2694
+ * entities only; ligand_smiles is unsupported.
2695
+ */
2696
+ export interface LigandAtom {
2697
+ /**
2698
+ * Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
2699
+ * to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
2700
+ */
2701
+ atom_name: string;
2702
+
2703
+ /**
2704
+ * Chain ID containing the atom
2705
+ */
2706
+ chain_id: string;
2707
+
2708
+ type: 'ligand_atom';
2709
+ }
2710
+
2711
+ export interface PolymerAtom {
2712
+ /**
2713
+ * Standardized atom name (verifiable in CIF file on RCSB)
2714
+ */
2715
+ atom_name: string;
2716
+
2717
+ /**
2718
+ * Chain ID containing the atom
2719
+ */
2720
+ chain_id: string;
2721
+
2722
+ /**
2723
+ * 0-based residue index
2724
+ */
2725
+ residue_index: number;
2726
+
2727
+ type: 'polymer_atom';
2728
+ }
2729
+ }
2730
+
2731
+ /**
2732
+ * Constrains the binder to interact with specific pocket residues on the target.
2733
+ */
2734
+ export interface PocketConstraint {
2735
+ /**
2736
+ * Chain ID of the binder molecule
2737
+ */
2738
+ binder_chain_id: string;
2739
+
2740
+ /**
2741
+ * Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
2742
+ * the value is an array of 0-indexed residue indices that define the pocket on
2743
+ * that chain.
2744
+ */
2745
+ contact_residues: { [key: string]: Array<number> };
2746
+
2747
+ /**
2748
+ * Maximum allowed distance in Angstroms between binder and pocket residues.
2749
+ * Typical range: 4-8 A.
2750
+ */
2751
+ max_distance_angstrom: number;
2752
+
2753
+ type: 'pocket';
2754
+
2755
+ /**
2756
+ * Whether to force the constraint
2757
+ */
2758
+ force?: boolean;
2759
+ }
2760
+
2761
+ /**
2762
+ * Contact constraint between two tokens. Atom-level ligand references currently
2763
+ * support ligand_ccd entities only; ligand_smiles is unsupported.
2764
+ */
2765
+ export interface ContactConstraint {
2766
+ /**
2767
+ * Maximum distance in Angstroms
2768
+ */
2769
+ max_distance_angstrom: number;
2770
+
2771
+ /**
2772
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2773
+ * entities only; ligand_smiles is unsupported.
2774
+ */
2775
+ token1: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
2776
+
2777
+ /**
2778
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2779
+ * entities only; ligand_smiles is unsupported.
2780
+ */
2781
+ token2: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
2782
+
2783
+ type: 'contact';
2784
+
2785
+ /**
2786
+ * Whether to force the constraint
2787
+ */
2788
+ force?: boolean;
2789
+ }
2790
+
2791
+ export namespace ContactConstraint {
2792
+ export interface PolymerContactToken {
2793
+ /**
2794
+ * Chain ID
2795
+ */
2796
+ chain_id: string;
2797
+
2798
+ /**
2799
+ * 0-based residue index
2800
+ */
2801
+ residue_index: number;
2802
+
2803
+ type: 'polymer_contact';
2804
+ }
2805
+
2806
+ /**
2807
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2808
+ * entities only; ligand_smiles is unsupported.
2809
+ */
2810
+ export interface LigandContactToken {
2811
+ /**
2812
+ * Atom name. Atom-level references to ligand_smiles entities are currently
2813
+ * unsupported; use ligand_ccd instead.
2814
+ */
2815
+ atom_name: string;
2816
+
2817
+ /**
2818
+ * Chain ID
2819
+ */
2820
+ chain_id: string;
2821
+
2822
+ type: 'ligand_contact';
2823
+ }
2824
+
2825
+ export interface PolymerContactToken {
2826
+ /**
2827
+ * Chain ID
2828
+ */
2829
+ chain_id: string;
2830
+
2831
+ /**
2832
+ * 0-based residue index
2833
+ */
2834
+ residue_index: number;
2835
+
2836
+ type: 'polymer_contact';
2837
+ }
2838
+
2839
+ /**
2840
+ * Ligand contact token. Atom-level ligand references currently support ligand_ccd
2841
+ * entities only; ligand_smiles is unsupported.
2842
+ */
2843
+ export interface LigandContactToken {
2844
+ /**
2845
+ * Atom name. Atom-level references to ligand_smiles entities are currently
2846
+ * unsupported; use ligand_ccd instead.
2847
+ */
2848
+ atom_name: string;
2849
+
2850
+ /**
2851
+ * Chain ID
2852
+ */
2853
+ chain_id: string;
2854
+
2855
+ type: 'ligand_contact';
2856
+ }
2857
+ }
2858
+
2859
+ export interface ModelOptions {
2860
+ /**
2861
+ * The number of recycling steps to use for prediction. Default is 3.
2862
+ */
2863
+ recycling_steps?: number;
2864
+
2865
+ /**
2866
+ * The number of sampling steps to use for prediction. Default is 200.
2867
+ */
2868
+ sampling_steps?: number;
2869
+
2870
+ /**
2871
+ * Diffusion step scale (temperature). Controls sampling diversity — higher values
2872
+ * produce more varied structures. Default is 1.638.
2873
+ */
2874
+ step_scale?: number;
2875
+ }
2876
+ }
2877
+ }
2878
+
2879
+ export declare namespace StructureAndBinding {
2880
+ export {
2881
+ type StructureAndBindingRetrieveResponse as StructureAndBindingRetrieveResponse,
2882
+ type StructureAndBindingListResponse as StructureAndBindingListResponse,
2883
+ type StructureAndBindingDeleteDataResponse as StructureAndBindingDeleteDataResponse,
2884
+ type StructureAndBindingEstimateCostResponse as StructureAndBindingEstimateCostResponse,
2885
+ type StructureAndBindingStartResponse as StructureAndBindingStartResponse,
2886
+ type StructureAndBindingListResponsesCursorPage as StructureAndBindingListResponsesCursorPage,
2887
+ type StructureAndBindingRetrieveParams as StructureAndBindingRetrieveParams,
2888
+ type StructureAndBindingListParams as StructureAndBindingListParams,
2889
+ type StructureAndBindingEstimateCostParams as StructureAndBindingEstimateCostParams,
2890
+ type StructureAndBindingStartParams as StructureAndBindingStartParams,
2891
+ };
2892
+ }