external atom Node id "tree:node"; import interface TreeData; package TreeRuntime id "tree:runtime" revision "tree:runtime@1" { operation reparent id "tree:runtime:reparent" : optional> -> unit mode call execution transaction targets [browser, server] receiver atom Node requires { edge parent id "tree:move:parent" : optional-one interface TreeData [resolve, connect, disconnect]; } accept using check; operation check id "tree:runtime:check" : optional> -> unit mode call execution snapshot targets [server] receiver atom Node requires { edge current id "tree:check:current" : optional-one interface TreeData [resolve]; interface ancestors id "tree:check:ancestors" : TreeData using [parent.resolve] from input; }; }