(library
  (name flow_typing_changeset)
  (wrapped false)
  (modules changeset)
  (libraries
    flow_typing_key
  )
  (preprocess (pps ppx_let))
)

(library
  (name flow_typing_key)
  (wrapped false)
  (modules key key_map)
  (libraries
    flow_common
    flow_common_utils
  )
  (preprocess (pps ppx_let))
)

(library
  (name flow_typing_scope)
  (wrapped false)
  (modules scope)
  (libraries
    flow_typing_key
    flow_typing_trust
    flow_typing_type
  )
  (preprocess (pps ppx_let))
)

(library
  (name flow_typing_trust)
  (wrapped false)
  (modules trust)
  (libraries
    flow_common_utils
  )
  (preprocess (pps ppx_let))
)

(library
  (name flow_typing_type)
  (wrapped false)
  (modules type)
  (libraries
    flow_common
    flow_typing_changeset
    flow_typing_key
    flow_typing_polarity
    flow_typing_trust
  )
  (preprocess (pps ppx_let))
)

(library
  (name flow_typing)
  (wrapped false)
  (modules (:standard \ changeset key key_map trust type scope))
  (libraries
    flow_common
    flow_common_errors
    flow_common_modulename
    flow_common_monad
    flow_common_tarjan
    flow_parser_utils
    flow_state_heaps_parsing_exceptions
    flow_typing_errors
    flow_typing_polarity
    flow_typing_ty
    flow_typing_type
    worker_cancel ; hack
    xx
  )
  (modules_without_implementation graph partition resolvable_type_job)
  (preprocess (pps ppx_let))
)
