The high-level API consists of a single method,
compile, which expects the Compiler Standard Input and Output JSON.
It also accepts an optional set of callback functions, which include the
import and the
smtSolver callbacks. Starting 0.6.0 it only accepts an object in place of the callback to supply the callbacks.
import callback function is used to resolve unmet dependencies. This callback receives a path and must synchronously return either an error or the content of the dependency as a string. It cannot be used together with callback-based, asynchronous, filesystem access. A workaround is to collect the names of dependencies, return an error, and keep re-running the compiler until all of them are resolved.