[importlinter]
root_package = hemonc_alchemy
include_external_packages = True

[importlinter:contract:runtime-layers]
name = compiler is author-facing only; toolkit builds on model
type = layers
layers =
    hemonc_alchemy.cli
    hemonc_alchemy.compiler
    hemonc_alchemy.toolkit.analytics
    hemonc_alchemy.toolkit.core
    hemonc_alchemy.model

[importlinter:contract:omop-alchemy-behind-bridge]
name = omop-alchemy is only reachable through the optional integrations bridge
type = forbidden
source_modules =
    hemonc_alchemy.model
    hemonc_alchemy.toolkit.analytics
    hemonc_alchemy.toolkit.core
    hemonc_alchemy.compiler
    hemonc_alchemy.cli
    hemonc_alchemy.config
    hemonc_alchemy.errors
forbidden_modules =
    omop_alchemy
