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.
- package/CHANGELOG.md +708 -0
- package/LICENSE +201 -0
- package/README.md +466 -0
- package/api-promise.d.mts +2 -0
- package/api-promise.d.mts.map +1 -0
- package/api-promise.d.ts +2 -0
- package/api-promise.d.ts.map +1 -0
- package/api-promise.js +6 -0
- package/api-promise.js.map +1 -0
- package/api-promise.mjs +2 -0
- package/api-promise.mjs.map +1 -0
- package/client.d.mts +219 -0
- package/client.d.mts.map +1 -0
- package/client.d.ts +219 -0
- package/client.d.ts.map +1 -0
- package/client.js +522 -0
- package/client.js.map +1 -0
- package/client.mjs +518 -0
- package/client.mjs.map +1 -0
- package/core/api-promise.d.mts +46 -0
- package/core/api-promise.d.mts.map +1 -0
- package/core/api-promise.d.ts +46 -0
- package/core/api-promise.d.ts.map +1 -0
- package/core/api-promise.js +74 -0
- package/core/api-promise.js.map +1 -0
- package/core/api-promise.mjs +70 -0
- package/core/api-promise.mjs.map +1 -0
- package/core/error.d.mts +46 -0
- package/core/error.d.mts.map +1 -0
- package/core/error.d.ts +46 -0
- package/core/error.d.ts.map +1 -0
- package/core/error.js +113 -0
- package/core/error.js.map +1 -0
- package/core/error.mjs +97 -0
- package/core/error.mjs.map +1 -0
- package/core/pagination.d.mts +78 -0
- package/core/pagination.d.mts.map +1 -0
- package/core/pagination.d.ts +78 -0
- package/core/pagination.d.ts.map +1 -0
- package/core/pagination.js +154 -0
- package/core/pagination.js.map +1 -0
- package/core/pagination.mjs +147 -0
- package/core/pagination.mjs.map +1 -0
- package/core/resource.d.mts +6 -0
- package/core/resource.d.mts.map +1 -0
- package/core/resource.d.ts +6 -0
- package/core/resource.d.ts.map +1 -0
- package/core/resource.js +11 -0
- package/core/resource.js.map +1 -0
- package/core/resource.mjs +7 -0
- package/core/resource.mjs.map +1 -0
- package/core/uploads.d.mts +3 -0
- package/core/uploads.d.mts.map +1 -0
- package/core/uploads.d.ts +3 -0
- package/core/uploads.d.ts.map +1 -0
- package/core/uploads.js +6 -0
- package/core/uploads.js.map +1 -0
- package/core/uploads.mjs +2 -0
- package/core/uploads.mjs.map +1 -0
- package/error.d.mts +2 -0
- package/error.d.mts.map +1 -0
- package/error.d.ts +2 -0
- package/error.d.ts.map +1 -0
- package/error.js +6 -0
- package/error.js.map +1 -0
- package/error.mjs +2 -0
- package/error.mjs.map +1 -0
- package/index.d.mts +7 -0
- package/index.d.mts.map +1 -0
- package/index.d.ts +7 -0
- package/index.d.ts.map +1 -0
- package/index.js +32 -0
- package/index.js.map +1 -0
- package/index.mjs +8 -0
- package/index.mjs.map +1 -0
- package/internal/builtin-types.d.mts +73 -0
- package/internal/builtin-types.d.mts.map +1 -0
- package/internal/builtin-types.d.ts +73 -0
- package/internal/builtin-types.d.ts.map +1 -0
- package/internal/builtin-types.js +4 -0
- package/internal/builtin-types.js.map +1 -0
- package/internal/builtin-types.mjs +3 -0
- package/internal/builtin-types.mjs.map +1 -0
- package/internal/detect-platform.d.mts +15 -0
- package/internal/detect-platform.d.mts.map +1 -0
- package/internal/detect-platform.d.ts +15 -0
- package/internal/detect-platform.d.ts.map +1 -0
- package/internal/detect-platform.js +162 -0
- package/internal/detect-platform.js.map +1 -0
- package/internal/detect-platform.mjs +157 -0
- package/internal/detect-platform.mjs.map +1 -0
- package/internal/errors.d.mts +3 -0
- package/internal/errors.d.mts.map +1 -0
- package/internal/errors.d.ts +3 -0
- package/internal/errors.d.ts.map +1 -0
- package/internal/errors.js +41 -0
- package/internal/errors.js.map +1 -0
- package/internal/errors.mjs +36 -0
- package/internal/errors.mjs.map +1 -0
- package/internal/headers.d.mts +20 -0
- package/internal/headers.d.mts.map +1 -0
- package/internal/headers.d.ts +20 -0
- package/internal/headers.d.ts.map +1 -0
- package/internal/headers.js +79 -0
- package/internal/headers.js.map +1 -0
- package/internal/headers.mjs +74 -0
- package/internal/headers.mjs.map +1 -0
- package/internal/parse.d.mts +12 -0
- package/internal/parse.d.mts.map +1 -0
- package/internal/parse.d.ts +12 -0
- package/internal/parse.d.ts.map +1 -0
- package/internal/parse.js +40 -0
- package/internal/parse.js.map +1 -0
- package/internal/parse.mjs +37 -0
- package/internal/parse.mjs.map +1 -0
- package/internal/qs/formats.d.mts +7 -0
- package/internal/qs/formats.d.mts.map +1 -0
- package/internal/qs/formats.d.ts +7 -0
- package/internal/qs/formats.d.ts.map +1 -0
- package/internal/qs/formats.js +13 -0
- package/internal/qs/formats.js.map +1 -0
- package/internal/qs/formats.mjs +9 -0
- package/internal/qs/formats.mjs.map +1 -0
- package/internal/qs/index.d.mts +10 -0
- package/internal/qs/index.d.mts.map +1 -0
- package/internal/qs/index.d.ts +10 -0
- package/internal/qs/index.d.ts.map +1 -0
- package/internal/qs/index.js +14 -0
- package/internal/qs/index.js.map +1 -0
- package/internal/qs/index.mjs +10 -0
- package/internal/qs/index.mjs.map +1 -0
- package/internal/qs/stringify.d.mts +3 -0
- package/internal/qs/stringify.d.mts.map +1 -0
- package/internal/qs/stringify.d.ts +3 -0
- package/internal/qs/stringify.d.ts.map +1 -0
- package/internal/qs/stringify.js +277 -0
- package/internal/qs/stringify.js.map +1 -0
- package/internal/qs/stringify.mjs +274 -0
- package/internal/qs/stringify.mjs.map +1 -0
- package/internal/qs/types.d.mts +57 -0
- package/internal/qs/types.d.mts.map +1 -0
- package/internal/qs/types.d.ts +57 -0
- package/internal/qs/types.d.ts.map +1 -0
- package/internal/qs/types.js +3 -0
- package/internal/qs/types.js.map +1 -0
- package/internal/qs/types.mjs +2 -0
- package/internal/qs/types.mjs.map +1 -0
- package/internal/qs/utils.d.mts +15 -0
- package/internal/qs/utils.d.mts.map +1 -0
- package/internal/qs/utils.d.ts +15 -0
- package/internal/qs/utils.d.ts.map +1 -0
- package/internal/qs/utils.js +230 -0
- package/internal/qs/utils.js.map +1 -0
- package/internal/qs/utils.mjs +217 -0
- package/internal/qs/utils.mjs.map +1 -0
- package/internal/request-options.d.mts +75 -0
- package/internal/request-options.d.mts.map +1 -0
- package/internal/request-options.d.ts +75 -0
- package/internal/request-options.d.ts.map +1 -0
- package/internal/request-options.js +14 -0
- package/internal/request-options.js.map +1 -0
- package/internal/request-options.mjs +10 -0
- package/internal/request-options.mjs.map +1 -0
- package/internal/shim-types.d.mts +17 -0
- package/internal/shim-types.d.mts.map +1 -0
- package/internal/shim-types.d.ts +17 -0
- package/internal/shim-types.d.ts.map +1 -0
- package/internal/shim-types.js +4 -0
- package/internal/shim-types.js.map +1 -0
- package/internal/shim-types.mjs +3 -0
- package/internal/shim-types.mjs.map +1 -0
- package/internal/shims.d.mts +20 -0
- package/internal/shims.d.mts.map +1 -0
- package/internal/shims.d.ts +20 -0
- package/internal/shims.d.ts.map +1 -0
- package/internal/shims.js +92 -0
- package/internal/shims.js.map +1 -0
- package/internal/shims.mjs +85 -0
- package/internal/shims.mjs.map +1 -0
- package/internal/to-file.d.mts +45 -0
- package/internal/to-file.d.mts.map +1 -0
- package/internal/to-file.d.ts +45 -0
- package/internal/to-file.d.ts.map +1 -0
- package/internal/to-file.js +91 -0
- package/internal/to-file.js.map +1 -0
- package/internal/to-file.mjs +88 -0
- package/internal/to-file.mjs.map +1 -0
- package/internal/tslib.js +81 -0
- package/internal/tslib.mjs +17 -0
- package/internal/types.d.mts +69 -0
- package/internal/types.d.mts.map +1 -0
- package/internal/types.d.ts +69 -0
- package/internal/types.d.ts.map +1 -0
- package/internal/types.js +4 -0
- package/internal/types.js.map +1 -0
- package/internal/types.mjs +3 -0
- package/internal/types.mjs.map +1 -0
- package/internal/uploads.d.mts +42 -0
- package/internal/uploads.d.mts.map +1 -0
- package/internal/uploads.d.ts +42 -0
- package/internal/uploads.d.ts.map +1 -0
- package/internal/uploads.js +141 -0
- package/internal/uploads.js.map +1 -0
- package/internal/uploads.mjs +131 -0
- package/internal/uploads.mjs.map +1 -0
- package/internal/utils/base64.d.mts +3 -0
- package/internal/utils/base64.d.mts.map +1 -0
- package/internal/utils/base64.d.ts +3 -0
- package/internal/utils/base64.d.ts.map +1 -0
- package/internal/utils/base64.js +38 -0
- package/internal/utils/base64.js.map +1 -0
- package/internal/utils/base64.mjs +33 -0
- package/internal/utils/base64.mjs.map +1 -0
- package/internal/utils/bytes.d.mts +4 -0
- package/internal/utils/bytes.d.mts.map +1 -0
- package/internal/utils/bytes.d.ts +4 -0
- package/internal/utils/bytes.d.ts.map +1 -0
- package/internal/utils/bytes.js +31 -0
- package/internal/utils/bytes.js.map +1 -0
- package/internal/utils/bytes.mjs +26 -0
- package/internal/utils/bytes.mjs.map +1 -0
- package/internal/utils/env.d.mts +9 -0
- package/internal/utils/env.d.mts.map +1 -0
- package/internal/utils/env.d.ts +9 -0
- package/internal/utils/env.d.ts.map +1 -0
- package/internal/utils/env.js +22 -0
- package/internal/utils/env.js.map +1 -0
- package/internal/utils/env.mjs +18 -0
- package/internal/utils/env.mjs.map +1 -0
- package/internal/utils/log.d.mts +37 -0
- package/internal/utils/log.d.mts.map +1 -0
- package/internal/utils/log.d.ts +37 -0
- package/internal/utils/log.d.ts.map +1 -0
- package/internal/utils/log.js +86 -0
- package/internal/utils/log.js.map +1 -0
- package/internal/utils/log.mjs +80 -0
- package/internal/utils/log.mjs.map +1 -0
- package/internal/utils/path.d.mts +15 -0
- package/internal/utils/path.d.mts.map +1 -0
- package/internal/utils/path.d.ts +15 -0
- package/internal/utils/path.d.ts.map +1 -0
- package/internal/utils/path.js +79 -0
- package/internal/utils/path.js.map +1 -0
- package/internal/utils/path.mjs +74 -0
- package/internal/utils/path.mjs.map +1 -0
- package/internal/utils/query.d.mts +2 -0
- package/internal/utils/query.d.mts.map +1 -0
- package/internal/utils/query.d.ts +2 -0
- package/internal/utils/query.d.ts.map +1 -0
- package/internal/utils/query.js +10 -0
- package/internal/utils/query.js.map +1 -0
- package/internal/utils/query.mjs +6 -0
- package/internal/utils/query.mjs.map +1 -0
- package/internal/utils/sleep.d.mts +2 -0
- package/internal/utils/sleep.d.mts.map +1 -0
- package/internal/utils/sleep.d.ts +2 -0
- package/internal/utils/sleep.d.ts.map +1 -0
- package/internal/utils/sleep.js +7 -0
- package/internal/utils/sleep.js.map +1 -0
- package/internal/utils/sleep.mjs +3 -0
- package/internal/utils/sleep.mjs.map +1 -0
- package/internal/utils/uuid.d.mts +5 -0
- package/internal/utils/uuid.d.mts.map +1 -0
- package/internal/utils/uuid.d.ts +5 -0
- package/internal/utils/uuid.d.ts.map +1 -0
- package/internal/utils/uuid.js +19 -0
- package/internal/utils/uuid.js.map +1 -0
- package/internal/utils/uuid.mjs +15 -0
- package/internal/utils/uuid.mjs.map +1 -0
- package/internal/utils/values.d.mts +18 -0
- package/internal/utils/values.d.mts.map +1 -0
- package/internal/utils/values.d.ts +18 -0
- package/internal/utils/values.d.ts.map +1 -0
- package/internal/utils/values.js +112 -0
- package/internal/utils/values.js.map +1 -0
- package/internal/utils/values.mjs +94 -0
- package/internal/utils/values.mjs.map +1 -0
- package/internal/utils.d.mts +8 -0
- package/internal/utils.d.mts.map +1 -0
- package/internal/utils.d.ts +8 -0
- package/internal/utils.d.ts.map +1 -0
- package/internal/utils.js +12 -0
- package/internal/utils.js.map +1 -0
- package/internal/utils.mjs +9 -0
- package/internal/utils.mjs.map +1 -0
- package/package.json +153 -0
- package/pagination.d.mts +2 -0
- package/pagination.d.mts.map +1 -0
- package/pagination.d.ts +2 -0
- package/pagination.d.ts.map +1 -0
- package/pagination.js +6 -0
- package/pagination.js.map +1 -0
- package/pagination.mjs +2 -0
- package/pagination.mjs.map +1 -0
- package/resource.d.mts +2 -0
- package/resource.d.mts.map +1 -0
- package/resource.d.ts +2 -0
- package/resource.d.ts.map +1 -0
- package/resource.js +6 -0
- package/resource.js.map +1 -0
- package/resource.mjs +2 -0
- package/resource.mjs.map +1 -0
- package/resources/admin/admin.d.mts +21 -0
- package/resources/admin/admin.d.mts.map +1 -0
- package/resources/admin/admin.d.ts +21 -0
- package/resources/admin/admin.d.ts.map +1 -0
- package/resources/admin/admin.js +28 -0
- package/resources/admin/admin.js.map +1 -0
- package/resources/admin/admin.mjs +23 -0
- package/resources/admin/admin.mjs.map +1 -0
- package/resources/admin/api-keys.d.mts +166 -0
- package/resources/admin/api-keys.d.mts.map +1 -0
- package/resources/admin/api-keys.d.ts +166 -0
- package/resources/admin/api-keys.d.ts.map +1 -0
- package/resources/admin/api-keys.js +35 -0
- package/resources/admin/api-keys.js.map +1 -0
- package/resources/admin/api-keys.mjs +31 -0
- package/resources/admin/api-keys.mjs.map +1 -0
- package/resources/admin/index.d.mts +5 -0
- package/resources/admin/index.d.mts.map +1 -0
- package/resources/admin/index.d.ts +5 -0
- package/resources/admin/index.d.ts.map +1 -0
- package/resources/admin/index.js +13 -0
- package/resources/admin/index.js.map +1 -0
- package/resources/admin/index.mjs +6 -0
- package/resources/admin/index.mjs.map +1 -0
- package/resources/admin/usage.d.mts +60 -0
- package/resources/admin/usage.d.mts.map +1 -0
- package/resources/admin/usage.d.ts +60 -0
- package/resources/admin/usage.d.ts.map +1 -0
- package/resources/admin/usage.js +23 -0
- package/resources/admin/usage.js.map +1 -0
- package/resources/admin/usage.mjs +19 -0
- package/resources/admin/usage.mjs.map +1 -0
- package/resources/admin/workspaces.d.mts +278 -0
- package/resources/admin/workspaces.d.mts.map +1 -0
- package/resources/admin/workspaces.d.ts +278 -0
- package/resources/admin/workspaces.d.ts.map +1 -0
- package/resources/admin/workspaces.js +48 -0
- package/resources/admin/workspaces.js.map +1 -0
- package/resources/admin/workspaces.mjs +44 -0
- package/resources/admin/workspaces.mjs.map +1 -0
- package/resources/admin.d.mts +2 -0
- package/resources/admin.d.mts.map +1 -0
- package/resources/admin.d.ts +2 -0
- package/resources/admin.d.ts.map +1 -0
- package/resources/admin.js +6 -0
- package/resources/admin.js.map +1 -0
- package/resources/admin.mjs +3 -0
- package/resources/admin.mjs.map +1 -0
- package/resources/auth.d.mts +48 -0
- package/resources/auth.d.mts.map +1 -0
- package/resources/auth.d.ts +48 -0
- package/resources/auth.d.ts.map +1 -0
- package/resources/auth.js +25 -0
- package/resources/auth.js.map +1 -0
- package/resources/auth.mjs +21 -0
- package/resources/auth.mjs.map +1 -0
- package/resources/cli.d.mts +39 -0
- package/resources/cli.d.mts.map +1 -0
- package/resources/cli.d.ts +39 -0
- package/resources/cli.d.ts.map +1 -0
- package/resources/cli.js +23 -0
- package/resources/cli.js.map +1 -0
- package/resources/cli.mjs +19 -0
- package/resources/cli.mjs.map +1 -0
- package/resources/index.d.mts +7 -0
- package/resources/index.d.mts.map +1 -0
- package/resources/index.d.ts +7 -0
- package/resources/index.d.ts.map +1 -0
- package/resources/index.js +17 -0
- package/resources/index.js.map +1 -0
- package/resources/index.mjs +8 -0
- package/resources/index.mjs.map +1 -0
- package/resources/predictions/index.d.mts +3 -0
- package/resources/predictions/index.d.mts.map +1 -0
- package/resources/predictions/index.d.ts +3 -0
- package/resources/predictions/index.d.ts.map +1 -0
- package/resources/predictions/index.js +9 -0
- package/resources/predictions/index.js.map +1 -0
- package/resources/predictions/index.mjs +4 -0
- package/resources/predictions/index.mjs.map +1 -0
- package/resources/predictions/predictions.d.mts +13 -0
- package/resources/predictions/predictions.d.mts.map +1 -0
- package/resources/predictions/predictions.d.ts +13 -0
- package/resources/predictions/predictions.d.ts.map +1 -0
- package/resources/predictions/predictions.js +20 -0
- package/resources/predictions/predictions.js.map +1 -0
- package/resources/predictions/predictions.mjs +15 -0
- package/resources/predictions/predictions.mjs.map +1 -0
- package/resources/predictions/structure-and-binding.d.mts +2295 -0
- package/resources/predictions/structure-and-binding.d.mts.map +1 -0
- package/resources/predictions/structure-and-binding.d.ts +2295 -0
- package/resources/predictions/structure-and-binding.d.ts.map +1 -0
- package/resources/predictions/structure-and-binding.js +111 -0
- package/resources/predictions/structure-and-binding.js.map +1 -0
- package/resources/predictions/structure-and-binding.mjs +107 -0
- package/resources/predictions/structure-and-binding.mjs.map +1 -0
- package/resources/predictions.d.mts +2 -0
- package/resources/predictions.d.mts.map +1 -0
- package/resources/predictions.d.ts +2 -0
- package/resources/predictions.d.ts.map +1 -0
- package/resources/predictions.js +6 -0
- package/resources/predictions.js.map +1 -0
- package/resources/predictions.mjs +3 -0
- package/resources/predictions.mjs.map +1 -0
- package/resources/protein/design.d.mts +5760 -0
- package/resources/protein/design.d.mts.map +1 -0
- package/resources/protein/design.d.ts +5760 -0
- package/resources/protein/design.d.ts.map +1 -0
- package/resources/protein/design.js +157 -0
- package/resources/protein/design.js.map +1 -0
- package/resources/protein/design.mjs +153 -0
- package/resources/protein/design.mjs.map +1 -0
- package/resources/protein/index.d.mts +4 -0
- package/resources/protein/index.d.mts.map +1 -0
- package/resources/protein/index.d.ts +4 -0
- package/resources/protein/index.d.ts.map +1 -0
- package/resources/protein/index.js +11 -0
- package/resources/protein/index.js.map +1 -0
- package/resources/protein/index.mjs +5 -0
- package/resources/protein/index.mjs.map +1 -0
- package/resources/protein/library-screen.d.mts +3428 -0
- package/resources/protein/library-screen.d.mts.map +1 -0
- package/resources/protein/library-screen.d.ts +3428 -0
- package/resources/protein/library-screen.d.ts.map +1 -0
- package/resources/protein/library-screen.js +158 -0
- package/resources/protein/library-screen.js.map +1 -0
- package/resources/protein/library-screen.mjs +154 -0
- package/resources/protein/library-screen.mjs.map +1 -0
- package/resources/protein/protein.d.mts +17 -0
- package/resources/protein/protein.d.mts.map +1 -0
- package/resources/protein/protein.d.ts +17 -0
- package/resources/protein/protein.d.ts.map +1 -0
- package/resources/protein/protein.js +24 -0
- package/resources/protein/protein.js.map +1 -0
- package/resources/protein/protein.mjs +19 -0
- package/resources/protein/protein.mjs.map +1 -0
- package/resources/protein.d.mts +2 -0
- package/resources/protein.d.mts.map +1 -0
- package/resources/protein.d.ts +2 -0
- package/resources/protein.d.ts.map +1 -0
- package/resources/protein.js +6 -0
- package/resources/protein.js.map +1 -0
- package/resources/protein.mjs +3 -0
- package/resources/protein.mjs.map +1 -0
- package/resources/small-molecule/design.d.mts +3428 -0
- package/resources/small-molecule/design.d.mts.map +1 -0
- package/resources/small-molecule/design.d.ts +3428 -0
- package/resources/small-molecule/design.d.ts.map +1 -0
- package/resources/small-molecule/design.js +135 -0
- package/resources/small-molecule/design.js.map +1 -0
- package/resources/small-molecule/design.mjs +131 -0
- package/resources/small-molecule/design.mjs.map +1 -0
- package/resources/small-molecule/index.d.mts +4 -0
- package/resources/small-molecule/index.d.mts.map +1 -0
- package/resources/small-molecule/index.d.ts +4 -0
- package/resources/small-molecule/index.d.ts.map +1 -0
- package/resources/small-molecule/index.js +11 -0
- package/resources/small-molecule/index.js.map +1 -0
- package/resources/small-molecule/index.mjs +5 -0
- package/resources/small-molecule/index.mjs.map +1 -0
- package/resources/small-molecule/library-screen.d.mts +3494 -0
- package/resources/small-molecule/library-screen.d.mts.map +1 -0
- package/resources/small-molecule/library-screen.d.ts +3494 -0
- package/resources/small-molecule/library-screen.d.ts.map +1 -0
- package/resources/small-molecule/library-screen.js +129 -0
- package/resources/small-molecule/library-screen.js.map +1 -0
- package/resources/small-molecule/library-screen.mjs +125 -0
- package/resources/small-molecule/library-screen.mjs.map +1 -0
- package/resources/small-molecule/small-molecule.d.mts +17 -0
- package/resources/small-molecule/small-molecule.d.mts.map +1 -0
- package/resources/small-molecule/small-molecule.d.ts +17 -0
- package/resources/small-molecule/small-molecule.d.ts.map +1 -0
- package/resources/small-molecule/small-molecule.js +24 -0
- package/resources/small-molecule/small-molecule.js.map +1 -0
- package/resources/small-molecule/small-molecule.mjs +19 -0
- package/resources/small-molecule/small-molecule.mjs.map +1 -0
- package/resources/small-molecule.d.mts +2 -0
- package/resources/small-molecule.d.mts.map +1 -0
- package/resources/small-molecule.d.ts +2 -0
- package/resources/small-molecule.d.ts.map +1 -0
- package/resources/small-molecule.js +6 -0
- package/resources/small-molecule.js.map +1 -0
- package/resources/small-molecule.mjs +3 -0
- package/resources/small-molecule.mjs.map +1 -0
- package/resources.d.mts +2 -0
- package/resources.d.mts.map +1 -0
- package/resources.d.ts +2 -0
- package/resources.d.ts.map +1 -0
- package/resources.js +5 -0
- package/resources.js.map +1 -0
- package/resources.mjs +2 -0
- package/resources.mjs.map +1 -0
- package/src/api-promise.ts +2 -0
- package/src/client.ts +833 -0
- package/src/core/README.md +3 -0
- package/src/core/api-promise.ts +92 -0
- package/src/core/error.ts +130 -0
- package/src/core/pagination.ts +255 -0
- package/src/core/resource.ts +11 -0
- package/src/core/uploads.ts +2 -0
- package/src/error.ts +2 -0
- package/src/index.ts +23 -0
- package/src/internal/README.md +3 -0
- package/src/internal/builtin-types.ts +93 -0
- package/src/internal/detect-platform.ts +196 -0
- package/src/internal/errors.ts +33 -0
- package/src/internal/headers.ts +97 -0
- package/src/internal/parse.ts +56 -0
- package/src/internal/qs/LICENSE.md +13 -0
- package/src/internal/qs/README.md +3 -0
- package/src/internal/qs/formats.ts +10 -0
- package/src/internal/qs/index.ts +13 -0
- package/src/internal/qs/stringify.ts +385 -0
- package/src/internal/qs/types.ts +71 -0
- package/src/internal/qs/utils.ts +265 -0
- package/src/internal/request-options.ts +91 -0
- package/src/internal/shim-types.ts +26 -0
- package/src/internal/shims.ts +107 -0
- package/src/internal/to-file.ts +154 -0
- package/src/internal/types.ts +93 -0
- package/src/internal/uploads.ts +187 -0
- package/src/internal/utils/base64.ts +40 -0
- package/src/internal/utils/bytes.ts +32 -0
- package/src/internal/utils/env.ts +18 -0
- package/src/internal/utils/log.ts +127 -0
- package/src/internal/utils/path.ts +88 -0
- package/src/internal/utils/query.ts +7 -0
- package/src/internal/utils/sleep.ts +3 -0
- package/src/internal/utils/uuid.ts +17 -0
- package/src/internal/utils/values.ts +105 -0
- package/src/internal/utils.ts +9 -0
- package/src/lib/.keep +4 -0
- package/src/pagination.ts +2 -0
- package/src/resource.ts +2 -0
- package/src/resources/admin/admin.ts +73 -0
- package/src/resources/admin/api-keys.ts +233 -0
- package/src/resources/admin/index.ts +30 -0
- package/src/resources/admin/usage.ts +107 -0
- package/src/resources/admin/workspaces.ts +370 -0
- package/src/resources/admin.ts +3 -0
- package/src/resources/auth.ts +68 -0
- package/src/resources/cli.ts +57 -0
- package/src/resources/index.ts +8 -0
- package/src/resources/predictions/index.ts +16 -0
- package/src/resources/predictions/predictions.ts +43 -0
- package/src/resources/predictions/structure-and-binding.ts +2892 -0
- package/src/resources/predictions.ts +3 -0
- package/src/resources/protein/design.ts +7175 -0
- package/src/resources/protein/index.ts +37 -0
- package/src/resources/protein/library-screen.ts +4306 -0
- package/src/resources/protein/protein.ts +88 -0
- package/src/resources/protein.ts +3 -0
- package/src/resources/small-molecule/design.ts +4229 -0
- package/src/resources/small-molecule/index.ts +37 -0
- package/src/resources/small-molecule/library-screen.ts +4312 -0
- package/src/resources/small-molecule/small-molecule.ts +88 -0
- package/src/resources/small-molecule.ts +3 -0
- package/src/resources.ts +1 -0
- package/src/tsconfig.json +11 -0
- package/src/uploads.ts +2 -0
- package/src/version.ts +1 -0
- package/uploads.d.mts +2 -0
- package/uploads.d.mts.map +1 -0
- package/uploads.d.ts +2 -0
- package/uploads.d.ts.map +1 -0
- package/uploads.js +6 -0
- package/uploads.js.map +1 -0
- package/uploads.mjs +2 -0
- package/uploads.mjs.map +1 -0
- package/version.d.mts +2 -0
- package/version.d.mts.map +1 -0
- package/version.d.ts +2 -0
- package/version.d.ts.map +1 -0
- package/version.js +5 -0
- package/version.js.map +1 -0
- package/version.mjs +2 -0
- package/version.mjs.map +1 -0
|
@@ -0,0 +1,3494 @@
|
|
|
1
|
+
import { APIResource } from "../../core/resource.js";
|
|
2
|
+
import { APIPromise } from "../../core/api-promise.js";
|
|
3
|
+
import { CursorPage, type CursorPageParams, PagePromise } from "../../core/pagination.js";
|
|
4
|
+
import { RequestOptions } from "../../internal/request-options.js";
|
|
5
|
+
/**
|
|
6
|
+
* Screen an existing library of small molecules against a protein target. Results are scored by binding confidence (likelihood of binding, for hit discovery), optimization score (binding strength ranking, for lead optimization), and structure confidence.
|
|
7
|
+
*/
|
|
8
|
+
export declare class LibraryScreen extends APIResource {
|
|
9
|
+
/**
|
|
10
|
+
* Retrieve a library screen by ID, including progress and status
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const libraryScreen =
|
|
15
|
+
* await client.smallMolecule.libraryScreen.retrieve('id');
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
retrieve(id: string, query?: LibraryScreenRetrieveParams | null | undefined, options?: RequestOptions): APIPromise<LibraryScreenRetrieveResponse>;
|
|
19
|
+
/**
|
|
20
|
+
* List small molecule library screens, optionally filtered by workspace
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* // Automatically fetches more pages as needed.
|
|
25
|
+
* for await (const libraryScreenListResponse of client.smallMolecule.libraryScreen.list()) {
|
|
26
|
+
* // ...
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
list(query?: LibraryScreenListParams | null | undefined, options?: RequestOptions): PagePromise<LibraryScreenListResponsesCursorPage, LibraryScreenListResponse>;
|
|
31
|
+
/**
|
|
32
|
+
* Permanently delete the input, output, and result data associated with this
|
|
33
|
+
* library screen. The library screen record itself is retained with a
|
|
34
|
+
* `data_deleted_at` timestamp. This action is irreversible.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```ts
|
|
38
|
+
* const response =
|
|
39
|
+
* await client.smallMolecule.libraryScreen.deleteData('id');
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
deleteData(id: string, options?: RequestOptions): APIPromise<LibraryScreenDeleteDataResponse>;
|
|
43
|
+
/**
|
|
44
|
+
* Estimate the cost of a small molecule library screen without creating any
|
|
45
|
+
* resource or consuming GPU.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```ts
|
|
49
|
+
* const response =
|
|
50
|
+
* await client.smallMolecule.libraryScreen.estimateCost({
|
|
51
|
+
* molecules: [{ smiles: 'smiles' }],
|
|
52
|
+
* target: {
|
|
53
|
+
* entities: [
|
|
54
|
+
* {
|
|
55
|
+
* chain_ids: ['string'],
|
|
56
|
+
* type: 'protein',
|
|
57
|
+
* value: 'value',
|
|
58
|
+
* },
|
|
59
|
+
* ],
|
|
60
|
+
* },
|
|
61
|
+
* });
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
estimateCost(body: LibraryScreenEstimateCostParams, options?: RequestOptions): APIPromise<LibraryScreenEstimateCostResponse>;
|
|
65
|
+
/**
|
|
66
|
+
* Retrieve paginated results from a library screen
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* // Automatically fetches more pages as needed.
|
|
71
|
+
* for await (const libraryScreenListResultsResponse of client.smallMolecule.libraryScreen.listResults(
|
|
72
|
+
* 'id',
|
|
73
|
+
* )) {
|
|
74
|
+
* // ...
|
|
75
|
+
* }
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
listResults(id: string, query?: LibraryScreenListResultsParams | null | undefined, options?: RequestOptions): PagePromise<LibraryScreenListResultsResponsesCursorPage, LibraryScreenListResultsResponse>;
|
|
79
|
+
/**
|
|
80
|
+
* Screen a set of small molecule candidates against a protein target
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* const response =
|
|
85
|
+
* await client.smallMolecule.libraryScreen.start({
|
|
86
|
+
* molecules: [{ smiles: 'smiles' }],
|
|
87
|
+
* target: {
|
|
88
|
+
* entities: [
|
|
89
|
+
* {
|
|
90
|
+
* chain_ids: ['string'],
|
|
91
|
+
* type: 'protein',
|
|
92
|
+
* value: 'value',
|
|
93
|
+
* },
|
|
94
|
+
* ],
|
|
95
|
+
* },
|
|
96
|
+
* });
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
start(body: LibraryScreenStartParams, options?: RequestOptions): APIPromise<LibraryScreenStartResponse>;
|
|
100
|
+
/**
|
|
101
|
+
* Stop an in-progress library screen early
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* const response =
|
|
106
|
+
* await client.smallMolecule.libraryScreen.stop('id');
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
stop(id: string, options?: RequestOptions): APIPromise<LibraryScreenStopResponse>;
|
|
110
|
+
}
|
|
111
|
+
export type LibraryScreenListResponsesCursorPage = CursorPage<LibraryScreenListResponse>;
|
|
112
|
+
export type LibraryScreenListResultsResponsesCursorPage = CursorPage<LibraryScreenListResultsResponse>;
|
|
113
|
+
/**
|
|
114
|
+
* A small molecule library screening engine run
|
|
115
|
+
*/
|
|
116
|
+
export interface LibraryScreenRetrieveResponse {
|
|
117
|
+
/**
|
|
118
|
+
* Unique SmScreen identifier
|
|
119
|
+
*/
|
|
120
|
+
id: string;
|
|
121
|
+
completed_at: string | null;
|
|
122
|
+
created_at: string;
|
|
123
|
+
/**
|
|
124
|
+
* When the input, output, and result data was permanently deleted. Null if data
|
|
125
|
+
* has not been deleted.
|
|
126
|
+
*/
|
|
127
|
+
data_deleted_at: string | null;
|
|
128
|
+
/**
|
|
129
|
+
* Engine used for small molecule library screen
|
|
130
|
+
*/
|
|
131
|
+
engine: 'boltz-sm-screen';
|
|
132
|
+
/**
|
|
133
|
+
* Engine version used for small molecule library screen
|
|
134
|
+
*/
|
|
135
|
+
engine_version: string;
|
|
136
|
+
error: LibraryScreenRetrieveResponse.Error | null;
|
|
137
|
+
/**
|
|
138
|
+
* Pipeline input (null if data deleted)
|
|
139
|
+
*/
|
|
140
|
+
input: LibraryScreenRetrieveResponse.Input | null;
|
|
141
|
+
/**
|
|
142
|
+
* Whether this resource was created with a live API key.
|
|
143
|
+
*/
|
|
144
|
+
livemode: boolean;
|
|
145
|
+
progress: LibraryScreenRetrieveResponse.Progress | null;
|
|
146
|
+
started_at: string | null;
|
|
147
|
+
status: 'pending' | 'running' | 'succeeded' | 'failed' | 'stopped';
|
|
148
|
+
stopped_at: string | null;
|
|
149
|
+
/**
|
|
150
|
+
* Workspace ID
|
|
151
|
+
*/
|
|
152
|
+
workspace_id: string;
|
|
153
|
+
/**
|
|
154
|
+
* Client-provided idempotency key
|
|
155
|
+
*/
|
|
156
|
+
idempotency_key?: string;
|
|
157
|
+
}
|
|
158
|
+
export declare namespace LibraryScreenRetrieveResponse {
|
|
159
|
+
interface Error {
|
|
160
|
+
/**
|
|
161
|
+
* Machine-readable error code
|
|
162
|
+
*/
|
|
163
|
+
code: string;
|
|
164
|
+
/**
|
|
165
|
+
* Human-readable error message
|
|
166
|
+
*/
|
|
167
|
+
message: string;
|
|
168
|
+
/**
|
|
169
|
+
* Additional field-level error details keyed by input path, when available.
|
|
170
|
+
*/
|
|
171
|
+
details?: unknown;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Pipeline input (null if data deleted)
|
|
175
|
+
*/
|
|
176
|
+
interface Input {
|
|
177
|
+
molecules: Input.Molecules;
|
|
178
|
+
/**
|
|
179
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
180
|
+
*/
|
|
181
|
+
target: Input.Target;
|
|
182
|
+
/**
|
|
183
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
184
|
+
* and custom filters.
|
|
185
|
+
*/
|
|
186
|
+
molecule_filters?: Input.MoleculeFilters;
|
|
187
|
+
}
|
|
188
|
+
namespace Input {
|
|
189
|
+
interface Molecules {
|
|
190
|
+
/**
|
|
191
|
+
* URL to download the file
|
|
192
|
+
*/
|
|
193
|
+
url: string;
|
|
194
|
+
/**
|
|
195
|
+
* When the presigned URL expires
|
|
196
|
+
*/
|
|
197
|
+
url_expires_at: string;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
201
|
+
*/
|
|
202
|
+
interface Target {
|
|
203
|
+
/**
|
|
204
|
+
* Protein entities defining the target structure. Each entity represents a protein
|
|
205
|
+
* chain.
|
|
206
|
+
*/
|
|
207
|
+
entities: Array<Target.Entity>;
|
|
208
|
+
/**
|
|
209
|
+
* Covalent bond constraints between atoms in the target complex. Atom-level ligand
|
|
210
|
+
* references currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
211
|
+
*/
|
|
212
|
+
bonds?: Array<Target.Bond>;
|
|
213
|
+
/**
|
|
214
|
+
* Structural constraints (pocket and contact). Atom-level ligand references
|
|
215
|
+
* currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
216
|
+
*/
|
|
217
|
+
constraints?: Array<Target.PocketConstraintResponse | Target.ContactConstraintResponse>;
|
|
218
|
+
/**
|
|
219
|
+
* Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. "A")
|
|
220
|
+
* and the value is an array of 0-indexed residue indices that define the binding
|
|
221
|
+
* pocket on that chain. When provided, these residues guide pocket extraction and
|
|
222
|
+
* add a derived pocket constraint during affinity predictions. That derived
|
|
223
|
+
* constraint remains separate from any explicit pocket constraints in
|
|
224
|
+
* target.constraints. When omitted, the model auto-detects the pocket.
|
|
225
|
+
*/
|
|
226
|
+
pocket_residues?: {
|
|
227
|
+
[key: string]: Array<number>;
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Reference ligands as SMILES strings that help the model identify the binding
|
|
231
|
+
* pocket. When omitted, a set of drug-like default ligands is used for pocket
|
|
232
|
+
* detection.
|
|
233
|
+
*/
|
|
234
|
+
reference_ligands?: Array<string>;
|
|
235
|
+
}
|
|
236
|
+
namespace Target {
|
|
237
|
+
interface Entity {
|
|
238
|
+
/**
|
|
239
|
+
* Chain IDs for this entity
|
|
240
|
+
*/
|
|
241
|
+
chain_ids: Array<string>;
|
|
242
|
+
type: 'protein';
|
|
243
|
+
/**
|
|
244
|
+
* Amino acid sequence (one-letter codes)
|
|
245
|
+
*/
|
|
246
|
+
value: string;
|
|
247
|
+
/**
|
|
248
|
+
* Whether the sequence is cyclic
|
|
249
|
+
*/
|
|
250
|
+
cyclic?: boolean;
|
|
251
|
+
/**
|
|
252
|
+
* Post-translational modifications. Optional; defaults to an empty list when
|
|
253
|
+
* omitted.
|
|
254
|
+
*/
|
|
255
|
+
modifications?: Array<Entity.CcdModificationResponse | Entity.SmilesModificationResponse>;
|
|
256
|
+
}
|
|
257
|
+
namespace Entity {
|
|
258
|
+
interface CcdModificationResponse {
|
|
259
|
+
/**
|
|
260
|
+
* 0-based index of the residue to modify
|
|
261
|
+
*/
|
|
262
|
+
residue_index: number;
|
|
263
|
+
type: 'ccd';
|
|
264
|
+
/**
|
|
265
|
+
* CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
|
|
266
|
+
* phosphoserine)
|
|
267
|
+
*/
|
|
268
|
+
value: string;
|
|
269
|
+
}
|
|
270
|
+
interface SmilesModificationResponse {
|
|
271
|
+
/**
|
|
272
|
+
* 0-based index of the residue to modify
|
|
273
|
+
*/
|
|
274
|
+
residue_index: number;
|
|
275
|
+
type: 'smiles';
|
|
276
|
+
/**
|
|
277
|
+
* SMILES string for the modification
|
|
278
|
+
*/
|
|
279
|
+
value: string;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Bond between two atoms. Atom-level ligand references currently support
|
|
284
|
+
* ligand_ccd entities only; ligand_smiles is unsupported.
|
|
285
|
+
*/
|
|
286
|
+
interface Bond {
|
|
287
|
+
/**
|
|
288
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
289
|
+
* entities only; ligand_smiles is unsupported.
|
|
290
|
+
*/
|
|
291
|
+
atom1: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
292
|
+
/**
|
|
293
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
294
|
+
* entities only; ligand_smiles is unsupported.
|
|
295
|
+
*/
|
|
296
|
+
atom2: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
297
|
+
}
|
|
298
|
+
namespace Bond {
|
|
299
|
+
/**
|
|
300
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
301
|
+
* entities only; ligand_smiles is unsupported.
|
|
302
|
+
*/
|
|
303
|
+
interface LigandAtomResponse {
|
|
304
|
+
/**
|
|
305
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
306
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
307
|
+
*/
|
|
308
|
+
atom_name: string;
|
|
309
|
+
/**
|
|
310
|
+
* Chain ID containing the atom
|
|
311
|
+
*/
|
|
312
|
+
chain_id: string;
|
|
313
|
+
type: 'ligand_atom';
|
|
314
|
+
}
|
|
315
|
+
interface PolymerAtomResponse {
|
|
316
|
+
/**
|
|
317
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
318
|
+
*/
|
|
319
|
+
atom_name: string;
|
|
320
|
+
/**
|
|
321
|
+
* Chain ID containing the atom
|
|
322
|
+
*/
|
|
323
|
+
chain_id: string;
|
|
324
|
+
/**
|
|
325
|
+
* 0-based residue index
|
|
326
|
+
*/
|
|
327
|
+
residue_index: number;
|
|
328
|
+
type: 'polymer_atom';
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
332
|
+
* entities only; ligand_smiles is unsupported.
|
|
333
|
+
*/
|
|
334
|
+
interface LigandAtomResponse {
|
|
335
|
+
/**
|
|
336
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
337
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
338
|
+
*/
|
|
339
|
+
atom_name: string;
|
|
340
|
+
/**
|
|
341
|
+
* Chain ID containing the atom
|
|
342
|
+
*/
|
|
343
|
+
chain_id: string;
|
|
344
|
+
type: 'ligand_atom';
|
|
345
|
+
}
|
|
346
|
+
interface PolymerAtomResponse {
|
|
347
|
+
/**
|
|
348
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
349
|
+
*/
|
|
350
|
+
atom_name: string;
|
|
351
|
+
/**
|
|
352
|
+
* Chain ID containing the atom
|
|
353
|
+
*/
|
|
354
|
+
chain_id: string;
|
|
355
|
+
/**
|
|
356
|
+
* 0-based residue index
|
|
357
|
+
*/
|
|
358
|
+
residue_index: number;
|
|
359
|
+
type: 'polymer_atom';
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* Constrains the binder to interact with specific pocket residues on the target.
|
|
364
|
+
*/
|
|
365
|
+
interface PocketConstraintResponse {
|
|
366
|
+
/**
|
|
367
|
+
* Chain ID of the binder molecule
|
|
368
|
+
*/
|
|
369
|
+
binder_chain_id: string;
|
|
370
|
+
/**
|
|
371
|
+
* Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
|
|
372
|
+
* the value is an array of 0-indexed residue indices that define the pocket on
|
|
373
|
+
* that chain.
|
|
374
|
+
*/
|
|
375
|
+
contact_residues: {
|
|
376
|
+
[key: string]: Array<number>;
|
|
377
|
+
};
|
|
378
|
+
/**
|
|
379
|
+
* Maximum allowed distance in Angstroms between binder and pocket residues.
|
|
380
|
+
* Typical range: 4-8 A.
|
|
381
|
+
*/
|
|
382
|
+
max_distance_angstrom: number;
|
|
383
|
+
type: 'pocket';
|
|
384
|
+
/**
|
|
385
|
+
* Whether to force the constraint
|
|
386
|
+
*/
|
|
387
|
+
force?: boolean;
|
|
388
|
+
}
|
|
389
|
+
/**
|
|
390
|
+
* Contact constraint between two tokens. Atom-level ligand references currently
|
|
391
|
+
* support ligand_ccd entities only; ligand_smiles is unsupported.
|
|
392
|
+
*/
|
|
393
|
+
interface ContactConstraintResponse {
|
|
394
|
+
/**
|
|
395
|
+
* Maximum distance in Angstroms
|
|
396
|
+
*/
|
|
397
|
+
max_distance_angstrom: number;
|
|
398
|
+
/**
|
|
399
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
400
|
+
* entities only; ligand_smiles is unsupported.
|
|
401
|
+
*/
|
|
402
|
+
token1: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
403
|
+
/**
|
|
404
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
405
|
+
* entities only; ligand_smiles is unsupported.
|
|
406
|
+
*/
|
|
407
|
+
token2: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
408
|
+
type: 'contact';
|
|
409
|
+
/**
|
|
410
|
+
* Whether to force the constraint
|
|
411
|
+
*/
|
|
412
|
+
force?: boolean;
|
|
413
|
+
}
|
|
414
|
+
namespace ContactConstraintResponse {
|
|
415
|
+
interface PolymerContactTokenResponse {
|
|
416
|
+
/**
|
|
417
|
+
* Chain ID
|
|
418
|
+
*/
|
|
419
|
+
chain_id: string;
|
|
420
|
+
/**
|
|
421
|
+
* 0-based residue index
|
|
422
|
+
*/
|
|
423
|
+
residue_index: number;
|
|
424
|
+
type: 'polymer_contact';
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
428
|
+
* entities only; ligand_smiles is unsupported.
|
|
429
|
+
*/
|
|
430
|
+
interface LigandContactTokenResponse {
|
|
431
|
+
/**
|
|
432
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
433
|
+
* unsupported; use ligand_ccd instead.
|
|
434
|
+
*/
|
|
435
|
+
atom_name: string;
|
|
436
|
+
/**
|
|
437
|
+
* Chain ID
|
|
438
|
+
*/
|
|
439
|
+
chain_id: string;
|
|
440
|
+
type: 'ligand_contact';
|
|
441
|
+
}
|
|
442
|
+
interface PolymerContactTokenResponse {
|
|
443
|
+
/**
|
|
444
|
+
* Chain ID
|
|
445
|
+
*/
|
|
446
|
+
chain_id: string;
|
|
447
|
+
/**
|
|
448
|
+
* 0-based residue index
|
|
449
|
+
*/
|
|
450
|
+
residue_index: number;
|
|
451
|
+
type: 'polymer_contact';
|
|
452
|
+
}
|
|
453
|
+
/**
|
|
454
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
455
|
+
* entities only; ligand_smiles is unsupported.
|
|
456
|
+
*/
|
|
457
|
+
interface LigandContactTokenResponse {
|
|
458
|
+
/**
|
|
459
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
460
|
+
* unsupported; use ligand_ccd instead.
|
|
461
|
+
*/
|
|
462
|
+
atom_name: string;
|
|
463
|
+
/**
|
|
464
|
+
* Chain ID
|
|
465
|
+
*/
|
|
466
|
+
chain_id: string;
|
|
467
|
+
type: 'ligand_contact';
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
/**
|
|
472
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
473
|
+
* and custom filters.
|
|
474
|
+
*/
|
|
475
|
+
interface MoleculeFilters {
|
|
476
|
+
/**
|
|
477
|
+
* Controls the stringency of Boltz's built-in SMARTS structural alert filtering,
|
|
478
|
+
* which removes molecules matching known problematic substructures. 'recommended'
|
|
479
|
+
* (default): applies a curated set of alerts balancing safety and hit rate.
|
|
480
|
+
* 'extra': adds additional alerts beyond the recommended set for stricter
|
|
481
|
+
* filtering. 'aggressive': applies the most comprehensive alert set — may reject
|
|
482
|
+
* viable molecules. 'disabled': turns off Boltz SMARTS filtering entirely; only
|
|
483
|
+
* custom_filters will be applied.
|
|
484
|
+
*/
|
|
485
|
+
boltz_smarts_catalog_filter_level?: 'recommended' | 'extra' | 'aggressive' | 'disabled';
|
|
486
|
+
/**
|
|
487
|
+
* Custom filters to apply. Molecules must pass all filters (AND logic).
|
|
488
|
+
*/
|
|
489
|
+
custom_filters?: Array<MoleculeFilters.LipinskiFilterResponse | MoleculeFilters.RdkitDescriptorFilterResponse | MoleculeFilters.SmartsCustomFilterResponse | MoleculeFilters.SmartsCatalogFilterResponse | MoleculeFilters.SmilesRegexFilterResponse>;
|
|
490
|
+
}
|
|
491
|
+
namespace MoleculeFilters {
|
|
492
|
+
/**
|
|
493
|
+
* Lipinski's Rule of Five filter. Rejects molecules that violate drug-likeness
|
|
494
|
+
* criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen
|
|
495
|
+
* bond acceptors.
|
|
496
|
+
*/
|
|
497
|
+
interface LipinskiFilterResponse {
|
|
498
|
+
/**
|
|
499
|
+
* Maximum number of hydrogen bond acceptors. Lipinski threshold: 10
|
|
500
|
+
*/
|
|
501
|
+
max_hba: number;
|
|
502
|
+
/**
|
|
503
|
+
* Maximum number of hydrogen bond donors. Lipinski threshold: 5
|
|
504
|
+
*/
|
|
505
|
+
max_hbd: number;
|
|
506
|
+
/**
|
|
507
|
+
* Maximum LogP. Lipinski threshold: 5
|
|
508
|
+
*/
|
|
509
|
+
max_logp: number;
|
|
510
|
+
/**
|
|
511
|
+
* Maximum molecular weight (Da). Lipinski threshold: 500
|
|
512
|
+
*/
|
|
513
|
+
max_mw: number;
|
|
514
|
+
type: 'lipinski_filter';
|
|
515
|
+
/**
|
|
516
|
+
* If true, one rule violation is allowed (classic Rule of Five). Defaults to false
|
|
517
|
+
* (all rules must pass).
|
|
518
|
+
*/
|
|
519
|
+
allow_single_violation?: boolean;
|
|
520
|
+
}
|
|
521
|
+
/**
|
|
522
|
+
* Filter molecules by RDKit molecular descriptors. Each descriptor is constrained
|
|
523
|
+
* to a min/max range. Only descriptors you provide are checked — omitted
|
|
524
|
+
* descriptors are unconstrained.
|
|
525
|
+
*/
|
|
526
|
+
interface RdkitDescriptorFilterResponse {
|
|
527
|
+
type: 'rdkit_descriptor_filter';
|
|
528
|
+
/**
|
|
529
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
530
|
+
*/
|
|
531
|
+
fraction_csp3?: RdkitDescriptorFilterResponse.FractionCsp3;
|
|
532
|
+
/**
|
|
533
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
534
|
+
*/
|
|
535
|
+
mol_logp?: RdkitDescriptorFilterResponse.MolLogp;
|
|
536
|
+
/**
|
|
537
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
538
|
+
*/
|
|
539
|
+
mol_wt?: RdkitDescriptorFilterResponse.MolWt;
|
|
540
|
+
/**
|
|
541
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
542
|
+
*/
|
|
543
|
+
num_aromatic_rings?: RdkitDescriptorFilterResponse.NumAromaticRings;
|
|
544
|
+
/**
|
|
545
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
546
|
+
*/
|
|
547
|
+
num_h_acceptors?: RdkitDescriptorFilterResponse.NumHAcceptors;
|
|
548
|
+
/**
|
|
549
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
550
|
+
*/
|
|
551
|
+
num_h_donors?: RdkitDescriptorFilterResponse.NumHDonors;
|
|
552
|
+
/**
|
|
553
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
554
|
+
*/
|
|
555
|
+
num_heteroatoms?: RdkitDescriptorFilterResponse.NumHeteroatoms;
|
|
556
|
+
/**
|
|
557
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
558
|
+
*/
|
|
559
|
+
num_rings?: RdkitDescriptorFilterResponse.NumRings;
|
|
560
|
+
/**
|
|
561
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
562
|
+
*/
|
|
563
|
+
num_rotatable_bonds?: RdkitDescriptorFilterResponse.NumRotatableBonds;
|
|
564
|
+
/**
|
|
565
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
566
|
+
*/
|
|
567
|
+
tpsa?: RdkitDescriptorFilterResponse.Tpsa;
|
|
568
|
+
}
|
|
569
|
+
namespace RdkitDescriptorFilterResponse {
|
|
570
|
+
/**
|
|
571
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
572
|
+
*/
|
|
573
|
+
interface FractionCsp3 {
|
|
574
|
+
/**
|
|
575
|
+
* Maximum allowed value (inclusive)
|
|
576
|
+
*/
|
|
577
|
+
max?: number;
|
|
578
|
+
/**
|
|
579
|
+
* Minimum allowed value (inclusive)
|
|
580
|
+
*/
|
|
581
|
+
min?: number;
|
|
582
|
+
}
|
|
583
|
+
/**
|
|
584
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
585
|
+
*/
|
|
586
|
+
interface MolLogp {
|
|
587
|
+
/**
|
|
588
|
+
* Maximum allowed value (inclusive)
|
|
589
|
+
*/
|
|
590
|
+
max?: number;
|
|
591
|
+
/**
|
|
592
|
+
* Minimum allowed value (inclusive)
|
|
593
|
+
*/
|
|
594
|
+
min?: number;
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
598
|
+
*/
|
|
599
|
+
interface MolWt {
|
|
600
|
+
/**
|
|
601
|
+
* Maximum allowed value (inclusive)
|
|
602
|
+
*/
|
|
603
|
+
max?: number;
|
|
604
|
+
/**
|
|
605
|
+
* Minimum allowed value (inclusive)
|
|
606
|
+
*/
|
|
607
|
+
min?: number;
|
|
608
|
+
}
|
|
609
|
+
/**
|
|
610
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
611
|
+
*/
|
|
612
|
+
interface NumAromaticRings {
|
|
613
|
+
/**
|
|
614
|
+
* Maximum allowed value (inclusive)
|
|
615
|
+
*/
|
|
616
|
+
max?: number;
|
|
617
|
+
/**
|
|
618
|
+
* Minimum allowed value (inclusive)
|
|
619
|
+
*/
|
|
620
|
+
min?: number;
|
|
621
|
+
}
|
|
622
|
+
/**
|
|
623
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
624
|
+
*/
|
|
625
|
+
interface NumHAcceptors {
|
|
626
|
+
/**
|
|
627
|
+
* Maximum allowed value (inclusive)
|
|
628
|
+
*/
|
|
629
|
+
max?: number;
|
|
630
|
+
/**
|
|
631
|
+
* Minimum allowed value (inclusive)
|
|
632
|
+
*/
|
|
633
|
+
min?: number;
|
|
634
|
+
}
|
|
635
|
+
/**
|
|
636
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
637
|
+
*/
|
|
638
|
+
interface NumHDonors {
|
|
639
|
+
/**
|
|
640
|
+
* Maximum allowed value (inclusive)
|
|
641
|
+
*/
|
|
642
|
+
max?: number;
|
|
643
|
+
/**
|
|
644
|
+
* Minimum allowed value (inclusive)
|
|
645
|
+
*/
|
|
646
|
+
min?: number;
|
|
647
|
+
}
|
|
648
|
+
/**
|
|
649
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
650
|
+
*/
|
|
651
|
+
interface NumHeteroatoms {
|
|
652
|
+
/**
|
|
653
|
+
* Maximum allowed value (inclusive)
|
|
654
|
+
*/
|
|
655
|
+
max?: number;
|
|
656
|
+
/**
|
|
657
|
+
* Minimum allowed value (inclusive)
|
|
658
|
+
*/
|
|
659
|
+
min?: number;
|
|
660
|
+
}
|
|
661
|
+
/**
|
|
662
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
663
|
+
*/
|
|
664
|
+
interface NumRings {
|
|
665
|
+
/**
|
|
666
|
+
* Maximum allowed value (inclusive)
|
|
667
|
+
*/
|
|
668
|
+
max?: number;
|
|
669
|
+
/**
|
|
670
|
+
* Minimum allowed value (inclusive)
|
|
671
|
+
*/
|
|
672
|
+
min?: number;
|
|
673
|
+
}
|
|
674
|
+
/**
|
|
675
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
676
|
+
*/
|
|
677
|
+
interface NumRotatableBonds {
|
|
678
|
+
/**
|
|
679
|
+
* Maximum allowed value (inclusive)
|
|
680
|
+
*/
|
|
681
|
+
max?: number;
|
|
682
|
+
/**
|
|
683
|
+
* Minimum allowed value (inclusive)
|
|
684
|
+
*/
|
|
685
|
+
min?: number;
|
|
686
|
+
}
|
|
687
|
+
/**
|
|
688
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
689
|
+
*/
|
|
690
|
+
interface Tpsa {
|
|
691
|
+
/**
|
|
692
|
+
* Maximum allowed value (inclusive)
|
|
693
|
+
*/
|
|
694
|
+
max?: number;
|
|
695
|
+
/**
|
|
696
|
+
* Minimum allowed value (inclusive)
|
|
697
|
+
*/
|
|
698
|
+
min?: number;
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
/**
|
|
702
|
+
* Filter molecules by custom SMARTS patterns. Molecules matching any pattern are
|
|
703
|
+
* rejected.
|
|
704
|
+
*/
|
|
705
|
+
interface SmartsCustomFilterResponse {
|
|
706
|
+
/**
|
|
707
|
+
* SMARTS patterns. Molecules matching any pattern are rejected.
|
|
708
|
+
*/
|
|
709
|
+
patterns: Array<string>;
|
|
710
|
+
type: 'smarts_custom_filter';
|
|
711
|
+
}
|
|
712
|
+
/**
|
|
713
|
+
* Filter molecules using a predefined SMARTS catalog of structural alerts.
|
|
714
|
+
*/
|
|
715
|
+
interface SmartsCatalogFilterResponse {
|
|
716
|
+
/**
|
|
717
|
+
* Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs
|
|
718
|
+
* reject known problematic substructures.
|
|
719
|
+
*/
|
|
720
|
+
catalog: 'PAINS' | 'PAINS_A' | 'PAINS_B' | 'PAINS_C' | 'BRENK' | 'CHEMBL' | 'CHEMBL_BMS' | 'CHEMBL_Dundee' | 'CHEMBL_Glaxo' | 'CHEMBL_Inpharmatica' | 'CHEMBL_LINT' | 'CHEMBL_MLSMR' | 'CHEMBL_SureChEMBL' | 'NIH';
|
|
721
|
+
type: 'smarts_catalog_filter';
|
|
722
|
+
}
|
|
723
|
+
/**
|
|
724
|
+
* Filter molecules by regex patterns on their SMILES representation.
|
|
725
|
+
*/
|
|
726
|
+
interface SmilesRegexFilterResponse {
|
|
727
|
+
/**
|
|
728
|
+
* Regex patterns applied to SMILES strings. Molecules matching any pattern are
|
|
729
|
+
* rejected.
|
|
730
|
+
*/
|
|
731
|
+
patterns: Array<string>;
|
|
732
|
+
type: 'smiles_regex_filter';
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
}
|
|
736
|
+
interface Progress {
|
|
737
|
+
/**
|
|
738
|
+
* Number of accepted molecules that reached terminal failure during screening.
|
|
739
|
+
*/
|
|
740
|
+
num_molecules_failed: number;
|
|
741
|
+
/**
|
|
742
|
+
* Number of accepted molecules that produced usable screening results.
|
|
743
|
+
*/
|
|
744
|
+
num_molecules_screened: number;
|
|
745
|
+
/**
|
|
746
|
+
* Total number of molecules accepted into screening after server-side validation
|
|
747
|
+
* and filtering.
|
|
748
|
+
*/
|
|
749
|
+
total_molecules_to_screen: number;
|
|
750
|
+
/**
|
|
751
|
+
* ID of the most recently screened result
|
|
752
|
+
*/
|
|
753
|
+
latest_result_id?: string;
|
|
754
|
+
rejection_summary?: Progress.RejectionSummary;
|
|
755
|
+
}
|
|
756
|
+
namespace Progress {
|
|
757
|
+
interface RejectionSummary {
|
|
758
|
+
/**
|
|
759
|
+
* Number of submitted molecules removed by server-side filtering rules.
|
|
760
|
+
*/
|
|
761
|
+
filtered_count: number;
|
|
762
|
+
/**
|
|
763
|
+
* Number of submitted molecules rejected as invalid input.
|
|
764
|
+
*/
|
|
765
|
+
invalid_count: number;
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
}
|
|
769
|
+
/**
|
|
770
|
+
* Summary of a small molecule library screening engine run (excludes input)
|
|
771
|
+
*/
|
|
772
|
+
export interface LibraryScreenListResponse {
|
|
773
|
+
/**
|
|
774
|
+
* Unique SmScreenSummary identifier
|
|
775
|
+
*/
|
|
776
|
+
id: string;
|
|
777
|
+
completed_at: string | null;
|
|
778
|
+
created_at: string;
|
|
779
|
+
/**
|
|
780
|
+
* When the input, output, and result data was permanently deleted. Null if data
|
|
781
|
+
* has not been deleted.
|
|
782
|
+
*/
|
|
783
|
+
data_deleted_at: string | null;
|
|
784
|
+
/**
|
|
785
|
+
* Engine used for small molecule library screen
|
|
786
|
+
*/
|
|
787
|
+
engine: 'boltz-sm-screen';
|
|
788
|
+
/**
|
|
789
|
+
* Engine version used for small molecule library screen
|
|
790
|
+
*/
|
|
791
|
+
engine_version: string;
|
|
792
|
+
error: LibraryScreenListResponse.Error | null;
|
|
793
|
+
/**
|
|
794
|
+
* Whether this resource was created with a live API key.
|
|
795
|
+
*/
|
|
796
|
+
livemode: boolean;
|
|
797
|
+
progress: LibraryScreenListResponse.Progress | null;
|
|
798
|
+
started_at: string | null;
|
|
799
|
+
status: 'pending' | 'running' | 'succeeded' | 'failed' | 'stopped';
|
|
800
|
+
stopped_at: string | null;
|
|
801
|
+
/**
|
|
802
|
+
* Workspace ID
|
|
803
|
+
*/
|
|
804
|
+
workspace_id: string;
|
|
805
|
+
/**
|
|
806
|
+
* Client-provided idempotency key
|
|
807
|
+
*/
|
|
808
|
+
idempotency_key?: string;
|
|
809
|
+
}
|
|
810
|
+
export declare namespace LibraryScreenListResponse {
|
|
811
|
+
interface Error {
|
|
812
|
+
/**
|
|
813
|
+
* Machine-readable error code
|
|
814
|
+
*/
|
|
815
|
+
code: string;
|
|
816
|
+
/**
|
|
817
|
+
* Human-readable error message
|
|
818
|
+
*/
|
|
819
|
+
message: string;
|
|
820
|
+
/**
|
|
821
|
+
* Additional field-level error details keyed by input path, when available.
|
|
822
|
+
*/
|
|
823
|
+
details?: unknown;
|
|
824
|
+
}
|
|
825
|
+
interface Progress {
|
|
826
|
+
/**
|
|
827
|
+
* Number of accepted molecules that reached terminal failure during screening.
|
|
828
|
+
*/
|
|
829
|
+
num_molecules_failed: number;
|
|
830
|
+
/**
|
|
831
|
+
* Number of accepted molecules that produced usable screening results.
|
|
832
|
+
*/
|
|
833
|
+
num_molecules_screened: number;
|
|
834
|
+
/**
|
|
835
|
+
* Total number of molecules accepted into screening after server-side validation
|
|
836
|
+
* and filtering.
|
|
837
|
+
*/
|
|
838
|
+
total_molecules_to_screen: number;
|
|
839
|
+
/**
|
|
840
|
+
* ID of the most recently screened result
|
|
841
|
+
*/
|
|
842
|
+
latest_result_id?: string;
|
|
843
|
+
rejection_summary?: Progress.RejectionSummary;
|
|
844
|
+
}
|
|
845
|
+
namespace Progress {
|
|
846
|
+
interface RejectionSummary {
|
|
847
|
+
/**
|
|
848
|
+
* Number of submitted molecules removed by server-side filtering rules.
|
|
849
|
+
*/
|
|
850
|
+
filtered_count: number;
|
|
851
|
+
/**
|
|
852
|
+
* Number of submitted molecules rejected as invalid input.
|
|
853
|
+
*/
|
|
854
|
+
invalid_count: number;
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
}
|
|
858
|
+
export interface LibraryScreenDeleteDataResponse {
|
|
859
|
+
/**
|
|
860
|
+
* ID of the resource whose data was deleted
|
|
861
|
+
*/
|
|
862
|
+
id: string;
|
|
863
|
+
data_deleted: true;
|
|
864
|
+
/**
|
|
865
|
+
* When the data was deleted
|
|
866
|
+
*/
|
|
867
|
+
data_deleted_at: string;
|
|
868
|
+
}
|
|
869
|
+
/**
|
|
870
|
+
* Estimate response with monetary values encoded as decimal strings to preserve
|
|
871
|
+
* precision.
|
|
872
|
+
*/
|
|
873
|
+
export interface LibraryScreenEstimateCostResponse {
|
|
874
|
+
/**
|
|
875
|
+
* Cost breakdown for the billed application.
|
|
876
|
+
*/
|
|
877
|
+
breakdown: LibraryScreenEstimateCostResponse.Breakdown;
|
|
878
|
+
disclaimer: string;
|
|
879
|
+
/**
|
|
880
|
+
* Estimated total cost as a decimal string
|
|
881
|
+
*/
|
|
882
|
+
estimated_cost_usd: string;
|
|
883
|
+
}
|
|
884
|
+
export declare namespace LibraryScreenEstimateCostResponse {
|
|
885
|
+
/**
|
|
886
|
+
* Cost breakdown for the billed application.
|
|
887
|
+
*/
|
|
888
|
+
interface Breakdown {
|
|
889
|
+
application: 'structure_and_binding' | 'small_molecule_design' | 'small_molecule_library_screen' | 'protein_design' | 'protein_library_screen' | 'adme';
|
|
890
|
+
/**
|
|
891
|
+
* Estimated cost per displayed unit as a decimal string, rounded up to 4 decimal
|
|
892
|
+
* places. This may include token-size multipliers or generation overhead;
|
|
893
|
+
* estimated_cost_usd is the authoritative total.
|
|
894
|
+
*/
|
|
895
|
+
cost_per_unit_usd: string;
|
|
896
|
+
/**
|
|
897
|
+
* Number of units shown for the estimate. For structure-and-binding, this is the
|
|
898
|
+
* requested number of samples. For protein and small-molecule design/screen
|
|
899
|
+
* endpoints, this is the requested number of proteins or molecules.
|
|
900
|
+
*/
|
|
901
|
+
num_units: number;
|
|
902
|
+
}
|
|
903
|
+
}
|
|
904
|
+
/**
|
|
905
|
+
* Result for a single screened small molecule
|
|
906
|
+
*/
|
|
907
|
+
export interface LibraryScreenListResultsResponse {
|
|
908
|
+
/**
|
|
909
|
+
* Unique result ID
|
|
910
|
+
*/
|
|
911
|
+
id: string;
|
|
912
|
+
artifacts: LibraryScreenListResultsResponse.Artifacts;
|
|
913
|
+
created_at: string;
|
|
914
|
+
/**
|
|
915
|
+
* Scoring metrics for a screened small molecule
|
|
916
|
+
*/
|
|
917
|
+
metrics: LibraryScreenListResultsResponse.Metrics;
|
|
918
|
+
/**
|
|
919
|
+
* SMILES string of the screened molecule
|
|
920
|
+
*/
|
|
921
|
+
smiles: string;
|
|
922
|
+
/**
|
|
923
|
+
* Client-provided identifier for this molecule, if provided
|
|
924
|
+
*/
|
|
925
|
+
external_id?: string;
|
|
926
|
+
/**
|
|
927
|
+
* Warnings about potential quality issues with this result.
|
|
928
|
+
*/
|
|
929
|
+
warnings?: Array<LibraryScreenListResultsResponse.Warning>;
|
|
930
|
+
}
|
|
931
|
+
export declare namespace LibraryScreenListResultsResponse {
|
|
932
|
+
interface Artifacts {
|
|
933
|
+
archive: Artifacts.Archive;
|
|
934
|
+
structure: Artifacts.Structure;
|
|
935
|
+
}
|
|
936
|
+
namespace Artifacts {
|
|
937
|
+
interface Archive {
|
|
938
|
+
/**
|
|
939
|
+
* URL to download the file
|
|
940
|
+
*/
|
|
941
|
+
url: string;
|
|
942
|
+
/**
|
|
943
|
+
* When the presigned URL expires
|
|
944
|
+
*/
|
|
945
|
+
url_expires_at: string;
|
|
946
|
+
}
|
|
947
|
+
interface Structure {
|
|
948
|
+
/**
|
|
949
|
+
* URL to download the file
|
|
950
|
+
*/
|
|
951
|
+
url: string;
|
|
952
|
+
/**
|
|
953
|
+
* When the presigned URL expires
|
|
954
|
+
*/
|
|
955
|
+
url_expires_at: string;
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
/**
|
|
959
|
+
* Scoring metrics for a screened small molecule
|
|
960
|
+
*/
|
|
961
|
+
interface Metrics {
|
|
962
|
+
/**
|
|
963
|
+
* Confidence that the molecule binds the target (0-1). Primary metric for hit
|
|
964
|
+
* discovery.
|
|
965
|
+
*/
|
|
966
|
+
binding_confidence: number;
|
|
967
|
+
/**
|
|
968
|
+
* Interface pLDDT for the complex (0-1 float). Confidence at the binding
|
|
969
|
+
* interface.
|
|
970
|
+
*/
|
|
971
|
+
complex_iplddt: number;
|
|
972
|
+
/**
|
|
973
|
+
* pLDDT for the full complex (0-1 float).
|
|
974
|
+
*/
|
|
975
|
+
complex_plddt: number;
|
|
976
|
+
/**
|
|
977
|
+
* Interface predicted TM score (0-1). Confidence in relative positioning of ligand
|
|
978
|
+
* and protein.
|
|
979
|
+
*/
|
|
980
|
+
iptm: number;
|
|
981
|
+
/**
|
|
982
|
+
* Binding strength ranking score for lead optimization. Higher values indicate
|
|
983
|
+
* stronger predicted binding.
|
|
984
|
+
*/
|
|
985
|
+
optimization_score: number;
|
|
986
|
+
/**
|
|
987
|
+
* Predicted TM score (0-1). Global structure quality metric.
|
|
988
|
+
*/
|
|
989
|
+
ptm: number;
|
|
990
|
+
/**
|
|
991
|
+
* Confidence in the predicted 3D structure (0-1).
|
|
992
|
+
*/
|
|
993
|
+
structure_confidence: number;
|
|
994
|
+
}
|
|
995
|
+
/**
|
|
996
|
+
* A warning about a potential quality issue with a result
|
|
997
|
+
*/
|
|
998
|
+
interface Warning {
|
|
999
|
+
/**
|
|
1000
|
+
* Machine-readable warning code (e.g. "low_confidence", "unusual_geometry")
|
|
1001
|
+
*/
|
|
1002
|
+
code: string;
|
|
1003
|
+
/**
|
|
1004
|
+
* Human-readable description of the warning
|
|
1005
|
+
*/
|
|
1006
|
+
message: string;
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1009
|
+
/**
|
|
1010
|
+
* A small molecule library screening engine run
|
|
1011
|
+
*/
|
|
1012
|
+
export interface LibraryScreenStartResponse {
|
|
1013
|
+
/**
|
|
1014
|
+
* Unique SmScreen identifier
|
|
1015
|
+
*/
|
|
1016
|
+
id: string;
|
|
1017
|
+
completed_at: string | null;
|
|
1018
|
+
created_at: string;
|
|
1019
|
+
/**
|
|
1020
|
+
* When the input, output, and result data was permanently deleted. Null if data
|
|
1021
|
+
* has not been deleted.
|
|
1022
|
+
*/
|
|
1023
|
+
data_deleted_at: string | null;
|
|
1024
|
+
/**
|
|
1025
|
+
* Engine used for small molecule library screen
|
|
1026
|
+
*/
|
|
1027
|
+
engine: 'boltz-sm-screen';
|
|
1028
|
+
/**
|
|
1029
|
+
* Engine version used for small molecule library screen
|
|
1030
|
+
*/
|
|
1031
|
+
engine_version: string;
|
|
1032
|
+
error: LibraryScreenStartResponse.Error | null;
|
|
1033
|
+
/**
|
|
1034
|
+
* Pipeline input (null if data deleted)
|
|
1035
|
+
*/
|
|
1036
|
+
input: LibraryScreenStartResponse.Input | null;
|
|
1037
|
+
/**
|
|
1038
|
+
* Whether this resource was created with a live API key.
|
|
1039
|
+
*/
|
|
1040
|
+
livemode: boolean;
|
|
1041
|
+
progress: LibraryScreenStartResponse.Progress | null;
|
|
1042
|
+
started_at: string | null;
|
|
1043
|
+
status: 'pending' | 'running' | 'succeeded' | 'failed' | 'stopped';
|
|
1044
|
+
stopped_at: string | null;
|
|
1045
|
+
/**
|
|
1046
|
+
* Workspace ID
|
|
1047
|
+
*/
|
|
1048
|
+
workspace_id: string;
|
|
1049
|
+
/**
|
|
1050
|
+
* Client-provided idempotency key
|
|
1051
|
+
*/
|
|
1052
|
+
idempotency_key?: string;
|
|
1053
|
+
}
|
|
1054
|
+
export declare namespace LibraryScreenStartResponse {
|
|
1055
|
+
interface Error {
|
|
1056
|
+
/**
|
|
1057
|
+
* Machine-readable error code
|
|
1058
|
+
*/
|
|
1059
|
+
code: string;
|
|
1060
|
+
/**
|
|
1061
|
+
* Human-readable error message
|
|
1062
|
+
*/
|
|
1063
|
+
message: string;
|
|
1064
|
+
/**
|
|
1065
|
+
* Additional field-level error details keyed by input path, when available.
|
|
1066
|
+
*/
|
|
1067
|
+
details?: unknown;
|
|
1068
|
+
}
|
|
1069
|
+
/**
|
|
1070
|
+
* Pipeline input (null if data deleted)
|
|
1071
|
+
*/
|
|
1072
|
+
interface Input {
|
|
1073
|
+
molecules: Input.Molecules;
|
|
1074
|
+
/**
|
|
1075
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
1076
|
+
*/
|
|
1077
|
+
target: Input.Target;
|
|
1078
|
+
/**
|
|
1079
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
1080
|
+
* and custom filters.
|
|
1081
|
+
*/
|
|
1082
|
+
molecule_filters?: Input.MoleculeFilters;
|
|
1083
|
+
}
|
|
1084
|
+
namespace Input {
|
|
1085
|
+
interface Molecules {
|
|
1086
|
+
/**
|
|
1087
|
+
* URL to download the file
|
|
1088
|
+
*/
|
|
1089
|
+
url: string;
|
|
1090
|
+
/**
|
|
1091
|
+
* When the presigned URL expires
|
|
1092
|
+
*/
|
|
1093
|
+
url_expires_at: string;
|
|
1094
|
+
}
|
|
1095
|
+
/**
|
|
1096
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
1097
|
+
*/
|
|
1098
|
+
interface Target {
|
|
1099
|
+
/**
|
|
1100
|
+
* Protein entities defining the target structure. Each entity represents a protein
|
|
1101
|
+
* chain.
|
|
1102
|
+
*/
|
|
1103
|
+
entities: Array<Target.Entity>;
|
|
1104
|
+
/**
|
|
1105
|
+
* Covalent bond constraints between atoms in the target complex. Atom-level ligand
|
|
1106
|
+
* references currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
1107
|
+
*/
|
|
1108
|
+
bonds?: Array<Target.Bond>;
|
|
1109
|
+
/**
|
|
1110
|
+
* Structural constraints (pocket and contact). Atom-level ligand references
|
|
1111
|
+
* currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
1112
|
+
*/
|
|
1113
|
+
constraints?: Array<Target.PocketConstraintResponse | Target.ContactConstraintResponse>;
|
|
1114
|
+
/**
|
|
1115
|
+
* Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. "A")
|
|
1116
|
+
* and the value is an array of 0-indexed residue indices that define the binding
|
|
1117
|
+
* pocket on that chain. When provided, these residues guide pocket extraction and
|
|
1118
|
+
* add a derived pocket constraint during affinity predictions. That derived
|
|
1119
|
+
* constraint remains separate from any explicit pocket constraints in
|
|
1120
|
+
* target.constraints. When omitted, the model auto-detects the pocket.
|
|
1121
|
+
*/
|
|
1122
|
+
pocket_residues?: {
|
|
1123
|
+
[key: string]: Array<number>;
|
|
1124
|
+
};
|
|
1125
|
+
/**
|
|
1126
|
+
* Reference ligands as SMILES strings that help the model identify the binding
|
|
1127
|
+
* pocket. When omitted, a set of drug-like default ligands is used for pocket
|
|
1128
|
+
* detection.
|
|
1129
|
+
*/
|
|
1130
|
+
reference_ligands?: Array<string>;
|
|
1131
|
+
}
|
|
1132
|
+
namespace Target {
|
|
1133
|
+
interface Entity {
|
|
1134
|
+
/**
|
|
1135
|
+
* Chain IDs for this entity
|
|
1136
|
+
*/
|
|
1137
|
+
chain_ids: Array<string>;
|
|
1138
|
+
type: 'protein';
|
|
1139
|
+
/**
|
|
1140
|
+
* Amino acid sequence (one-letter codes)
|
|
1141
|
+
*/
|
|
1142
|
+
value: string;
|
|
1143
|
+
/**
|
|
1144
|
+
* Whether the sequence is cyclic
|
|
1145
|
+
*/
|
|
1146
|
+
cyclic?: boolean;
|
|
1147
|
+
/**
|
|
1148
|
+
* Post-translational modifications. Optional; defaults to an empty list when
|
|
1149
|
+
* omitted.
|
|
1150
|
+
*/
|
|
1151
|
+
modifications?: Array<Entity.CcdModificationResponse | Entity.SmilesModificationResponse>;
|
|
1152
|
+
}
|
|
1153
|
+
namespace Entity {
|
|
1154
|
+
interface CcdModificationResponse {
|
|
1155
|
+
/**
|
|
1156
|
+
* 0-based index of the residue to modify
|
|
1157
|
+
*/
|
|
1158
|
+
residue_index: number;
|
|
1159
|
+
type: 'ccd';
|
|
1160
|
+
/**
|
|
1161
|
+
* CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
|
|
1162
|
+
* phosphoserine)
|
|
1163
|
+
*/
|
|
1164
|
+
value: string;
|
|
1165
|
+
}
|
|
1166
|
+
interface SmilesModificationResponse {
|
|
1167
|
+
/**
|
|
1168
|
+
* 0-based index of the residue to modify
|
|
1169
|
+
*/
|
|
1170
|
+
residue_index: number;
|
|
1171
|
+
type: 'smiles';
|
|
1172
|
+
/**
|
|
1173
|
+
* SMILES string for the modification
|
|
1174
|
+
*/
|
|
1175
|
+
value: string;
|
|
1176
|
+
}
|
|
1177
|
+
}
|
|
1178
|
+
/**
|
|
1179
|
+
* Bond between two atoms. Atom-level ligand references currently support
|
|
1180
|
+
* ligand_ccd entities only; ligand_smiles is unsupported.
|
|
1181
|
+
*/
|
|
1182
|
+
interface Bond {
|
|
1183
|
+
/**
|
|
1184
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1185
|
+
* entities only; ligand_smiles is unsupported.
|
|
1186
|
+
*/
|
|
1187
|
+
atom1: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
1188
|
+
/**
|
|
1189
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1190
|
+
* entities only; ligand_smiles is unsupported.
|
|
1191
|
+
*/
|
|
1192
|
+
atom2: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
1193
|
+
}
|
|
1194
|
+
namespace Bond {
|
|
1195
|
+
/**
|
|
1196
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1197
|
+
* entities only; ligand_smiles is unsupported.
|
|
1198
|
+
*/
|
|
1199
|
+
interface LigandAtomResponse {
|
|
1200
|
+
/**
|
|
1201
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
1202
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
1203
|
+
*/
|
|
1204
|
+
atom_name: string;
|
|
1205
|
+
/**
|
|
1206
|
+
* Chain ID containing the atom
|
|
1207
|
+
*/
|
|
1208
|
+
chain_id: string;
|
|
1209
|
+
type: 'ligand_atom';
|
|
1210
|
+
}
|
|
1211
|
+
interface PolymerAtomResponse {
|
|
1212
|
+
/**
|
|
1213
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
1214
|
+
*/
|
|
1215
|
+
atom_name: string;
|
|
1216
|
+
/**
|
|
1217
|
+
* Chain ID containing the atom
|
|
1218
|
+
*/
|
|
1219
|
+
chain_id: string;
|
|
1220
|
+
/**
|
|
1221
|
+
* 0-based residue index
|
|
1222
|
+
*/
|
|
1223
|
+
residue_index: number;
|
|
1224
|
+
type: 'polymer_atom';
|
|
1225
|
+
}
|
|
1226
|
+
/**
|
|
1227
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1228
|
+
* entities only; ligand_smiles is unsupported.
|
|
1229
|
+
*/
|
|
1230
|
+
interface LigandAtomResponse {
|
|
1231
|
+
/**
|
|
1232
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
1233
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
1234
|
+
*/
|
|
1235
|
+
atom_name: string;
|
|
1236
|
+
/**
|
|
1237
|
+
* Chain ID containing the atom
|
|
1238
|
+
*/
|
|
1239
|
+
chain_id: string;
|
|
1240
|
+
type: 'ligand_atom';
|
|
1241
|
+
}
|
|
1242
|
+
interface PolymerAtomResponse {
|
|
1243
|
+
/**
|
|
1244
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
1245
|
+
*/
|
|
1246
|
+
atom_name: string;
|
|
1247
|
+
/**
|
|
1248
|
+
* Chain ID containing the atom
|
|
1249
|
+
*/
|
|
1250
|
+
chain_id: string;
|
|
1251
|
+
/**
|
|
1252
|
+
* 0-based residue index
|
|
1253
|
+
*/
|
|
1254
|
+
residue_index: number;
|
|
1255
|
+
type: 'polymer_atom';
|
|
1256
|
+
}
|
|
1257
|
+
}
|
|
1258
|
+
/**
|
|
1259
|
+
* Constrains the binder to interact with specific pocket residues on the target.
|
|
1260
|
+
*/
|
|
1261
|
+
interface PocketConstraintResponse {
|
|
1262
|
+
/**
|
|
1263
|
+
* Chain ID of the binder molecule
|
|
1264
|
+
*/
|
|
1265
|
+
binder_chain_id: string;
|
|
1266
|
+
/**
|
|
1267
|
+
* Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
|
|
1268
|
+
* the value is an array of 0-indexed residue indices that define the pocket on
|
|
1269
|
+
* that chain.
|
|
1270
|
+
*/
|
|
1271
|
+
contact_residues: {
|
|
1272
|
+
[key: string]: Array<number>;
|
|
1273
|
+
};
|
|
1274
|
+
/**
|
|
1275
|
+
* Maximum allowed distance in Angstroms between binder and pocket residues.
|
|
1276
|
+
* Typical range: 4-8 A.
|
|
1277
|
+
*/
|
|
1278
|
+
max_distance_angstrom: number;
|
|
1279
|
+
type: 'pocket';
|
|
1280
|
+
/**
|
|
1281
|
+
* Whether to force the constraint
|
|
1282
|
+
*/
|
|
1283
|
+
force?: boolean;
|
|
1284
|
+
}
|
|
1285
|
+
/**
|
|
1286
|
+
* Contact constraint between two tokens. Atom-level ligand references currently
|
|
1287
|
+
* support ligand_ccd entities only; ligand_smiles is unsupported.
|
|
1288
|
+
*/
|
|
1289
|
+
interface ContactConstraintResponse {
|
|
1290
|
+
/**
|
|
1291
|
+
* Maximum distance in Angstroms
|
|
1292
|
+
*/
|
|
1293
|
+
max_distance_angstrom: number;
|
|
1294
|
+
/**
|
|
1295
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1296
|
+
* entities only; ligand_smiles is unsupported.
|
|
1297
|
+
*/
|
|
1298
|
+
token1: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
1299
|
+
/**
|
|
1300
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1301
|
+
* entities only; ligand_smiles is unsupported.
|
|
1302
|
+
*/
|
|
1303
|
+
token2: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
1304
|
+
type: 'contact';
|
|
1305
|
+
/**
|
|
1306
|
+
* Whether to force the constraint
|
|
1307
|
+
*/
|
|
1308
|
+
force?: boolean;
|
|
1309
|
+
}
|
|
1310
|
+
namespace ContactConstraintResponse {
|
|
1311
|
+
interface PolymerContactTokenResponse {
|
|
1312
|
+
/**
|
|
1313
|
+
* Chain ID
|
|
1314
|
+
*/
|
|
1315
|
+
chain_id: string;
|
|
1316
|
+
/**
|
|
1317
|
+
* 0-based residue index
|
|
1318
|
+
*/
|
|
1319
|
+
residue_index: number;
|
|
1320
|
+
type: 'polymer_contact';
|
|
1321
|
+
}
|
|
1322
|
+
/**
|
|
1323
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1324
|
+
* entities only; ligand_smiles is unsupported.
|
|
1325
|
+
*/
|
|
1326
|
+
interface LigandContactTokenResponse {
|
|
1327
|
+
/**
|
|
1328
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
1329
|
+
* unsupported; use ligand_ccd instead.
|
|
1330
|
+
*/
|
|
1331
|
+
atom_name: string;
|
|
1332
|
+
/**
|
|
1333
|
+
* Chain ID
|
|
1334
|
+
*/
|
|
1335
|
+
chain_id: string;
|
|
1336
|
+
type: 'ligand_contact';
|
|
1337
|
+
}
|
|
1338
|
+
interface PolymerContactTokenResponse {
|
|
1339
|
+
/**
|
|
1340
|
+
* Chain ID
|
|
1341
|
+
*/
|
|
1342
|
+
chain_id: string;
|
|
1343
|
+
/**
|
|
1344
|
+
* 0-based residue index
|
|
1345
|
+
*/
|
|
1346
|
+
residue_index: number;
|
|
1347
|
+
type: 'polymer_contact';
|
|
1348
|
+
}
|
|
1349
|
+
/**
|
|
1350
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1351
|
+
* entities only; ligand_smiles is unsupported.
|
|
1352
|
+
*/
|
|
1353
|
+
interface LigandContactTokenResponse {
|
|
1354
|
+
/**
|
|
1355
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
1356
|
+
* unsupported; use ligand_ccd instead.
|
|
1357
|
+
*/
|
|
1358
|
+
atom_name: string;
|
|
1359
|
+
/**
|
|
1360
|
+
* Chain ID
|
|
1361
|
+
*/
|
|
1362
|
+
chain_id: string;
|
|
1363
|
+
type: 'ligand_contact';
|
|
1364
|
+
}
|
|
1365
|
+
}
|
|
1366
|
+
}
|
|
1367
|
+
/**
|
|
1368
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
1369
|
+
* and custom filters.
|
|
1370
|
+
*/
|
|
1371
|
+
interface MoleculeFilters {
|
|
1372
|
+
/**
|
|
1373
|
+
* Controls the stringency of Boltz's built-in SMARTS structural alert filtering,
|
|
1374
|
+
* which removes molecules matching known problematic substructures. 'recommended'
|
|
1375
|
+
* (default): applies a curated set of alerts balancing safety and hit rate.
|
|
1376
|
+
* 'extra': adds additional alerts beyond the recommended set for stricter
|
|
1377
|
+
* filtering. 'aggressive': applies the most comprehensive alert set — may reject
|
|
1378
|
+
* viable molecules. 'disabled': turns off Boltz SMARTS filtering entirely; only
|
|
1379
|
+
* custom_filters will be applied.
|
|
1380
|
+
*/
|
|
1381
|
+
boltz_smarts_catalog_filter_level?: 'recommended' | 'extra' | 'aggressive' | 'disabled';
|
|
1382
|
+
/**
|
|
1383
|
+
* Custom filters to apply. Molecules must pass all filters (AND logic).
|
|
1384
|
+
*/
|
|
1385
|
+
custom_filters?: Array<MoleculeFilters.LipinskiFilterResponse | MoleculeFilters.RdkitDescriptorFilterResponse | MoleculeFilters.SmartsCustomFilterResponse | MoleculeFilters.SmartsCatalogFilterResponse | MoleculeFilters.SmilesRegexFilterResponse>;
|
|
1386
|
+
}
|
|
1387
|
+
namespace MoleculeFilters {
|
|
1388
|
+
/**
|
|
1389
|
+
* Lipinski's Rule of Five filter. Rejects molecules that violate drug-likeness
|
|
1390
|
+
* criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen
|
|
1391
|
+
* bond acceptors.
|
|
1392
|
+
*/
|
|
1393
|
+
interface LipinskiFilterResponse {
|
|
1394
|
+
/**
|
|
1395
|
+
* Maximum number of hydrogen bond acceptors. Lipinski threshold: 10
|
|
1396
|
+
*/
|
|
1397
|
+
max_hba: number;
|
|
1398
|
+
/**
|
|
1399
|
+
* Maximum number of hydrogen bond donors. Lipinski threshold: 5
|
|
1400
|
+
*/
|
|
1401
|
+
max_hbd: number;
|
|
1402
|
+
/**
|
|
1403
|
+
* Maximum LogP. Lipinski threshold: 5
|
|
1404
|
+
*/
|
|
1405
|
+
max_logp: number;
|
|
1406
|
+
/**
|
|
1407
|
+
* Maximum molecular weight (Da). Lipinski threshold: 500
|
|
1408
|
+
*/
|
|
1409
|
+
max_mw: number;
|
|
1410
|
+
type: 'lipinski_filter';
|
|
1411
|
+
/**
|
|
1412
|
+
* If true, one rule violation is allowed (classic Rule of Five). Defaults to false
|
|
1413
|
+
* (all rules must pass).
|
|
1414
|
+
*/
|
|
1415
|
+
allow_single_violation?: boolean;
|
|
1416
|
+
}
|
|
1417
|
+
/**
|
|
1418
|
+
* Filter molecules by RDKit molecular descriptors. Each descriptor is constrained
|
|
1419
|
+
* to a min/max range. Only descriptors you provide are checked — omitted
|
|
1420
|
+
* descriptors are unconstrained.
|
|
1421
|
+
*/
|
|
1422
|
+
interface RdkitDescriptorFilterResponse {
|
|
1423
|
+
type: 'rdkit_descriptor_filter';
|
|
1424
|
+
/**
|
|
1425
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1426
|
+
*/
|
|
1427
|
+
fraction_csp3?: RdkitDescriptorFilterResponse.FractionCsp3;
|
|
1428
|
+
/**
|
|
1429
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1430
|
+
*/
|
|
1431
|
+
mol_logp?: RdkitDescriptorFilterResponse.MolLogp;
|
|
1432
|
+
/**
|
|
1433
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1434
|
+
*/
|
|
1435
|
+
mol_wt?: RdkitDescriptorFilterResponse.MolWt;
|
|
1436
|
+
/**
|
|
1437
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1438
|
+
*/
|
|
1439
|
+
num_aromatic_rings?: RdkitDescriptorFilterResponse.NumAromaticRings;
|
|
1440
|
+
/**
|
|
1441
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1442
|
+
*/
|
|
1443
|
+
num_h_acceptors?: RdkitDescriptorFilterResponse.NumHAcceptors;
|
|
1444
|
+
/**
|
|
1445
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1446
|
+
*/
|
|
1447
|
+
num_h_donors?: RdkitDescriptorFilterResponse.NumHDonors;
|
|
1448
|
+
/**
|
|
1449
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1450
|
+
*/
|
|
1451
|
+
num_heteroatoms?: RdkitDescriptorFilterResponse.NumHeteroatoms;
|
|
1452
|
+
/**
|
|
1453
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1454
|
+
*/
|
|
1455
|
+
num_rings?: RdkitDescriptorFilterResponse.NumRings;
|
|
1456
|
+
/**
|
|
1457
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1458
|
+
*/
|
|
1459
|
+
num_rotatable_bonds?: RdkitDescriptorFilterResponse.NumRotatableBonds;
|
|
1460
|
+
/**
|
|
1461
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1462
|
+
*/
|
|
1463
|
+
tpsa?: RdkitDescriptorFilterResponse.Tpsa;
|
|
1464
|
+
}
|
|
1465
|
+
namespace RdkitDescriptorFilterResponse {
|
|
1466
|
+
/**
|
|
1467
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1468
|
+
*/
|
|
1469
|
+
interface FractionCsp3 {
|
|
1470
|
+
/**
|
|
1471
|
+
* Maximum allowed value (inclusive)
|
|
1472
|
+
*/
|
|
1473
|
+
max?: number;
|
|
1474
|
+
/**
|
|
1475
|
+
* Minimum allowed value (inclusive)
|
|
1476
|
+
*/
|
|
1477
|
+
min?: number;
|
|
1478
|
+
}
|
|
1479
|
+
/**
|
|
1480
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1481
|
+
*/
|
|
1482
|
+
interface MolLogp {
|
|
1483
|
+
/**
|
|
1484
|
+
* Maximum allowed value (inclusive)
|
|
1485
|
+
*/
|
|
1486
|
+
max?: number;
|
|
1487
|
+
/**
|
|
1488
|
+
* Minimum allowed value (inclusive)
|
|
1489
|
+
*/
|
|
1490
|
+
min?: number;
|
|
1491
|
+
}
|
|
1492
|
+
/**
|
|
1493
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1494
|
+
*/
|
|
1495
|
+
interface MolWt {
|
|
1496
|
+
/**
|
|
1497
|
+
* Maximum allowed value (inclusive)
|
|
1498
|
+
*/
|
|
1499
|
+
max?: number;
|
|
1500
|
+
/**
|
|
1501
|
+
* Minimum allowed value (inclusive)
|
|
1502
|
+
*/
|
|
1503
|
+
min?: number;
|
|
1504
|
+
}
|
|
1505
|
+
/**
|
|
1506
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1507
|
+
*/
|
|
1508
|
+
interface NumAromaticRings {
|
|
1509
|
+
/**
|
|
1510
|
+
* Maximum allowed value (inclusive)
|
|
1511
|
+
*/
|
|
1512
|
+
max?: number;
|
|
1513
|
+
/**
|
|
1514
|
+
* Minimum allowed value (inclusive)
|
|
1515
|
+
*/
|
|
1516
|
+
min?: number;
|
|
1517
|
+
}
|
|
1518
|
+
/**
|
|
1519
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1520
|
+
*/
|
|
1521
|
+
interface NumHAcceptors {
|
|
1522
|
+
/**
|
|
1523
|
+
* Maximum allowed value (inclusive)
|
|
1524
|
+
*/
|
|
1525
|
+
max?: number;
|
|
1526
|
+
/**
|
|
1527
|
+
* Minimum allowed value (inclusive)
|
|
1528
|
+
*/
|
|
1529
|
+
min?: number;
|
|
1530
|
+
}
|
|
1531
|
+
/**
|
|
1532
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1533
|
+
*/
|
|
1534
|
+
interface NumHDonors {
|
|
1535
|
+
/**
|
|
1536
|
+
* Maximum allowed value (inclusive)
|
|
1537
|
+
*/
|
|
1538
|
+
max?: number;
|
|
1539
|
+
/**
|
|
1540
|
+
* Minimum allowed value (inclusive)
|
|
1541
|
+
*/
|
|
1542
|
+
min?: number;
|
|
1543
|
+
}
|
|
1544
|
+
/**
|
|
1545
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1546
|
+
*/
|
|
1547
|
+
interface NumHeteroatoms {
|
|
1548
|
+
/**
|
|
1549
|
+
* Maximum allowed value (inclusive)
|
|
1550
|
+
*/
|
|
1551
|
+
max?: number;
|
|
1552
|
+
/**
|
|
1553
|
+
* Minimum allowed value (inclusive)
|
|
1554
|
+
*/
|
|
1555
|
+
min?: number;
|
|
1556
|
+
}
|
|
1557
|
+
/**
|
|
1558
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1559
|
+
*/
|
|
1560
|
+
interface NumRings {
|
|
1561
|
+
/**
|
|
1562
|
+
* Maximum allowed value (inclusive)
|
|
1563
|
+
*/
|
|
1564
|
+
max?: number;
|
|
1565
|
+
/**
|
|
1566
|
+
* Minimum allowed value (inclusive)
|
|
1567
|
+
*/
|
|
1568
|
+
min?: number;
|
|
1569
|
+
}
|
|
1570
|
+
/**
|
|
1571
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1572
|
+
*/
|
|
1573
|
+
interface NumRotatableBonds {
|
|
1574
|
+
/**
|
|
1575
|
+
* Maximum allowed value (inclusive)
|
|
1576
|
+
*/
|
|
1577
|
+
max?: number;
|
|
1578
|
+
/**
|
|
1579
|
+
* Minimum allowed value (inclusive)
|
|
1580
|
+
*/
|
|
1581
|
+
min?: number;
|
|
1582
|
+
}
|
|
1583
|
+
/**
|
|
1584
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
1585
|
+
*/
|
|
1586
|
+
interface Tpsa {
|
|
1587
|
+
/**
|
|
1588
|
+
* Maximum allowed value (inclusive)
|
|
1589
|
+
*/
|
|
1590
|
+
max?: number;
|
|
1591
|
+
/**
|
|
1592
|
+
* Minimum allowed value (inclusive)
|
|
1593
|
+
*/
|
|
1594
|
+
min?: number;
|
|
1595
|
+
}
|
|
1596
|
+
}
|
|
1597
|
+
/**
|
|
1598
|
+
* Filter molecules by custom SMARTS patterns. Molecules matching any pattern are
|
|
1599
|
+
* rejected.
|
|
1600
|
+
*/
|
|
1601
|
+
interface SmartsCustomFilterResponse {
|
|
1602
|
+
/**
|
|
1603
|
+
* SMARTS patterns. Molecules matching any pattern are rejected.
|
|
1604
|
+
*/
|
|
1605
|
+
patterns: Array<string>;
|
|
1606
|
+
type: 'smarts_custom_filter';
|
|
1607
|
+
}
|
|
1608
|
+
/**
|
|
1609
|
+
* Filter molecules using a predefined SMARTS catalog of structural alerts.
|
|
1610
|
+
*/
|
|
1611
|
+
interface SmartsCatalogFilterResponse {
|
|
1612
|
+
/**
|
|
1613
|
+
* Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs
|
|
1614
|
+
* reject known problematic substructures.
|
|
1615
|
+
*/
|
|
1616
|
+
catalog: 'PAINS' | 'PAINS_A' | 'PAINS_B' | 'PAINS_C' | 'BRENK' | 'CHEMBL' | 'CHEMBL_BMS' | 'CHEMBL_Dundee' | 'CHEMBL_Glaxo' | 'CHEMBL_Inpharmatica' | 'CHEMBL_LINT' | 'CHEMBL_MLSMR' | 'CHEMBL_SureChEMBL' | 'NIH';
|
|
1617
|
+
type: 'smarts_catalog_filter';
|
|
1618
|
+
}
|
|
1619
|
+
/**
|
|
1620
|
+
* Filter molecules by regex patterns on their SMILES representation.
|
|
1621
|
+
*/
|
|
1622
|
+
interface SmilesRegexFilterResponse {
|
|
1623
|
+
/**
|
|
1624
|
+
* Regex patterns applied to SMILES strings. Molecules matching any pattern are
|
|
1625
|
+
* rejected.
|
|
1626
|
+
*/
|
|
1627
|
+
patterns: Array<string>;
|
|
1628
|
+
type: 'smiles_regex_filter';
|
|
1629
|
+
}
|
|
1630
|
+
}
|
|
1631
|
+
}
|
|
1632
|
+
interface Progress {
|
|
1633
|
+
/**
|
|
1634
|
+
* Number of accepted molecules that reached terminal failure during screening.
|
|
1635
|
+
*/
|
|
1636
|
+
num_molecules_failed: number;
|
|
1637
|
+
/**
|
|
1638
|
+
* Number of accepted molecules that produced usable screening results.
|
|
1639
|
+
*/
|
|
1640
|
+
num_molecules_screened: number;
|
|
1641
|
+
/**
|
|
1642
|
+
* Total number of molecules accepted into screening after server-side validation
|
|
1643
|
+
* and filtering.
|
|
1644
|
+
*/
|
|
1645
|
+
total_molecules_to_screen: number;
|
|
1646
|
+
/**
|
|
1647
|
+
* ID of the most recently screened result
|
|
1648
|
+
*/
|
|
1649
|
+
latest_result_id?: string;
|
|
1650
|
+
rejection_summary?: Progress.RejectionSummary;
|
|
1651
|
+
}
|
|
1652
|
+
namespace Progress {
|
|
1653
|
+
interface RejectionSummary {
|
|
1654
|
+
/**
|
|
1655
|
+
* Number of submitted molecules removed by server-side filtering rules.
|
|
1656
|
+
*/
|
|
1657
|
+
filtered_count: number;
|
|
1658
|
+
/**
|
|
1659
|
+
* Number of submitted molecules rejected as invalid input.
|
|
1660
|
+
*/
|
|
1661
|
+
invalid_count: number;
|
|
1662
|
+
}
|
|
1663
|
+
}
|
|
1664
|
+
}
|
|
1665
|
+
/**
|
|
1666
|
+
* A small molecule library screening engine run
|
|
1667
|
+
*/
|
|
1668
|
+
export interface LibraryScreenStopResponse {
|
|
1669
|
+
/**
|
|
1670
|
+
* Unique SmScreen identifier
|
|
1671
|
+
*/
|
|
1672
|
+
id: string;
|
|
1673
|
+
completed_at: string | null;
|
|
1674
|
+
created_at: string;
|
|
1675
|
+
/**
|
|
1676
|
+
* When the input, output, and result data was permanently deleted. Null if data
|
|
1677
|
+
* has not been deleted.
|
|
1678
|
+
*/
|
|
1679
|
+
data_deleted_at: string | null;
|
|
1680
|
+
/**
|
|
1681
|
+
* Engine used for small molecule library screen
|
|
1682
|
+
*/
|
|
1683
|
+
engine: 'boltz-sm-screen';
|
|
1684
|
+
/**
|
|
1685
|
+
* Engine version used for small molecule library screen
|
|
1686
|
+
*/
|
|
1687
|
+
engine_version: string;
|
|
1688
|
+
error: LibraryScreenStopResponse.Error | null;
|
|
1689
|
+
/**
|
|
1690
|
+
* Pipeline input (null if data deleted)
|
|
1691
|
+
*/
|
|
1692
|
+
input: LibraryScreenStopResponse.Input | null;
|
|
1693
|
+
/**
|
|
1694
|
+
* Whether this resource was created with a live API key.
|
|
1695
|
+
*/
|
|
1696
|
+
livemode: boolean;
|
|
1697
|
+
progress: LibraryScreenStopResponse.Progress | null;
|
|
1698
|
+
started_at: string | null;
|
|
1699
|
+
status: 'pending' | 'running' | 'succeeded' | 'failed' | 'stopped';
|
|
1700
|
+
stopped_at: string | null;
|
|
1701
|
+
/**
|
|
1702
|
+
* Workspace ID
|
|
1703
|
+
*/
|
|
1704
|
+
workspace_id: string;
|
|
1705
|
+
/**
|
|
1706
|
+
* Client-provided idempotency key
|
|
1707
|
+
*/
|
|
1708
|
+
idempotency_key?: string;
|
|
1709
|
+
}
|
|
1710
|
+
export declare namespace LibraryScreenStopResponse {
|
|
1711
|
+
interface Error {
|
|
1712
|
+
/**
|
|
1713
|
+
* Machine-readable error code
|
|
1714
|
+
*/
|
|
1715
|
+
code: string;
|
|
1716
|
+
/**
|
|
1717
|
+
* Human-readable error message
|
|
1718
|
+
*/
|
|
1719
|
+
message: string;
|
|
1720
|
+
/**
|
|
1721
|
+
* Additional field-level error details keyed by input path, when available.
|
|
1722
|
+
*/
|
|
1723
|
+
details?: unknown;
|
|
1724
|
+
}
|
|
1725
|
+
/**
|
|
1726
|
+
* Pipeline input (null if data deleted)
|
|
1727
|
+
*/
|
|
1728
|
+
interface Input {
|
|
1729
|
+
molecules: Input.Molecules;
|
|
1730
|
+
/**
|
|
1731
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
1732
|
+
*/
|
|
1733
|
+
target: Input.Target;
|
|
1734
|
+
/**
|
|
1735
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
1736
|
+
* and custom filters.
|
|
1737
|
+
*/
|
|
1738
|
+
molecule_filters?: Input.MoleculeFilters;
|
|
1739
|
+
}
|
|
1740
|
+
namespace Input {
|
|
1741
|
+
interface Molecules {
|
|
1742
|
+
/**
|
|
1743
|
+
* URL to download the file
|
|
1744
|
+
*/
|
|
1745
|
+
url: string;
|
|
1746
|
+
/**
|
|
1747
|
+
* When the presigned URL expires
|
|
1748
|
+
*/
|
|
1749
|
+
url_expires_at: string;
|
|
1750
|
+
}
|
|
1751
|
+
/**
|
|
1752
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
1753
|
+
*/
|
|
1754
|
+
interface Target {
|
|
1755
|
+
/**
|
|
1756
|
+
* Protein entities defining the target structure. Each entity represents a protein
|
|
1757
|
+
* chain.
|
|
1758
|
+
*/
|
|
1759
|
+
entities: Array<Target.Entity>;
|
|
1760
|
+
/**
|
|
1761
|
+
* Covalent bond constraints between atoms in the target complex. Atom-level ligand
|
|
1762
|
+
* references currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
1763
|
+
*/
|
|
1764
|
+
bonds?: Array<Target.Bond>;
|
|
1765
|
+
/**
|
|
1766
|
+
* Structural constraints (pocket and contact). Atom-level ligand references
|
|
1767
|
+
* currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
1768
|
+
*/
|
|
1769
|
+
constraints?: Array<Target.PocketConstraintResponse | Target.ContactConstraintResponse>;
|
|
1770
|
+
/**
|
|
1771
|
+
* Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. "A")
|
|
1772
|
+
* and the value is an array of 0-indexed residue indices that define the binding
|
|
1773
|
+
* pocket on that chain. When provided, these residues guide pocket extraction and
|
|
1774
|
+
* add a derived pocket constraint during affinity predictions. That derived
|
|
1775
|
+
* constraint remains separate from any explicit pocket constraints in
|
|
1776
|
+
* target.constraints. When omitted, the model auto-detects the pocket.
|
|
1777
|
+
*/
|
|
1778
|
+
pocket_residues?: {
|
|
1779
|
+
[key: string]: Array<number>;
|
|
1780
|
+
};
|
|
1781
|
+
/**
|
|
1782
|
+
* Reference ligands as SMILES strings that help the model identify the binding
|
|
1783
|
+
* pocket. When omitted, a set of drug-like default ligands is used for pocket
|
|
1784
|
+
* detection.
|
|
1785
|
+
*/
|
|
1786
|
+
reference_ligands?: Array<string>;
|
|
1787
|
+
}
|
|
1788
|
+
namespace Target {
|
|
1789
|
+
interface Entity {
|
|
1790
|
+
/**
|
|
1791
|
+
* Chain IDs for this entity
|
|
1792
|
+
*/
|
|
1793
|
+
chain_ids: Array<string>;
|
|
1794
|
+
type: 'protein';
|
|
1795
|
+
/**
|
|
1796
|
+
* Amino acid sequence (one-letter codes)
|
|
1797
|
+
*/
|
|
1798
|
+
value: string;
|
|
1799
|
+
/**
|
|
1800
|
+
* Whether the sequence is cyclic
|
|
1801
|
+
*/
|
|
1802
|
+
cyclic?: boolean;
|
|
1803
|
+
/**
|
|
1804
|
+
* Post-translational modifications. Optional; defaults to an empty list when
|
|
1805
|
+
* omitted.
|
|
1806
|
+
*/
|
|
1807
|
+
modifications?: Array<Entity.CcdModificationResponse | Entity.SmilesModificationResponse>;
|
|
1808
|
+
}
|
|
1809
|
+
namespace Entity {
|
|
1810
|
+
interface CcdModificationResponse {
|
|
1811
|
+
/**
|
|
1812
|
+
* 0-based index of the residue to modify
|
|
1813
|
+
*/
|
|
1814
|
+
residue_index: number;
|
|
1815
|
+
type: 'ccd';
|
|
1816
|
+
/**
|
|
1817
|
+
* CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
|
|
1818
|
+
* phosphoserine)
|
|
1819
|
+
*/
|
|
1820
|
+
value: string;
|
|
1821
|
+
}
|
|
1822
|
+
interface SmilesModificationResponse {
|
|
1823
|
+
/**
|
|
1824
|
+
* 0-based index of the residue to modify
|
|
1825
|
+
*/
|
|
1826
|
+
residue_index: number;
|
|
1827
|
+
type: 'smiles';
|
|
1828
|
+
/**
|
|
1829
|
+
* SMILES string for the modification
|
|
1830
|
+
*/
|
|
1831
|
+
value: string;
|
|
1832
|
+
}
|
|
1833
|
+
}
|
|
1834
|
+
/**
|
|
1835
|
+
* Bond between two atoms. Atom-level ligand references currently support
|
|
1836
|
+
* ligand_ccd entities only; ligand_smiles is unsupported.
|
|
1837
|
+
*/
|
|
1838
|
+
interface Bond {
|
|
1839
|
+
/**
|
|
1840
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1841
|
+
* entities only; ligand_smiles is unsupported.
|
|
1842
|
+
*/
|
|
1843
|
+
atom1: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
1844
|
+
/**
|
|
1845
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1846
|
+
* entities only; ligand_smiles is unsupported.
|
|
1847
|
+
*/
|
|
1848
|
+
atom2: Bond.LigandAtomResponse | Bond.PolymerAtomResponse;
|
|
1849
|
+
}
|
|
1850
|
+
namespace Bond {
|
|
1851
|
+
/**
|
|
1852
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1853
|
+
* entities only; ligand_smiles is unsupported.
|
|
1854
|
+
*/
|
|
1855
|
+
interface LigandAtomResponse {
|
|
1856
|
+
/**
|
|
1857
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
1858
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
1859
|
+
*/
|
|
1860
|
+
atom_name: string;
|
|
1861
|
+
/**
|
|
1862
|
+
* Chain ID containing the atom
|
|
1863
|
+
*/
|
|
1864
|
+
chain_id: string;
|
|
1865
|
+
type: 'ligand_atom';
|
|
1866
|
+
}
|
|
1867
|
+
interface PolymerAtomResponse {
|
|
1868
|
+
/**
|
|
1869
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
1870
|
+
*/
|
|
1871
|
+
atom_name: string;
|
|
1872
|
+
/**
|
|
1873
|
+
* Chain ID containing the atom
|
|
1874
|
+
*/
|
|
1875
|
+
chain_id: string;
|
|
1876
|
+
/**
|
|
1877
|
+
* 0-based residue index
|
|
1878
|
+
*/
|
|
1879
|
+
residue_index: number;
|
|
1880
|
+
type: 'polymer_atom';
|
|
1881
|
+
}
|
|
1882
|
+
/**
|
|
1883
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
1884
|
+
* entities only; ligand_smiles is unsupported.
|
|
1885
|
+
*/
|
|
1886
|
+
interface LigandAtomResponse {
|
|
1887
|
+
/**
|
|
1888
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
1889
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
1890
|
+
*/
|
|
1891
|
+
atom_name: string;
|
|
1892
|
+
/**
|
|
1893
|
+
* Chain ID containing the atom
|
|
1894
|
+
*/
|
|
1895
|
+
chain_id: string;
|
|
1896
|
+
type: 'ligand_atom';
|
|
1897
|
+
}
|
|
1898
|
+
interface PolymerAtomResponse {
|
|
1899
|
+
/**
|
|
1900
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
1901
|
+
*/
|
|
1902
|
+
atom_name: string;
|
|
1903
|
+
/**
|
|
1904
|
+
* Chain ID containing the atom
|
|
1905
|
+
*/
|
|
1906
|
+
chain_id: string;
|
|
1907
|
+
/**
|
|
1908
|
+
* 0-based residue index
|
|
1909
|
+
*/
|
|
1910
|
+
residue_index: number;
|
|
1911
|
+
type: 'polymer_atom';
|
|
1912
|
+
}
|
|
1913
|
+
}
|
|
1914
|
+
/**
|
|
1915
|
+
* Constrains the binder to interact with specific pocket residues on the target.
|
|
1916
|
+
*/
|
|
1917
|
+
interface PocketConstraintResponse {
|
|
1918
|
+
/**
|
|
1919
|
+
* Chain ID of the binder molecule
|
|
1920
|
+
*/
|
|
1921
|
+
binder_chain_id: string;
|
|
1922
|
+
/**
|
|
1923
|
+
* Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
|
|
1924
|
+
* the value is an array of 0-indexed residue indices that define the pocket on
|
|
1925
|
+
* that chain.
|
|
1926
|
+
*/
|
|
1927
|
+
contact_residues: {
|
|
1928
|
+
[key: string]: Array<number>;
|
|
1929
|
+
};
|
|
1930
|
+
/**
|
|
1931
|
+
* Maximum allowed distance in Angstroms between binder and pocket residues.
|
|
1932
|
+
* Typical range: 4-8 A.
|
|
1933
|
+
*/
|
|
1934
|
+
max_distance_angstrom: number;
|
|
1935
|
+
type: 'pocket';
|
|
1936
|
+
/**
|
|
1937
|
+
* Whether to force the constraint
|
|
1938
|
+
*/
|
|
1939
|
+
force?: boolean;
|
|
1940
|
+
}
|
|
1941
|
+
/**
|
|
1942
|
+
* Contact constraint between two tokens. Atom-level ligand references currently
|
|
1943
|
+
* support ligand_ccd entities only; ligand_smiles is unsupported.
|
|
1944
|
+
*/
|
|
1945
|
+
interface ContactConstraintResponse {
|
|
1946
|
+
/**
|
|
1947
|
+
* Maximum distance in Angstroms
|
|
1948
|
+
*/
|
|
1949
|
+
max_distance_angstrom: number;
|
|
1950
|
+
/**
|
|
1951
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1952
|
+
* entities only; ligand_smiles is unsupported.
|
|
1953
|
+
*/
|
|
1954
|
+
token1: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
1955
|
+
/**
|
|
1956
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1957
|
+
* entities only; ligand_smiles is unsupported.
|
|
1958
|
+
*/
|
|
1959
|
+
token2: ContactConstraintResponse.PolymerContactTokenResponse | ContactConstraintResponse.LigandContactTokenResponse;
|
|
1960
|
+
type: 'contact';
|
|
1961
|
+
/**
|
|
1962
|
+
* Whether to force the constraint
|
|
1963
|
+
*/
|
|
1964
|
+
force?: boolean;
|
|
1965
|
+
}
|
|
1966
|
+
namespace ContactConstraintResponse {
|
|
1967
|
+
interface PolymerContactTokenResponse {
|
|
1968
|
+
/**
|
|
1969
|
+
* Chain ID
|
|
1970
|
+
*/
|
|
1971
|
+
chain_id: string;
|
|
1972
|
+
/**
|
|
1973
|
+
* 0-based residue index
|
|
1974
|
+
*/
|
|
1975
|
+
residue_index: number;
|
|
1976
|
+
type: 'polymer_contact';
|
|
1977
|
+
}
|
|
1978
|
+
/**
|
|
1979
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
1980
|
+
* entities only; ligand_smiles is unsupported.
|
|
1981
|
+
*/
|
|
1982
|
+
interface LigandContactTokenResponse {
|
|
1983
|
+
/**
|
|
1984
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
1985
|
+
* unsupported; use ligand_ccd instead.
|
|
1986
|
+
*/
|
|
1987
|
+
atom_name: string;
|
|
1988
|
+
/**
|
|
1989
|
+
* Chain ID
|
|
1990
|
+
*/
|
|
1991
|
+
chain_id: string;
|
|
1992
|
+
type: 'ligand_contact';
|
|
1993
|
+
}
|
|
1994
|
+
interface PolymerContactTokenResponse {
|
|
1995
|
+
/**
|
|
1996
|
+
* Chain ID
|
|
1997
|
+
*/
|
|
1998
|
+
chain_id: string;
|
|
1999
|
+
/**
|
|
2000
|
+
* 0-based residue index
|
|
2001
|
+
*/
|
|
2002
|
+
residue_index: number;
|
|
2003
|
+
type: 'polymer_contact';
|
|
2004
|
+
}
|
|
2005
|
+
/**
|
|
2006
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
2007
|
+
* entities only; ligand_smiles is unsupported.
|
|
2008
|
+
*/
|
|
2009
|
+
interface LigandContactTokenResponse {
|
|
2010
|
+
/**
|
|
2011
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
2012
|
+
* unsupported; use ligand_ccd instead.
|
|
2013
|
+
*/
|
|
2014
|
+
atom_name: string;
|
|
2015
|
+
/**
|
|
2016
|
+
* Chain ID
|
|
2017
|
+
*/
|
|
2018
|
+
chain_id: string;
|
|
2019
|
+
type: 'ligand_contact';
|
|
2020
|
+
}
|
|
2021
|
+
}
|
|
2022
|
+
}
|
|
2023
|
+
/**
|
|
2024
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
2025
|
+
* and custom filters.
|
|
2026
|
+
*/
|
|
2027
|
+
interface MoleculeFilters {
|
|
2028
|
+
/**
|
|
2029
|
+
* Controls the stringency of Boltz's built-in SMARTS structural alert filtering,
|
|
2030
|
+
* which removes molecules matching known problematic substructures. 'recommended'
|
|
2031
|
+
* (default): applies a curated set of alerts balancing safety and hit rate.
|
|
2032
|
+
* 'extra': adds additional alerts beyond the recommended set for stricter
|
|
2033
|
+
* filtering. 'aggressive': applies the most comprehensive alert set — may reject
|
|
2034
|
+
* viable molecules. 'disabled': turns off Boltz SMARTS filtering entirely; only
|
|
2035
|
+
* custom_filters will be applied.
|
|
2036
|
+
*/
|
|
2037
|
+
boltz_smarts_catalog_filter_level?: 'recommended' | 'extra' | 'aggressive' | 'disabled';
|
|
2038
|
+
/**
|
|
2039
|
+
* Custom filters to apply. Molecules must pass all filters (AND logic).
|
|
2040
|
+
*/
|
|
2041
|
+
custom_filters?: Array<MoleculeFilters.LipinskiFilterResponse | MoleculeFilters.RdkitDescriptorFilterResponse | MoleculeFilters.SmartsCustomFilterResponse | MoleculeFilters.SmartsCatalogFilterResponse | MoleculeFilters.SmilesRegexFilterResponse>;
|
|
2042
|
+
}
|
|
2043
|
+
namespace MoleculeFilters {
|
|
2044
|
+
/**
|
|
2045
|
+
* Lipinski's Rule of Five filter. Rejects molecules that violate drug-likeness
|
|
2046
|
+
* criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen
|
|
2047
|
+
* bond acceptors.
|
|
2048
|
+
*/
|
|
2049
|
+
interface LipinskiFilterResponse {
|
|
2050
|
+
/**
|
|
2051
|
+
* Maximum number of hydrogen bond acceptors. Lipinski threshold: 10
|
|
2052
|
+
*/
|
|
2053
|
+
max_hba: number;
|
|
2054
|
+
/**
|
|
2055
|
+
* Maximum number of hydrogen bond donors. Lipinski threshold: 5
|
|
2056
|
+
*/
|
|
2057
|
+
max_hbd: number;
|
|
2058
|
+
/**
|
|
2059
|
+
* Maximum LogP. Lipinski threshold: 5
|
|
2060
|
+
*/
|
|
2061
|
+
max_logp: number;
|
|
2062
|
+
/**
|
|
2063
|
+
* Maximum molecular weight (Da). Lipinski threshold: 500
|
|
2064
|
+
*/
|
|
2065
|
+
max_mw: number;
|
|
2066
|
+
type: 'lipinski_filter';
|
|
2067
|
+
/**
|
|
2068
|
+
* If true, one rule violation is allowed (classic Rule of Five). Defaults to false
|
|
2069
|
+
* (all rules must pass).
|
|
2070
|
+
*/
|
|
2071
|
+
allow_single_violation?: boolean;
|
|
2072
|
+
}
|
|
2073
|
+
/**
|
|
2074
|
+
* Filter molecules by RDKit molecular descriptors. Each descriptor is constrained
|
|
2075
|
+
* to a min/max range. Only descriptors you provide are checked — omitted
|
|
2076
|
+
* descriptors are unconstrained.
|
|
2077
|
+
*/
|
|
2078
|
+
interface RdkitDescriptorFilterResponse {
|
|
2079
|
+
type: 'rdkit_descriptor_filter';
|
|
2080
|
+
/**
|
|
2081
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2082
|
+
*/
|
|
2083
|
+
fraction_csp3?: RdkitDescriptorFilterResponse.FractionCsp3;
|
|
2084
|
+
/**
|
|
2085
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2086
|
+
*/
|
|
2087
|
+
mol_logp?: RdkitDescriptorFilterResponse.MolLogp;
|
|
2088
|
+
/**
|
|
2089
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2090
|
+
*/
|
|
2091
|
+
mol_wt?: RdkitDescriptorFilterResponse.MolWt;
|
|
2092
|
+
/**
|
|
2093
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2094
|
+
*/
|
|
2095
|
+
num_aromatic_rings?: RdkitDescriptorFilterResponse.NumAromaticRings;
|
|
2096
|
+
/**
|
|
2097
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2098
|
+
*/
|
|
2099
|
+
num_h_acceptors?: RdkitDescriptorFilterResponse.NumHAcceptors;
|
|
2100
|
+
/**
|
|
2101
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2102
|
+
*/
|
|
2103
|
+
num_h_donors?: RdkitDescriptorFilterResponse.NumHDonors;
|
|
2104
|
+
/**
|
|
2105
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2106
|
+
*/
|
|
2107
|
+
num_heteroatoms?: RdkitDescriptorFilterResponse.NumHeteroatoms;
|
|
2108
|
+
/**
|
|
2109
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2110
|
+
*/
|
|
2111
|
+
num_rings?: RdkitDescriptorFilterResponse.NumRings;
|
|
2112
|
+
/**
|
|
2113
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2114
|
+
*/
|
|
2115
|
+
num_rotatable_bonds?: RdkitDescriptorFilterResponse.NumRotatableBonds;
|
|
2116
|
+
/**
|
|
2117
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2118
|
+
*/
|
|
2119
|
+
tpsa?: RdkitDescriptorFilterResponse.Tpsa;
|
|
2120
|
+
}
|
|
2121
|
+
namespace RdkitDescriptorFilterResponse {
|
|
2122
|
+
/**
|
|
2123
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2124
|
+
*/
|
|
2125
|
+
interface FractionCsp3 {
|
|
2126
|
+
/**
|
|
2127
|
+
* Maximum allowed value (inclusive)
|
|
2128
|
+
*/
|
|
2129
|
+
max?: number;
|
|
2130
|
+
/**
|
|
2131
|
+
* Minimum allowed value (inclusive)
|
|
2132
|
+
*/
|
|
2133
|
+
min?: number;
|
|
2134
|
+
}
|
|
2135
|
+
/**
|
|
2136
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2137
|
+
*/
|
|
2138
|
+
interface MolLogp {
|
|
2139
|
+
/**
|
|
2140
|
+
* Maximum allowed value (inclusive)
|
|
2141
|
+
*/
|
|
2142
|
+
max?: number;
|
|
2143
|
+
/**
|
|
2144
|
+
* Minimum allowed value (inclusive)
|
|
2145
|
+
*/
|
|
2146
|
+
min?: number;
|
|
2147
|
+
}
|
|
2148
|
+
/**
|
|
2149
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2150
|
+
*/
|
|
2151
|
+
interface MolWt {
|
|
2152
|
+
/**
|
|
2153
|
+
* Maximum allowed value (inclusive)
|
|
2154
|
+
*/
|
|
2155
|
+
max?: number;
|
|
2156
|
+
/**
|
|
2157
|
+
* Minimum allowed value (inclusive)
|
|
2158
|
+
*/
|
|
2159
|
+
min?: number;
|
|
2160
|
+
}
|
|
2161
|
+
/**
|
|
2162
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2163
|
+
*/
|
|
2164
|
+
interface NumAromaticRings {
|
|
2165
|
+
/**
|
|
2166
|
+
* Maximum allowed value (inclusive)
|
|
2167
|
+
*/
|
|
2168
|
+
max?: number;
|
|
2169
|
+
/**
|
|
2170
|
+
* Minimum allowed value (inclusive)
|
|
2171
|
+
*/
|
|
2172
|
+
min?: number;
|
|
2173
|
+
}
|
|
2174
|
+
/**
|
|
2175
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2176
|
+
*/
|
|
2177
|
+
interface NumHAcceptors {
|
|
2178
|
+
/**
|
|
2179
|
+
* Maximum allowed value (inclusive)
|
|
2180
|
+
*/
|
|
2181
|
+
max?: number;
|
|
2182
|
+
/**
|
|
2183
|
+
* Minimum allowed value (inclusive)
|
|
2184
|
+
*/
|
|
2185
|
+
min?: number;
|
|
2186
|
+
}
|
|
2187
|
+
/**
|
|
2188
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2189
|
+
*/
|
|
2190
|
+
interface NumHDonors {
|
|
2191
|
+
/**
|
|
2192
|
+
* Maximum allowed value (inclusive)
|
|
2193
|
+
*/
|
|
2194
|
+
max?: number;
|
|
2195
|
+
/**
|
|
2196
|
+
* Minimum allowed value (inclusive)
|
|
2197
|
+
*/
|
|
2198
|
+
min?: number;
|
|
2199
|
+
}
|
|
2200
|
+
/**
|
|
2201
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2202
|
+
*/
|
|
2203
|
+
interface NumHeteroatoms {
|
|
2204
|
+
/**
|
|
2205
|
+
* Maximum allowed value (inclusive)
|
|
2206
|
+
*/
|
|
2207
|
+
max?: number;
|
|
2208
|
+
/**
|
|
2209
|
+
* Minimum allowed value (inclusive)
|
|
2210
|
+
*/
|
|
2211
|
+
min?: number;
|
|
2212
|
+
}
|
|
2213
|
+
/**
|
|
2214
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2215
|
+
*/
|
|
2216
|
+
interface NumRings {
|
|
2217
|
+
/**
|
|
2218
|
+
* Maximum allowed value (inclusive)
|
|
2219
|
+
*/
|
|
2220
|
+
max?: number;
|
|
2221
|
+
/**
|
|
2222
|
+
* Minimum allowed value (inclusive)
|
|
2223
|
+
*/
|
|
2224
|
+
min?: number;
|
|
2225
|
+
}
|
|
2226
|
+
/**
|
|
2227
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2228
|
+
*/
|
|
2229
|
+
interface NumRotatableBonds {
|
|
2230
|
+
/**
|
|
2231
|
+
* Maximum allowed value (inclusive)
|
|
2232
|
+
*/
|
|
2233
|
+
max?: number;
|
|
2234
|
+
/**
|
|
2235
|
+
* Minimum allowed value (inclusive)
|
|
2236
|
+
*/
|
|
2237
|
+
min?: number;
|
|
2238
|
+
}
|
|
2239
|
+
/**
|
|
2240
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2241
|
+
*/
|
|
2242
|
+
interface Tpsa {
|
|
2243
|
+
/**
|
|
2244
|
+
* Maximum allowed value (inclusive)
|
|
2245
|
+
*/
|
|
2246
|
+
max?: number;
|
|
2247
|
+
/**
|
|
2248
|
+
* Minimum allowed value (inclusive)
|
|
2249
|
+
*/
|
|
2250
|
+
min?: number;
|
|
2251
|
+
}
|
|
2252
|
+
}
|
|
2253
|
+
/**
|
|
2254
|
+
* Filter molecules by custom SMARTS patterns. Molecules matching any pattern are
|
|
2255
|
+
* rejected.
|
|
2256
|
+
*/
|
|
2257
|
+
interface SmartsCustomFilterResponse {
|
|
2258
|
+
/**
|
|
2259
|
+
* SMARTS patterns. Molecules matching any pattern are rejected.
|
|
2260
|
+
*/
|
|
2261
|
+
patterns: Array<string>;
|
|
2262
|
+
type: 'smarts_custom_filter';
|
|
2263
|
+
}
|
|
2264
|
+
/**
|
|
2265
|
+
* Filter molecules using a predefined SMARTS catalog of structural alerts.
|
|
2266
|
+
*/
|
|
2267
|
+
interface SmartsCatalogFilterResponse {
|
|
2268
|
+
/**
|
|
2269
|
+
* Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs
|
|
2270
|
+
* reject known problematic substructures.
|
|
2271
|
+
*/
|
|
2272
|
+
catalog: 'PAINS' | 'PAINS_A' | 'PAINS_B' | 'PAINS_C' | 'BRENK' | 'CHEMBL' | 'CHEMBL_BMS' | 'CHEMBL_Dundee' | 'CHEMBL_Glaxo' | 'CHEMBL_Inpharmatica' | 'CHEMBL_LINT' | 'CHEMBL_MLSMR' | 'CHEMBL_SureChEMBL' | 'NIH';
|
|
2273
|
+
type: 'smarts_catalog_filter';
|
|
2274
|
+
}
|
|
2275
|
+
/**
|
|
2276
|
+
* Filter molecules by regex patterns on their SMILES representation.
|
|
2277
|
+
*/
|
|
2278
|
+
interface SmilesRegexFilterResponse {
|
|
2279
|
+
/**
|
|
2280
|
+
* Regex patterns applied to SMILES strings. Molecules matching any pattern are
|
|
2281
|
+
* rejected.
|
|
2282
|
+
*/
|
|
2283
|
+
patterns: Array<string>;
|
|
2284
|
+
type: 'smiles_regex_filter';
|
|
2285
|
+
}
|
|
2286
|
+
}
|
|
2287
|
+
}
|
|
2288
|
+
interface Progress {
|
|
2289
|
+
/**
|
|
2290
|
+
* Number of accepted molecules that reached terminal failure during screening.
|
|
2291
|
+
*/
|
|
2292
|
+
num_molecules_failed: number;
|
|
2293
|
+
/**
|
|
2294
|
+
* Number of accepted molecules that produced usable screening results.
|
|
2295
|
+
*/
|
|
2296
|
+
num_molecules_screened: number;
|
|
2297
|
+
/**
|
|
2298
|
+
* Total number of molecules accepted into screening after server-side validation
|
|
2299
|
+
* and filtering.
|
|
2300
|
+
*/
|
|
2301
|
+
total_molecules_to_screen: number;
|
|
2302
|
+
/**
|
|
2303
|
+
* ID of the most recently screened result
|
|
2304
|
+
*/
|
|
2305
|
+
latest_result_id?: string;
|
|
2306
|
+
rejection_summary?: Progress.RejectionSummary;
|
|
2307
|
+
}
|
|
2308
|
+
namespace Progress {
|
|
2309
|
+
interface RejectionSummary {
|
|
2310
|
+
/**
|
|
2311
|
+
* Number of submitted molecules removed by server-side filtering rules.
|
|
2312
|
+
*/
|
|
2313
|
+
filtered_count: number;
|
|
2314
|
+
/**
|
|
2315
|
+
* Number of submitted molecules rejected as invalid input.
|
|
2316
|
+
*/
|
|
2317
|
+
invalid_count: number;
|
|
2318
|
+
}
|
|
2319
|
+
}
|
|
2320
|
+
}
|
|
2321
|
+
export interface LibraryScreenRetrieveParams {
|
|
2322
|
+
/**
|
|
2323
|
+
* Workspace ID. Only used with admin API keys. Ignored (or validated) for
|
|
2324
|
+
* workspace-scoped keys.
|
|
2325
|
+
*/
|
|
2326
|
+
workspace_id?: string;
|
|
2327
|
+
}
|
|
2328
|
+
export interface LibraryScreenListParams extends CursorPageParams {
|
|
2329
|
+
/**
|
|
2330
|
+
* Filter by workspace ID. Only used with admin API keys. If not provided, defaults
|
|
2331
|
+
* to the workspace associated with the API key, or the default workspace for admin
|
|
2332
|
+
* keys.
|
|
2333
|
+
*/
|
|
2334
|
+
workspace_id?: string;
|
|
2335
|
+
}
|
|
2336
|
+
export interface LibraryScreenEstimateCostParams {
|
|
2337
|
+
/**
|
|
2338
|
+
* List of small molecules to screen.
|
|
2339
|
+
*/
|
|
2340
|
+
molecules: Array<LibraryScreenEstimateCostParams.Molecule>;
|
|
2341
|
+
/**
|
|
2342
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
2343
|
+
*/
|
|
2344
|
+
target: LibraryScreenEstimateCostParams.Target;
|
|
2345
|
+
/**
|
|
2346
|
+
* Client-provided key to prevent duplicate submissions on retries
|
|
2347
|
+
*/
|
|
2348
|
+
idempotency_key?: string;
|
|
2349
|
+
/**
|
|
2350
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
2351
|
+
* and custom filters.
|
|
2352
|
+
*/
|
|
2353
|
+
molecule_filters?: LibraryScreenEstimateCostParams.MoleculeFilters;
|
|
2354
|
+
/**
|
|
2355
|
+
* Target workspace ID (admin keys only; ignored for workspace keys)
|
|
2356
|
+
*/
|
|
2357
|
+
workspace_id?: string;
|
|
2358
|
+
}
|
|
2359
|
+
export declare namespace LibraryScreenEstimateCostParams {
|
|
2360
|
+
/**
|
|
2361
|
+
* A small molecule with SMILES and optional ID
|
|
2362
|
+
*/
|
|
2363
|
+
interface Molecule {
|
|
2364
|
+
/**
|
|
2365
|
+
* SMILES string of the molecule
|
|
2366
|
+
*/
|
|
2367
|
+
smiles: string;
|
|
2368
|
+
/**
|
|
2369
|
+
* Optional identifier for this molecule
|
|
2370
|
+
*/
|
|
2371
|
+
id?: string;
|
|
2372
|
+
}
|
|
2373
|
+
/**
|
|
2374
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
2375
|
+
*/
|
|
2376
|
+
interface Target {
|
|
2377
|
+
/**
|
|
2378
|
+
* Protein entities defining the target structure. Each entity represents a protein
|
|
2379
|
+
* chain.
|
|
2380
|
+
*/
|
|
2381
|
+
entities: Array<Target.Entity>;
|
|
2382
|
+
/**
|
|
2383
|
+
* Covalent bond constraints between atoms in the target complex. Atom-level ligand
|
|
2384
|
+
* references currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
2385
|
+
*/
|
|
2386
|
+
bonds?: Array<Target.Bond>;
|
|
2387
|
+
/**
|
|
2388
|
+
* Structural constraints (pocket and contact). Atom-level ligand references
|
|
2389
|
+
* currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
2390
|
+
*/
|
|
2391
|
+
constraints?: Array<Target.PocketConstraint | Target.ContactConstraint>;
|
|
2392
|
+
/**
|
|
2393
|
+
* Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. "A")
|
|
2394
|
+
* and the value is an array of 0-indexed residue indices that define the binding
|
|
2395
|
+
* pocket on that chain. When provided, these residues guide pocket extraction and
|
|
2396
|
+
* add a derived pocket constraint during affinity predictions. That derived
|
|
2397
|
+
* constraint remains separate from any explicit pocket constraints in
|
|
2398
|
+
* target.constraints. When omitted, the model auto-detects the pocket.
|
|
2399
|
+
*/
|
|
2400
|
+
pocket_residues?: {
|
|
2401
|
+
[key: string]: Array<number>;
|
|
2402
|
+
};
|
|
2403
|
+
/**
|
|
2404
|
+
* Reference ligands as SMILES strings that help the model identify the binding
|
|
2405
|
+
* pocket. When omitted, a set of drug-like default ligands is used for pocket
|
|
2406
|
+
* detection.
|
|
2407
|
+
*/
|
|
2408
|
+
reference_ligands?: Array<string>;
|
|
2409
|
+
}
|
|
2410
|
+
namespace Target {
|
|
2411
|
+
interface Entity {
|
|
2412
|
+
/**
|
|
2413
|
+
* Chain IDs for this entity
|
|
2414
|
+
*/
|
|
2415
|
+
chain_ids: Array<string>;
|
|
2416
|
+
type: 'protein';
|
|
2417
|
+
/**
|
|
2418
|
+
* Amino acid sequence (one-letter codes)
|
|
2419
|
+
*/
|
|
2420
|
+
value: string;
|
|
2421
|
+
/**
|
|
2422
|
+
* Whether the sequence is cyclic
|
|
2423
|
+
*/
|
|
2424
|
+
cyclic?: boolean;
|
|
2425
|
+
/**
|
|
2426
|
+
* Post-translational modifications. Optional; defaults to an empty list when
|
|
2427
|
+
* omitted.
|
|
2428
|
+
*/
|
|
2429
|
+
modifications?: Array<Entity.CcdModification | Entity.SmilesModification>;
|
|
2430
|
+
}
|
|
2431
|
+
namespace Entity {
|
|
2432
|
+
interface CcdModification {
|
|
2433
|
+
/**
|
|
2434
|
+
* 0-based index of the residue to modify
|
|
2435
|
+
*/
|
|
2436
|
+
residue_index: number;
|
|
2437
|
+
type: 'ccd';
|
|
2438
|
+
/**
|
|
2439
|
+
* CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
|
|
2440
|
+
* phosphoserine)
|
|
2441
|
+
*/
|
|
2442
|
+
value: string;
|
|
2443
|
+
}
|
|
2444
|
+
interface SmilesModification {
|
|
2445
|
+
/**
|
|
2446
|
+
* 0-based index of the residue to modify
|
|
2447
|
+
*/
|
|
2448
|
+
residue_index: number;
|
|
2449
|
+
type: 'smiles';
|
|
2450
|
+
/**
|
|
2451
|
+
* SMILES string for the modification
|
|
2452
|
+
*/
|
|
2453
|
+
value: string;
|
|
2454
|
+
}
|
|
2455
|
+
}
|
|
2456
|
+
/**
|
|
2457
|
+
* Bond between two atoms. Atom-level ligand references currently support
|
|
2458
|
+
* ligand_ccd entities only; ligand_smiles is unsupported.
|
|
2459
|
+
*/
|
|
2460
|
+
interface Bond {
|
|
2461
|
+
/**
|
|
2462
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
2463
|
+
* entities only; ligand_smiles is unsupported.
|
|
2464
|
+
*/
|
|
2465
|
+
atom1: Bond.LigandAtom | Bond.PolymerAtom;
|
|
2466
|
+
/**
|
|
2467
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
2468
|
+
* entities only; ligand_smiles is unsupported.
|
|
2469
|
+
*/
|
|
2470
|
+
atom2: Bond.LigandAtom | Bond.PolymerAtom;
|
|
2471
|
+
}
|
|
2472
|
+
namespace Bond {
|
|
2473
|
+
/**
|
|
2474
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
2475
|
+
* entities only; ligand_smiles is unsupported.
|
|
2476
|
+
*/
|
|
2477
|
+
interface LigandAtom {
|
|
2478
|
+
/**
|
|
2479
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
2480
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
2481
|
+
*/
|
|
2482
|
+
atom_name: string;
|
|
2483
|
+
/**
|
|
2484
|
+
* Chain ID containing the atom
|
|
2485
|
+
*/
|
|
2486
|
+
chain_id: string;
|
|
2487
|
+
type: 'ligand_atom';
|
|
2488
|
+
}
|
|
2489
|
+
interface PolymerAtom {
|
|
2490
|
+
/**
|
|
2491
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
2492
|
+
*/
|
|
2493
|
+
atom_name: string;
|
|
2494
|
+
/**
|
|
2495
|
+
* Chain ID containing the atom
|
|
2496
|
+
*/
|
|
2497
|
+
chain_id: string;
|
|
2498
|
+
/**
|
|
2499
|
+
* 0-based residue index
|
|
2500
|
+
*/
|
|
2501
|
+
residue_index: number;
|
|
2502
|
+
type: 'polymer_atom';
|
|
2503
|
+
}
|
|
2504
|
+
/**
|
|
2505
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
2506
|
+
* entities only; ligand_smiles is unsupported.
|
|
2507
|
+
*/
|
|
2508
|
+
interface LigandAtom {
|
|
2509
|
+
/**
|
|
2510
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
2511
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
2512
|
+
*/
|
|
2513
|
+
atom_name: string;
|
|
2514
|
+
/**
|
|
2515
|
+
* Chain ID containing the atom
|
|
2516
|
+
*/
|
|
2517
|
+
chain_id: string;
|
|
2518
|
+
type: 'ligand_atom';
|
|
2519
|
+
}
|
|
2520
|
+
interface PolymerAtom {
|
|
2521
|
+
/**
|
|
2522
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
2523
|
+
*/
|
|
2524
|
+
atom_name: string;
|
|
2525
|
+
/**
|
|
2526
|
+
* Chain ID containing the atom
|
|
2527
|
+
*/
|
|
2528
|
+
chain_id: string;
|
|
2529
|
+
/**
|
|
2530
|
+
* 0-based residue index
|
|
2531
|
+
*/
|
|
2532
|
+
residue_index: number;
|
|
2533
|
+
type: 'polymer_atom';
|
|
2534
|
+
}
|
|
2535
|
+
}
|
|
2536
|
+
/**
|
|
2537
|
+
* Constrains the binder to interact with specific pocket residues on the target.
|
|
2538
|
+
*/
|
|
2539
|
+
interface PocketConstraint {
|
|
2540
|
+
/**
|
|
2541
|
+
* Chain ID of the binder molecule
|
|
2542
|
+
*/
|
|
2543
|
+
binder_chain_id: string;
|
|
2544
|
+
/**
|
|
2545
|
+
* Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
|
|
2546
|
+
* the value is an array of 0-indexed residue indices that define the pocket on
|
|
2547
|
+
* that chain.
|
|
2548
|
+
*/
|
|
2549
|
+
contact_residues: {
|
|
2550
|
+
[key: string]: Array<number>;
|
|
2551
|
+
};
|
|
2552
|
+
/**
|
|
2553
|
+
* Maximum allowed distance in Angstroms between binder and pocket residues.
|
|
2554
|
+
* Typical range: 4-8 A.
|
|
2555
|
+
*/
|
|
2556
|
+
max_distance_angstrom: number;
|
|
2557
|
+
type: 'pocket';
|
|
2558
|
+
/**
|
|
2559
|
+
* Whether to force the constraint
|
|
2560
|
+
*/
|
|
2561
|
+
force?: boolean;
|
|
2562
|
+
}
|
|
2563
|
+
/**
|
|
2564
|
+
* Contact constraint between two tokens. Atom-level ligand references currently
|
|
2565
|
+
* support ligand_ccd entities only; ligand_smiles is unsupported.
|
|
2566
|
+
*/
|
|
2567
|
+
interface ContactConstraint {
|
|
2568
|
+
/**
|
|
2569
|
+
* Maximum distance in Angstroms
|
|
2570
|
+
*/
|
|
2571
|
+
max_distance_angstrom: number;
|
|
2572
|
+
/**
|
|
2573
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
2574
|
+
* entities only; ligand_smiles is unsupported.
|
|
2575
|
+
*/
|
|
2576
|
+
token1: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
|
|
2577
|
+
/**
|
|
2578
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
2579
|
+
* entities only; ligand_smiles is unsupported.
|
|
2580
|
+
*/
|
|
2581
|
+
token2: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
|
|
2582
|
+
type: 'contact';
|
|
2583
|
+
/**
|
|
2584
|
+
* Whether to force the constraint
|
|
2585
|
+
*/
|
|
2586
|
+
force?: boolean;
|
|
2587
|
+
}
|
|
2588
|
+
namespace ContactConstraint {
|
|
2589
|
+
interface PolymerContactToken {
|
|
2590
|
+
/**
|
|
2591
|
+
* Chain ID
|
|
2592
|
+
*/
|
|
2593
|
+
chain_id: string;
|
|
2594
|
+
/**
|
|
2595
|
+
* 0-based residue index
|
|
2596
|
+
*/
|
|
2597
|
+
residue_index: number;
|
|
2598
|
+
type: 'polymer_contact';
|
|
2599
|
+
}
|
|
2600
|
+
/**
|
|
2601
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
2602
|
+
* entities only; ligand_smiles is unsupported.
|
|
2603
|
+
*/
|
|
2604
|
+
interface LigandContactToken {
|
|
2605
|
+
/**
|
|
2606
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
2607
|
+
* unsupported; use ligand_ccd instead.
|
|
2608
|
+
*/
|
|
2609
|
+
atom_name: string;
|
|
2610
|
+
/**
|
|
2611
|
+
* Chain ID
|
|
2612
|
+
*/
|
|
2613
|
+
chain_id: string;
|
|
2614
|
+
type: 'ligand_contact';
|
|
2615
|
+
}
|
|
2616
|
+
interface PolymerContactToken {
|
|
2617
|
+
/**
|
|
2618
|
+
* Chain ID
|
|
2619
|
+
*/
|
|
2620
|
+
chain_id: string;
|
|
2621
|
+
/**
|
|
2622
|
+
* 0-based residue index
|
|
2623
|
+
*/
|
|
2624
|
+
residue_index: number;
|
|
2625
|
+
type: 'polymer_contact';
|
|
2626
|
+
}
|
|
2627
|
+
/**
|
|
2628
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
2629
|
+
* entities only; ligand_smiles is unsupported.
|
|
2630
|
+
*/
|
|
2631
|
+
interface LigandContactToken {
|
|
2632
|
+
/**
|
|
2633
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
2634
|
+
* unsupported; use ligand_ccd instead.
|
|
2635
|
+
*/
|
|
2636
|
+
atom_name: string;
|
|
2637
|
+
/**
|
|
2638
|
+
* Chain ID
|
|
2639
|
+
*/
|
|
2640
|
+
chain_id: string;
|
|
2641
|
+
type: 'ligand_contact';
|
|
2642
|
+
}
|
|
2643
|
+
}
|
|
2644
|
+
}
|
|
2645
|
+
/**
|
|
2646
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
2647
|
+
* and custom filters.
|
|
2648
|
+
*/
|
|
2649
|
+
interface MoleculeFilters {
|
|
2650
|
+
/**
|
|
2651
|
+
* Controls the stringency of Boltz's built-in SMARTS structural alert filtering,
|
|
2652
|
+
* which removes molecules matching known problematic substructures. 'recommended'
|
|
2653
|
+
* (default): applies a curated set of alerts balancing safety and hit rate.
|
|
2654
|
+
* 'extra': adds additional alerts beyond the recommended set for stricter
|
|
2655
|
+
* filtering. 'aggressive': applies the most comprehensive alert set — may reject
|
|
2656
|
+
* viable molecules. 'disabled': turns off Boltz SMARTS filtering entirely; only
|
|
2657
|
+
* custom_filters will be applied.
|
|
2658
|
+
*/
|
|
2659
|
+
boltz_smarts_catalog_filter_level?: 'recommended' | 'extra' | 'aggressive' | 'disabled';
|
|
2660
|
+
/**
|
|
2661
|
+
* Custom filters to apply. Molecules must pass all filters (AND logic).
|
|
2662
|
+
*/
|
|
2663
|
+
custom_filters?: Array<MoleculeFilters.LipinskiFilter | MoleculeFilters.RdkitDescriptorFilter | MoleculeFilters.SmartsCustomFilter | MoleculeFilters.SmartsCatalogFilter | MoleculeFilters.SmilesRegexFilter>;
|
|
2664
|
+
}
|
|
2665
|
+
namespace MoleculeFilters {
|
|
2666
|
+
/**
|
|
2667
|
+
* Lipinski's Rule of Five filter. Rejects molecules that violate drug-likeness
|
|
2668
|
+
* criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen
|
|
2669
|
+
* bond acceptors.
|
|
2670
|
+
*/
|
|
2671
|
+
interface LipinskiFilter {
|
|
2672
|
+
/**
|
|
2673
|
+
* Maximum number of hydrogen bond acceptors. Lipinski threshold: 10
|
|
2674
|
+
*/
|
|
2675
|
+
max_hba: number;
|
|
2676
|
+
/**
|
|
2677
|
+
* Maximum number of hydrogen bond donors. Lipinski threshold: 5
|
|
2678
|
+
*/
|
|
2679
|
+
max_hbd: number;
|
|
2680
|
+
/**
|
|
2681
|
+
* Maximum LogP. Lipinski threshold: 5
|
|
2682
|
+
*/
|
|
2683
|
+
max_logp: number;
|
|
2684
|
+
/**
|
|
2685
|
+
* Maximum molecular weight (Da). Lipinski threshold: 500
|
|
2686
|
+
*/
|
|
2687
|
+
max_mw: number;
|
|
2688
|
+
type: 'lipinski_filter';
|
|
2689
|
+
/**
|
|
2690
|
+
* If true, one rule violation is allowed (classic Rule of Five). Defaults to false
|
|
2691
|
+
* (all rules must pass).
|
|
2692
|
+
*/
|
|
2693
|
+
allow_single_violation?: boolean;
|
|
2694
|
+
}
|
|
2695
|
+
/**
|
|
2696
|
+
* Filter molecules by RDKit molecular descriptors. Each descriptor is constrained
|
|
2697
|
+
* to a min/max range. Only descriptors you provide are checked — omitted
|
|
2698
|
+
* descriptors are unconstrained.
|
|
2699
|
+
*/
|
|
2700
|
+
interface RdkitDescriptorFilter {
|
|
2701
|
+
type: 'rdkit_descriptor_filter';
|
|
2702
|
+
/**
|
|
2703
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2704
|
+
*/
|
|
2705
|
+
fraction_csp3?: RdkitDescriptorFilter.FractionCsp3;
|
|
2706
|
+
/**
|
|
2707
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2708
|
+
*/
|
|
2709
|
+
mol_logp?: RdkitDescriptorFilter.MolLogp;
|
|
2710
|
+
/**
|
|
2711
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2712
|
+
*/
|
|
2713
|
+
mol_wt?: RdkitDescriptorFilter.MolWt;
|
|
2714
|
+
/**
|
|
2715
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2716
|
+
*/
|
|
2717
|
+
num_aromatic_rings?: RdkitDescriptorFilter.NumAromaticRings;
|
|
2718
|
+
/**
|
|
2719
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2720
|
+
*/
|
|
2721
|
+
num_h_acceptors?: RdkitDescriptorFilter.NumHAcceptors;
|
|
2722
|
+
/**
|
|
2723
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2724
|
+
*/
|
|
2725
|
+
num_h_donors?: RdkitDescriptorFilter.NumHDonors;
|
|
2726
|
+
/**
|
|
2727
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2728
|
+
*/
|
|
2729
|
+
num_heteroatoms?: RdkitDescriptorFilter.NumHeteroatoms;
|
|
2730
|
+
/**
|
|
2731
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2732
|
+
*/
|
|
2733
|
+
num_rings?: RdkitDescriptorFilter.NumRings;
|
|
2734
|
+
/**
|
|
2735
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2736
|
+
*/
|
|
2737
|
+
num_rotatable_bonds?: RdkitDescriptorFilter.NumRotatableBonds;
|
|
2738
|
+
/**
|
|
2739
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2740
|
+
*/
|
|
2741
|
+
tpsa?: RdkitDescriptorFilter.Tpsa;
|
|
2742
|
+
}
|
|
2743
|
+
namespace RdkitDescriptorFilter {
|
|
2744
|
+
/**
|
|
2745
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2746
|
+
*/
|
|
2747
|
+
interface FractionCsp3 {
|
|
2748
|
+
/**
|
|
2749
|
+
* Maximum allowed value (inclusive)
|
|
2750
|
+
*/
|
|
2751
|
+
max?: number;
|
|
2752
|
+
/**
|
|
2753
|
+
* Minimum allowed value (inclusive)
|
|
2754
|
+
*/
|
|
2755
|
+
min?: number;
|
|
2756
|
+
}
|
|
2757
|
+
/**
|
|
2758
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2759
|
+
*/
|
|
2760
|
+
interface MolLogp {
|
|
2761
|
+
/**
|
|
2762
|
+
* Maximum allowed value (inclusive)
|
|
2763
|
+
*/
|
|
2764
|
+
max?: number;
|
|
2765
|
+
/**
|
|
2766
|
+
* Minimum allowed value (inclusive)
|
|
2767
|
+
*/
|
|
2768
|
+
min?: number;
|
|
2769
|
+
}
|
|
2770
|
+
/**
|
|
2771
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2772
|
+
*/
|
|
2773
|
+
interface MolWt {
|
|
2774
|
+
/**
|
|
2775
|
+
* Maximum allowed value (inclusive)
|
|
2776
|
+
*/
|
|
2777
|
+
max?: number;
|
|
2778
|
+
/**
|
|
2779
|
+
* Minimum allowed value (inclusive)
|
|
2780
|
+
*/
|
|
2781
|
+
min?: number;
|
|
2782
|
+
}
|
|
2783
|
+
/**
|
|
2784
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2785
|
+
*/
|
|
2786
|
+
interface NumAromaticRings {
|
|
2787
|
+
/**
|
|
2788
|
+
* Maximum allowed value (inclusive)
|
|
2789
|
+
*/
|
|
2790
|
+
max?: number;
|
|
2791
|
+
/**
|
|
2792
|
+
* Minimum allowed value (inclusive)
|
|
2793
|
+
*/
|
|
2794
|
+
min?: number;
|
|
2795
|
+
}
|
|
2796
|
+
/**
|
|
2797
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2798
|
+
*/
|
|
2799
|
+
interface NumHAcceptors {
|
|
2800
|
+
/**
|
|
2801
|
+
* Maximum allowed value (inclusive)
|
|
2802
|
+
*/
|
|
2803
|
+
max?: number;
|
|
2804
|
+
/**
|
|
2805
|
+
* Minimum allowed value (inclusive)
|
|
2806
|
+
*/
|
|
2807
|
+
min?: number;
|
|
2808
|
+
}
|
|
2809
|
+
/**
|
|
2810
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2811
|
+
*/
|
|
2812
|
+
interface NumHDonors {
|
|
2813
|
+
/**
|
|
2814
|
+
* Maximum allowed value (inclusive)
|
|
2815
|
+
*/
|
|
2816
|
+
max?: number;
|
|
2817
|
+
/**
|
|
2818
|
+
* Minimum allowed value (inclusive)
|
|
2819
|
+
*/
|
|
2820
|
+
min?: number;
|
|
2821
|
+
}
|
|
2822
|
+
/**
|
|
2823
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2824
|
+
*/
|
|
2825
|
+
interface NumHeteroatoms {
|
|
2826
|
+
/**
|
|
2827
|
+
* Maximum allowed value (inclusive)
|
|
2828
|
+
*/
|
|
2829
|
+
max?: number;
|
|
2830
|
+
/**
|
|
2831
|
+
* Minimum allowed value (inclusive)
|
|
2832
|
+
*/
|
|
2833
|
+
min?: number;
|
|
2834
|
+
}
|
|
2835
|
+
/**
|
|
2836
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2837
|
+
*/
|
|
2838
|
+
interface NumRings {
|
|
2839
|
+
/**
|
|
2840
|
+
* Maximum allowed value (inclusive)
|
|
2841
|
+
*/
|
|
2842
|
+
max?: number;
|
|
2843
|
+
/**
|
|
2844
|
+
* Minimum allowed value (inclusive)
|
|
2845
|
+
*/
|
|
2846
|
+
min?: number;
|
|
2847
|
+
}
|
|
2848
|
+
/**
|
|
2849
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2850
|
+
*/
|
|
2851
|
+
interface NumRotatableBonds {
|
|
2852
|
+
/**
|
|
2853
|
+
* Maximum allowed value (inclusive)
|
|
2854
|
+
*/
|
|
2855
|
+
max?: number;
|
|
2856
|
+
/**
|
|
2857
|
+
* Minimum allowed value (inclusive)
|
|
2858
|
+
*/
|
|
2859
|
+
min?: number;
|
|
2860
|
+
}
|
|
2861
|
+
/**
|
|
2862
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
2863
|
+
*/
|
|
2864
|
+
interface Tpsa {
|
|
2865
|
+
/**
|
|
2866
|
+
* Maximum allowed value (inclusive)
|
|
2867
|
+
*/
|
|
2868
|
+
max?: number;
|
|
2869
|
+
/**
|
|
2870
|
+
* Minimum allowed value (inclusive)
|
|
2871
|
+
*/
|
|
2872
|
+
min?: number;
|
|
2873
|
+
}
|
|
2874
|
+
}
|
|
2875
|
+
/**
|
|
2876
|
+
* Filter molecules by custom SMARTS patterns. Molecules matching any pattern are
|
|
2877
|
+
* rejected.
|
|
2878
|
+
*/
|
|
2879
|
+
interface SmartsCustomFilter {
|
|
2880
|
+
/**
|
|
2881
|
+
* SMARTS patterns. Molecules matching any pattern are rejected.
|
|
2882
|
+
*/
|
|
2883
|
+
patterns: Array<string>;
|
|
2884
|
+
type: 'smarts_custom_filter';
|
|
2885
|
+
}
|
|
2886
|
+
/**
|
|
2887
|
+
* Filter molecules using a predefined SMARTS catalog of structural alerts.
|
|
2888
|
+
*/
|
|
2889
|
+
interface SmartsCatalogFilter {
|
|
2890
|
+
/**
|
|
2891
|
+
* Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs
|
|
2892
|
+
* reject known problematic substructures.
|
|
2893
|
+
*/
|
|
2894
|
+
catalog: 'PAINS' | 'PAINS_A' | 'PAINS_B' | 'PAINS_C' | 'BRENK' | 'CHEMBL' | 'CHEMBL_BMS' | 'CHEMBL_Dundee' | 'CHEMBL_Glaxo' | 'CHEMBL_Inpharmatica' | 'CHEMBL_LINT' | 'CHEMBL_MLSMR' | 'CHEMBL_SureChEMBL' | 'NIH';
|
|
2895
|
+
type: 'smarts_catalog_filter';
|
|
2896
|
+
}
|
|
2897
|
+
/**
|
|
2898
|
+
* Filter molecules by regex patterns on their SMILES representation.
|
|
2899
|
+
*/
|
|
2900
|
+
interface SmilesRegexFilter {
|
|
2901
|
+
/**
|
|
2902
|
+
* Regex patterns applied to SMILES strings. Molecules matching any pattern are
|
|
2903
|
+
* rejected.
|
|
2904
|
+
*/
|
|
2905
|
+
patterns: Array<string>;
|
|
2906
|
+
type: 'smiles_regex_filter';
|
|
2907
|
+
}
|
|
2908
|
+
}
|
|
2909
|
+
}
|
|
2910
|
+
export interface LibraryScreenListResultsParams extends CursorPageParams {
|
|
2911
|
+
/**
|
|
2912
|
+
* Workspace ID. Only used with admin API keys. Ignored (or validated) for
|
|
2913
|
+
* workspace-scoped keys.
|
|
2914
|
+
*/
|
|
2915
|
+
workspace_id?: string;
|
|
2916
|
+
}
|
|
2917
|
+
export interface LibraryScreenStartParams {
|
|
2918
|
+
/**
|
|
2919
|
+
* List of small molecules to screen.
|
|
2920
|
+
*/
|
|
2921
|
+
molecules: Array<LibraryScreenStartParams.Molecule>;
|
|
2922
|
+
/**
|
|
2923
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
2924
|
+
*/
|
|
2925
|
+
target: LibraryScreenStartParams.Target;
|
|
2926
|
+
/**
|
|
2927
|
+
* Client-provided key to prevent duplicate submissions on retries
|
|
2928
|
+
*/
|
|
2929
|
+
idempotency_key?: string;
|
|
2930
|
+
/**
|
|
2931
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
2932
|
+
* and custom filters.
|
|
2933
|
+
*/
|
|
2934
|
+
molecule_filters?: LibraryScreenStartParams.MoleculeFilters;
|
|
2935
|
+
/**
|
|
2936
|
+
* Target workspace ID (admin keys only; ignored for workspace keys)
|
|
2937
|
+
*/
|
|
2938
|
+
workspace_id?: string;
|
|
2939
|
+
}
|
|
2940
|
+
export declare namespace LibraryScreenStartParams {
|
|
2941
|
+
/**
|
|
2942
|
+
* A small molecule with SMILES and optional ID
|
|
2943
|
+
*/
|
|
2944
|
+
interface Molecule {
|
|
2945
|
+
/**
|
|
2946
|
+
* SMILES string of the molecule
|
|
2947
|
+
*/
|
|
2948
|
+
smiles: string;
|
|
2949
|
+
/**
|
|
2950
|
+
* Optional identifier for this molecule
|
|
2951
|
+
*/
|
|
2952
|
+
id?: string;
|
|
2953
|
+
}
|
|
2954
|
+
/**
|
|
2955
|
+
* Target protein with binding pocket for small molecule design or screening
|
|
2956
|
+
*/
|
|
2957
|
+
interface Target {
|
|
2958
|
+
/**
|
|
2959
|
+
* Protein entities defining the target structure. Each entity represents a protein
|
|
2960
|
+
* chain.
|
|
2961
|
+
*/
|
|
2962
|
+
entities: Array<Target.Entity>;
|
|
2963
|
+
/**
|
|
2964
|
+
* Covalent bond constraints between atoms in the target complex. Atom-level ligand
|
|
2965
|
+
* references currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
2966
|
+
*/
|
|
2967
|
+
bonds?: Array<Target.Bond>;
|
|
2968
|
+
/**
|
|
2969
|
+
* Structural constraints (pocket and contact). Atom-level ligand references
|
|
2970
|
+
* currently support ligand_ccd only; ligand_smiles is unsupported.
|
|
2971
|
+
*/
|
|
2972
|
+
constraints?: Array<Target.PocketConstraint | Target.ContactConstraint>;
|
|
2973
|
+
/**
|
|
2974
|
+
* Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. "A")
|
|
2975
|
+
* and the value is an array of 0-indexed residue indices that define the binding
|
|
2976
|
+
* pocket on that chain. When provided, these residues guide pocket extraction and
|
|
2977
|
+
* add a derived pocket constraint during affinity predictions. That derived
|
|
2978
|
+
* constraint remains separate from any explicit pocket constraints in
|
|
2979
|
+
* target.constraints. When omitted, the model auto-detects the pocket.
|
|
2980
|
+
*/
|
|
2981
|
+
pocket_residues?: {
|
|
2982
|
+
[key: string]: Array<number>;
|
|
2983
|
+
};
|
|
2984
|
+
/**
|
|
2985
|
+
* Reference ligands as SMILES strings that help the model identify the binding
|
|
2986
|
+
* pocket. When omitted, a set of drug-like default ligands is used for pocket
|
|
2987
|
+
* detection.
|
|
2988
|
+
*/
|
|
2989
|
+
reference_ligands?: Array<string>;
|
|
2990
|
+
}
|
|
2991
|
+
namespace Target {
|
|
2992
|
+
interface Entity {
|
|
2993
|
+
/**
|
|
2994
|
+
* Chain IDs for this entity
|
|
2995
|
+
*/
|
|
2996
|
+
chain_ids: Array<string>;
|
|
2997
|
+
type: 'protein';
|
|
2998
|
+
/**
|
|
2999
|
+
* Amino acid sequence (one-letter codes)
|
|
3000
|
+
*/
|
|
3001
|
+
value: string;
|
|
3002
|
+
/**
|
|
3003
|
+
* Whether the sequence is cyclic
|
|
3004
|
+
*/
|
|
3005
|
+
cyclic?: boolean;
|
|
3006
|
+
/**
|
|
3007
|
+
* Post-translational modifications. Optional; defaults to an empty list when
|
|
3008
|
+
* omitted.
|
|
3009
|
+
*/
|
|
3010
|
+
modifications?: Array<Entity.CcdModification | Entity.SmilesModification>;
|
|
3011
|
+
}
|
|
3012
|
+
namespace Entity {
|
|
3013
|
+
interface CcdModification {
|
|
3014
|
+
/**
|
|
3015
|
+
* 0-based index of the residue to modify
|
|
3016
|
+
*/
|
|
3017
|
+
residue_index: number;
|
|
3018
|
+
type: 'ccd';
|
|
3019
|
+
/**
|
|
3020
|
+
* CCD code from RCSB PDB (e.g. 'MSE' for selenomethionine, 'SEP' for
|
|
3021
|
+
* phosphoserine)
|
|
3022
|
+
*/
|
|
3023
|
+
value: string;
|
|
3024
|
+
}
|
|
3025
|
+
interface SmilesModification {
|
|
3026
|
+
/**
|
|
3027
|
+
* 0-based index of the residue to modify
|
|
3028
|
+
*/
|
|
3029
|
+
residue_index: number;
|
|
3030
|
+
type: 'smiles';
|
|
3031
|
+
/**
|
|
3032
|
+
* SMILES string for the modification
|
|
3033
|
+
*/
|
|
3034
|
+
value: string;
|
|
3035
|
+
}
|
|
3036
|
+
}
|
|
3037
|
+
/**
|
|
3038
|
+
* Bond between two atoms. Atom-level ligand references currently support
|
|
3039
|
+
* ligand_ccd entities only; ligand_smiles is unsupported.
|
|
3040
|
+
*/
|
|
3041
|
+
interface Bond {
|
|
3042
|
+
/**
|
|
3043
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
3044
|
+
* entities only; ligand_smiles is unsupported.
|
|
3045
|
+
*/
|
|
3046
|
+
atom1: Bond.LigandAtom | Bond.PolymerAtom;
|
|
3047
|
+
/**
|
|
3048
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
3049
|
+
* entities only; ligand_smiles is unsupported.
|
|
3050
|
+
*/
|
|
3051
|
+
atom2: Bond.LigandAtom | Bond.PolymerAtom;
|
|
3052
|
+
}
|
|
3053
|
+
namespace Bond {
|
|
3054
|
+
/**
|
|
3055
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
3056
|
+
* entities only; ligand_smiles is unsupported.
|
|
3057
|
+
*/
|
|
3058
|
+
interface LigandAtom {
|
|
3059
|
+
/**
|
|
3060
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
3061
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
3062
|
+
*/
|
|
3063
|
+
atom_name: string;
|
|
3064
|
+
/**
|
|
3065
|
+
* Chain ID containing the atom
|
|
3066
|
+
*/
|
|
3067
|
+
chain_id: string;
|
|
3068
|
+
type: 'ligand_atom';
|
|
3069
|
+
}
|
|
3070
|
+
interface PolymerAtom {
|
|
3071
|
+
/**
|
|
3072
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
3073
|
+
*/
|
|
3074
|
+
atom_name: string;
|
|
3075
|
+
/**
|
|
3076
|
+
* Chain ID containing the atom
|
|
3077
|
+
*/
|
|
3078
|
+
chain_id: string;
|
|
3079
|
+
/**
|
|
3080
|
+
* 0-based residue index
|
|
3081
|
+
*/
|
|
3082
|
+
residue_index: number;
|
|
3083
|
+
type: 'polymer_atom';
|
|
3084
|
+
}
|
|
3085
|
+
/**
|
|
3086
|
+
* Ligand atom reference. Atom-level ligand references currently support ligand_ccd
|
|
3087
|
+
* entities only; ligand_smiles is unsupported.
|
|
3088
|
+
*/
|
|
3089
|
+
interface LigandAtom {
|
|
3090
|
+
/**
|
|
3091
|
+
* Standardized atom name (verifiable in CIF file on RCSB). Atom-level references
|
|
3092
|
+
* to ligand_smiles entities are currently unsupported; use ligand_ccd instead.
|
|
3093
|
+
*/
|
|
3094
|
+
atom_name: string;
|
|
3095
|
+
/**
|
|
3096
|
+
* Chain ID containing the atom
|
|
3097
|
+
*/
|
|
3098
|
+
chain_id: string;
|
|
3099
|
+
type: 'ligand_atom';
|
|
3100
|
+
}
|
|
3101
|
+
interface PolymerAtom {
|
|
3102
|
+
/**
|
|
3103
|
+
* Standardized atom name (verifiable in CIF file on RCSB)
|
|
3104
|
+
*/
|
|
3105
|
+
atom_name: string;
|
|
3106
|
+
/**
|
|
3107
|
+
* Chain ID containing the atom
|
|
3108
|
+
*/
|
|
3109
|
+
chain_id: string;
|
|
3110
|
+
/**
|
|
3111
|
+
* 0-based residue index
|
|
3112
|
+
*/
|
|
3113
|
+
residue_index: number;
|
|
3114
|
+
type: 'polymer_atom';
|
|
3115
|
+
}
|
|
3116
|
+
}
|
|
3117
|
+
/**
|
|
3118
|
+
* Constrains the binder to interact with specific pocket residues on the target.
|
|
3119
|
+
*/
|
|
3120
|
+
interface PocketConstraint {
|
|
3121
|
+
/**
|
|
3122
|
+
* Chain ID of the binder molecule
|
|
3123
|
+
*/
|
|
3124
|
+
binder_chain_id: string;
|
|
3125
|
+
/**
|
|
3126
|
+
* Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. "A") and
|
|
3127
|
+
* the value is an array of 0-indexed residue indices that define the pocket on
|
|
3128
|
+
* that chain.
|
|
3129
|
+
*/
|
|
3130
|
+
contact_residues: {
|
|
3131
|
+
[key: string]: Array<number>;
|
|
3132
|
+
};
|
|
3133
|
+
/**
|
|
3134
|
+
* Maximum allowed distance in Angstroms between binder and pocket residues.
|
|
3135
|
+
* Typical range: 4-8 A.
|
|
3136
|
+
*/
|
|
3137
|
+
max_distance_angstrom: number;
|
|
3138
|
+
type: 'pocket';
|
|
3139
|
+
/**
|
|
3140
|
+
* Whether to force the constraint
|
|
3141
|
+
*/
|
|
3142
|
+
force?: boolean;
|
|
3143
|
+
}
|
|
3144
|
+
/**
|
|
3145
|
+
* Contact constraint between two tokens. Atom-level ligand references currently
|
|
3146
|
+
* support ligand_ccd entities only; ligand_smiles is unsupported.
|
|
3147
|
+
*/
|
|
3148
|
+
interface ContactConstraint {
|
|
3149
|
+
/**
|
|
3150
|
+
* Maximum distance in Angstroms
|
|
3151
|
+
*/
|
|
3152
|
+
max_distance_angstrom: number;
|
|
3153
|
+
/**
|
|
3154
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
3155
|
+
* entities only; ligand_smiles is unsupported.
|
|
3156
|
+
*/
|
|
3157
|
+
token1: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
|
|
3158
|
+
/**
|
|
3159
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
3160
|
+
* entities only; ligand_smiles is unsupported.
|
|
3161
|
+
*/
|
|
3162
|
+
token2: ContactConstraint.PolymerContactToken | ContactConstraint.LigandContactToken;
|
|
3163
|
+
type: 'contact';
|
|
3164
|
+
/**
|
|
3165
|
+
* Whether to force the constraint
|
|
3166
|
+
*/
|
|
3167
|
+
force?: boolean;
|
|
3168
|
+
}
|
|
3169
|
+
namespace ContactConstraint {
|
|
3170
|
+
interface PolymerContactToken {
|
|
3171
|
+
/**
|
|
3172
|
+
* Chain ID
|
|
3173
|
+
*/
|
|
3174
|
+
chain_id: string;
|
|
3175
|
+
/**
|
|
3176
|
+
* 0-based residue index
|
|
3177
|
+
*/
|
|
3178
|
+
residue_index: number;
|
|
3179
|
+
type: 'polymer_contact';
|
|
3180
|
+
}
|
|
3181
|
+
/**
|
|
3182
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
3183
|
+
* entities only; ligand_smiles is unsupported.
|
|
3184
|
+
*/
|
|
3185
|
+
interface LigandContactToken {
|
|
3186
|
+
/**
|
|
3187
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
3188
|
+
* unsupported; use ligand_ccd instead.
|
|
3189
|
+
*/
|
|
3190
|
+
atom_name: string;
|
|
3191
|
+
/**
|
|
3192
|
+
* Chain ID
|
|
3193
|
+
*/
|
|
3194
|
+
chain_id: string;
|
|
3195
|
+
type: 'ligand_contact';
|
|
3196
|
+
}
|
|
3197
|
+
interface PolymerContactToken {
|
|
3198
|
+
/**
|
|
3199
|
+
* Chain ID
|
|
3200
|
+
*/
|
|
3201
|
+
chain_id: string;
|
|
3202
|
+
/**
|
|
3203
|
+
* 0-based residue index
|
|
3204
|
+
*/
|
|
3205
|
+
residue_index: number;
|
|
3206
|
+
type: 'polymer_contact';
|
|
3207
|
+
}
|
|
3208
|
+
/**
|
|
3209
|
+
* Ligand contact token. Atom-level ligand references currently support ligand_ccd
|
|
3210
|
+
* entities only; ligand_smiles is unsupported.
|
|
3211
|
+
*/
|
|
3212
|
+
interface LigandContactToken {
|
|
3213
|
+
/**
|
|
3214
|
+
* Atom name. Atom-level references to ligand_smiles entities are currently
|
|
3215
|
+
* unsupported; use ligand_ccd instead.
|
|
3216
|
+
*/
|
|
3217
|
+
atom_name: string;
|
|
3218
|
+
/**
|
|
3219
|
+
* Chain ID
|
|
3220
|
+
*/
|
|
3221
|
+
chain_id: string;
|
|
3222
|
+
type: 'ligand_contact';
|
|
3223
|
+
}
|
|
3224
|
+
}
|
|
3225
|
+
}
|
|
3226
|
+
/**
|
|
3227
|
+
* Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering
|
|
3228
|
+
* and custom filters.
|
|
3229
|
+
*/
|
|
3230
|
+
interface MoleculeFilters {
|
|
3231
|
+
/**
|
|
3232
|
+
* Controls the stringency of Boltz's built-in SMARTS structural alert filtering,
|
|
3233
|
+
* which removes molecules matching known problematic substructures. 'recommended'
|
|
3234
|
+
* (default): applies a curated set of alerts balancing safety and hit rate.
|
|
3235
|
+
* 'extra': adds additional alerts beyond the recommended set for stricter
|
|
3236
|
+
* filtering. 'aggressive': applies the most comprehensive alert set — may reject
|
|
3237
|
+
* viable molecules. 'disabled': turns off Boltz SMARTS filtering entirely; only
|
|
3238
|
+
* custom_filters will be applied.
|
|
3239
|
+
*/
|
|
3240
|
+
boltz_smarts_catalog_filter_level?: 'recommended' | 'extra' | 'aggressive' | 'disabled';
|
|
3241
|
+
/**
|
|
3242
|
+
* Custom filters to apply. Molecules must pass all filters (AND logic).
|
|
3243
|
+
*/
|
|
3244
|
+
custom_filters?: Array<MoleculeFilters.LipinskiFilter | MoleculeFilters.RdkitDescriptorFilter | MoleculeFilters.SmartsCustomFilter | MoleculeFilters.SmartsCatalogFilter | MoleculeFilters.SmilesRegexFilter>;
|
|
3245
|
+
}
|
|
3246
|
+
namespace MoleculeFilters {
|
|
3247
|
+
/**
|
|
3248
|
+
* Lipinski's Rule of Five filter. Rejects molecules that violate drug-likeness
|
|
3249
|
+
* criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen
|
|
3250
|
+
* bond acceptors.
|
|
3251
|
+
*/
|
|
3252
|
+
interface LipinskiFilter {
|
|
3253
|
+
/**
|
|
3254
|
+
* Maximum number of hydrogen bond acceptors. Lipinski threshold: 10
|
|
3255
|
+
*/
|
|
3256
|
+
max_hba: number;
|
|
3257
|
+
/**
|
|
3258
|
+
* Maximum number of hydrogen bond donors. Lipinski threshold: 5
|
|
3259
|
+
*/
|
|
3260
|
+
max_hbd: number;
|
|
3261
|
+
/**
|
|
3262
|
+
* Maximum LogP. Lipinski threshold: 5
|
|
3263
|
+
*/
|
|
3264
|
+
max_logp: number;
|
|
3265
|
+
/**
|
|
3266
|
+
* Maximum molecular weight (Da). Lipinski threshold: 500
|
|
3267
|
+
*/
|
|
3268
|
+
max_mw: number;
|
|
3269
|
+
type: 'lipinski_filter';
|
|
3270
|
+
/**
|
|
3271
|
+
* If true, one rule violation is allowed (classic Rule of Five). Defaults to false
|
|
3272
|
+
* (all rules must pass).
|
|
3273
|
+
*/
|
|
3274
|
+
allow_single_violation?: boolean;
|
|
3275
|
+
}
|
|
3276
|
+
/**
|
|
3277
|
+
* Filter molecules by RDKit molecular descriptors. Each descriptor is constrained
|
|
3278
|
+
* to a min/max range. Only descriptors you provide are checked — omitted
|
|
3279
|
+
* descriptors are unconstrained.
|
|
3280
|
+
*/
|
|
3281
|
+
interface RdkitDescriptorFilter {
|
|
3282
|
+
type: 'rdkit_descriptor_filter';
|
|
3283
|
+
/**
|
|
3284
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3285
|
+
*/
|
|
3286
|
+
fraction_csp3?: RdkitDescriptorFilter.FractionCsp3;
|
|
3287
|
+
/**
|
|
3288
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3289
|
+
*/
|
|
3290
|
+
mol_logp?: RdkitDescriptorFilter.MolLogp;
|
|
3291
|
+
/**
|
|
3292
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3293
|
+
*/
|
|
3294
|
+
mol_wt?: RdkitDescriptorFilter.MolWt;
|
|
3295
|
+
/**
|
|
3296
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3297
|
+
*/
|
|
3298
|
+
num_aromatic_rings?: RdkitDescriptorFilter.NumAromaticRings;
|
|
3299
|
+
/**
|
|
3300
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3301
|
+
*/
|
|
3302
|
+
num_h_acceptors?: RdkitDescriptorFilter.NumHAcceptors;
|
|
3303
|
+
/**
|
|
3304
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3305
|
+
*/
|
|
3306
|
+
num_h_donors?: RdkitDescriptorFilter.NumHDonors;
|
|
3307
|
+
/**
|
|
3308
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3309
|
+
*/
|
|
3310
|
+
num_heteroatoms?: RdkitDescriptorFilter.NumHeteroatoms;
|
|
3311
|
+
/**
|
|
3312
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3313
|
+
*/
|
|
3314
|
+
num_rings?: RdkitDescriptorFilter.NumRings;
|
|
3315
|
+
/**
|
|
3316
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3317
|
+
*/
|
|
3318
|
+
num_rotatable_bonds?: RdkitDescriptorFilter.NumRotatableBonds;
|
|
3319
|
+
/**
|
|
3320
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3321
|
+
*/
|
|
3322
|
+
tpsa?: RdkitDescriptorFilter.Tpsa;
|
|
3323
|
+
}
|
|
3324
|
+
namespace RdkitDescriptorFilter {
|
|
3325
|
+
/**
|
|
3326
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3327
|
+
*/
|
|
3328
|
+
interface FractionCsp3 {
|
|
3329
|
+
/**
|
|
3330
|
+
* Maximum allowed value (inclusive)
|
|
3331
|
+
*/
|
|
3332
|
+
max?: number;
|
|
3333
|
+
/**
|
|
3334
|
+
* Minimum allowed value (inclusive)
|
|
3335
|
+
*/
|
|
3336
|
+
min?: number;
|
|
3337
|
+
}
|
|
3338
|
+
/**
|
|
3339
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3340
|
+
*/
|
|
3341
|
+
interface MolLogp {
|
|
3342
|
+
/**
|
|
3343
|
+
* Maximum allowed value (inclusive)
|
|
3344
|
+
*/
|
|
3345
|
+
max?: number;
|
|
3346
|
+
/**
|
|
3347
|
+
* Minimum allowed value (inclusive)
|
|
3348
|
+
*/
|
|
3349
|
+
min?: number;
|
|
3350
|
+
}
|
|
3351
|
+
/**
|
|
3352
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3353
|
+
*/
|
|
3354
|
+
interface MolWt {
|
|
3355
|
+
/**
|
|
3356
|
+
* Maximum allowed value (inclusive)
|
|
3357
|
+
*/
|
|
3358
|
+
max?: number;
|
|
3359
|
+
/**
|
|
3360
|
+
* Minimum allowed value (inclusive)
|
|
3361
|
+
*/
|
|
3362
|
+
min?: number;
|
|
3363
|
+
}
|
|
3364
|
+
/**
|
|
3365
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3366
|
+
*/
|
|
3367
|
+
interface NumAromaticRings {
|
|
3368
|
+
/**
|
|
3369
|
+
* Maximum allowed value (inclusive)
|
|
3370
|
+
*/
|
|
3371
|
+
max?: number;
|
|
3372
|
+
/**
|
|
3373
|
+
* Minimum allowed value (inclusive)
|
|
3374
|
+
*/
|
|
3375
|
+
min?: number;
|
|
3376
|
+
}
|
|
3377
|
+
/**
|
|
3378
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3379
|
+
*/
|
|
3380
|
+
interface NumHAcceptors {
|
|
3381
|
+
/**
|
|
3382
|
+
* Maximum allowed value (inclusive)
|
|
3383
|
+
*/
|
|
3384
|
+
max?: number;
|
|
3385
|
+
/**
|
|
3386
|
+
* Minimum allowed value (inclusive)
|
|
3387
|
+
*/
|
|
3388
|
+
min?: number;
|
|
3389
|
+
}
|
|
3390
|
+
/**
|
|
3391
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3392
|
+
*/
|
|
3393
|
+
interface NumHDonors {
|
|
3394
|
+
/**
|
|
3395
|
+
* Maximum allowed value (inclusive)
|
|
3396
|
+
*/
|
|
3397
|
+
max?: number;
|
|
3398
|
+
/**
|
|
3399
|
+
* Minimum allowed value (inclusive)
|
|
3400
|
+
*/
|
|
3401
|
+
min?: number;
|
|
3402
|
+
}
|
|
3403
|
+
/**
|
|
3404
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3405
|
+
*/
|
|
3406
|
+
interface NumHeteroatoms {
|
|
3407
|
+
/**
|
|
3408
|
+
* Maximum allowed value (inclusive)
|
|
3409
|
+
*/
|
|
3410
|
+
max?: number;
|
|
3411
|
+
/**
|
|
3412
|
+
* Minimum allowed value (inclusive)
|
|
3413
|
+
*/
|
|
3414
|
+
min?: number;
|
|
3415
|
+
}
|
|
3416
|
+
/**
|
|
3417
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3418
|
+
*/
|
|
3419
|
+
interface NumRings {
|
|
3420
|
+
/**
|
|
3421
|
+
* Maximum allowed value (inclusive)
|
|
3422
|
+
*/
|
|
3423
|
+
max?: number;
|
|
3424
|
+
/**
|
|
3425
|
+
* Minimum allowed value (inclusive)
|
|
3426
|
+
*/
|
|
3427
|
+
min?: number;
|
|
3428
|
+
}
|
|
3429
|
+
/**
|
|
3430
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3431
|
+
*/
|
|
3432
|
+
interface NumRotatableBonds {
|
|
3433
|
+
/**
|
|
3434
|
+
* Maximum allowed value (inclusive)
|
|
3435
|
+
*/
|
|
3436
|
+
max?: number;
|
|
3437
|
+
/**
|
|
3438
|
+
* Minimum allowed value (inclusive)
|
|
3439
|
+
*/
|
|
3440
|
+
min?: number;
|
|
3441
|
+
}
|
|
3442
|
+
/**
|
|
3443
|
+
* Min/max range constraint for an RDKit molecular descriptor
|
|
3444
|
+
*/
|
|
3445
|
+
interface Tpsa {
|
|
3446
|
+
/**
|
|
3447
|
+
* Maximum allowed value (inclusive)
|
|
3448
|
+
*/
|
|
3449
|
+
max?: number;
|
|
3450
|
+
/**
|
|
3451
|
+
* Minimum allowed value (inclusive)
|
|
3452
|
+
*/
|
|
3453
|
+
min?: number;
|
|
3454
|
+
}
|
|
3455
|
+
}
|
|
3456
|
+
/**
|
|
3457
|
+
* Filter molecules by custom SMARTS patterns. Molecules matching any pattern are
|
|
3458
|
+
* rejected.
|
|
3459
|
+
*/
|
|
3460
|
+
interface SmartsCustomFilter {
|
|
3461
|
+
/**
|
|
3462
|
+
* SMARTS patterns. Molecules matching any pattern are rejected.
|
|
3463
|
+
*/
|
|
3464
|
+
patterns: Array<string>;
|
|
3465
|
+
type: 'smarts_custom_filter';
|
|
3466
|
+
}
|
|
3467
|
+
/**
|
|
3468
|
+
* Filter molecules using a predefined SMARTS catalog of structural alerts.
|
|
3469
|
+
*/
|
|
3470
|
+
interface SmartsCatalogFilter {
|
|
3471
|
+
/**
|
|
3472
|
+
* Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs
|
|
3473
|
+
* reject known problematic substructures.
|
|
3474
|
+
*/
|
|
3475
|
+
catalog: 'PAINS' | 'PAINS_A' | 'PAINS_B' | 'PAINS_C' | 'BRENK' | 'CHEMBL' | 'CHEMBL_BMS' | 'CHEMBL_Dundee' | 'CHEMBL_Glaxo' | 'CHEMBL_Inpharmatica' | 'CHEMBL_LINT' | 'CHEMBL_MLSMR' | 'CHEMBL_SureChEMBL' | 'NIH';
|
|
3476
|
+
type: 'smarts_catalog_filter';
|
|
3477
|
+
}
|
|
3478
|
+
/**
|
|
3479
|
+
* Filter molecules by regex patterns on their SMILES representation.
|
|
3480
|
+
*/
|
|
3481
|
+
interface SmilesRegexFilter {
|
|
3482
|
+
/**
|
|
3483
|
+
* Regex patterns applied to SMILES strings. Molecules matching any pattern are
|
|
3484
|
+
* rejected.
|
|
3485
|
+
*/
|
|
3486
|
+
patterns: Array<string>;
|
|
3487
|
+
type: 'smiles_regex_filter';
|
|
3488
|
+
}
|
|
3489
|
+
}
|
|
3490
|
+
}
|
|
3491
|
+
export declare namespace LibraryScreen {
|
|
3492
|
+
export { type LibraryScreenRetrieveResponse as LibraryScreenRetrieveResponse, type LibraryScreenListResponse as LibraryScreenListResponse, type LibraryScreenDeleteDataResponse as LibraryScreenDeleteDataResponse, type LibraryScreenEstimateCostResponse as LibraryScreenEstimateCostResponse, type LibraryScreenListResultsResponse as LibraryScreenListResultsResponse, type LibraryScreenStartResponse as LibraryScreenStartResponse, type LibraryScreenStopResponse as LibraryScreenStopResponse, type LibraryScreenListResponsesCursorPage as LibraryScreenListResponsesCursorPage, type LibraryScreenListResultsResponsesCursorPage as LibraryScreenListResultsResponsesCursorPage, type LibraryScreenRetrieveParams as LibraryScreenRetrieveParams, type LibraryScreenListParams as LibraryScreenListParams, type LibraryScreenEstimateCostParams as LibraryScreenEstimateCostParams, type LibraryScreenListResultsParams as LibraryScreenListResultsParams, type LibraryScreenStartParams as LibraryScreenStartParams, };
|
|
3493
|
+
}
|
|
3494
|
+
//# sourceMappingURL=library-screen.d.ts.map
|