adam@0: val init : transaction {} adam@2: adam@2: type discovery adam@2: val discover : string -> transaction (option discovery) adam@2: val endpoint : discovery -> string adam@2: val localId : discovery -> option string adam@3: adam@3: type inputs adam@3: val createInputs : transaction inputs adam@3: val addInput : inputs -> string -> string -> transaction {} adam@3: adam@3: type outputs adam@3: val getOutput : outputs -> string -> option string adam@3: adam@3: val indirect : string -> inputs -> transaction outputs