DSL builder for creating a MidnightContract.
Deployed contract address (64 hex chars).
Circuit verifier keys for deploy — map of circuit name to raw verifier key bytes. Load from the compiled contract's keys/{circuit}.verifier files. Required for deploy, not needed for call.
keys/{circuit}.verifier
Coin public key (32 bytes). Required.
Contract JavaScript as an InputStream. Accepts either:
Initial private state as a Kotlin map (auto-converted to JS).
Contract name (used for proving key management).
Register a witness provider for a named witness.