import interface TagData; import interface CompletionData; import interface TaskActions; external atom Tag id "atom:tag"; external atom Completion id "atom:completion"; import interface TaskData; external atom TaskReactComponent id "atom:task-react-component"; external atom Task id "atom:task"; type TaskProps = record {data: interface-ref;}; package TodoReactRuntime id "package:todo-react-runtime" revision "package:todo-react-runtime@1" { constructor createComponent id "export:todo-react-runtime:create-component" constructs TaskReactComponent : atom-ref; operation sourceGet id "export:todo-react-runtime:source-get" : unit -> string mode call receiver atom TaskReactComponent; operation propsGet id "export:todo-react-runtime:props-get" : unit -> TaskProps mode call receiver atom TaskReactComponent requires { interface data id "port:todo-react-runtime:data" : TaskData; }; operation propsWatch id "export:todo-react-runtime:props-watch" : unit -> watch-handle mode watch-start emits TaskProps receiver atom TaskReactComponent requires { interface data id "port:todo-react-runtime:data" : TaskData; }; operation propsWatchStop id "export:todo-react-runtime:props-watch-stop" : watch-handle -> unit mode watch-stop receiver atom TaskReactComponent; query History id "query:History" root TaskData document "queries/History.graphql" operation "History" { view Tag as TagData; view Completion as CompletionData; max rows 100; max depth 8; max result-bytes 1048576; watch; } }