2026-09-05 18:43:41 -07:00
import interface Named;
import interface ProjectTasks;
external atom ProjectReactComponent id "atom:project-react-component";
external atom Project id "atom:project";
package ProjectReactRuntime id "package:project-react-runtime" revision "package:project-react-runtime@1" {
2026-09-05 10:18:09 -07:00
constructor createComponent id "export:project-react-runtime:create-component" constructs ProjectReactComponent : atom-ref<Project>;
operation sourceGet id "export:project-react-runtime:source-get" : unit -> string mode call receiver atom ProjectReactComponent;
operation propsGet id "export:project-react-runtime:props-get" : unit -> message "org.quixos.web-studio.ReactProps" mode call receiver atom ProjectReactComponent requires {
2026-09-05 18:43:41 -07:00
interface named id "port:project-react:named" : Named;
interface tasks id "port:project-react:tasks" : ProjectTasks;
2026-09-05 10:18:09 -07:00
};
operation propsWatch id "export:project-react-runtime:props-watch" : unit -> watch-handle mode watch-start emits message "org.quixos.web-studio.ReactProps" receiver atom ProjectReactComponent requires {
2026-09-05 18:43:41 -07:00
interface named id "port:project-react:named" : Named;
interface tasks id "port:project-react:tasks" : ProjectTasks;
2026-09-05 10:18:09 -07:00
};
operation propsWatchStop id "export:project-react-runtime:props-watch-stop" : watch-handle -> unit mode watch-stop receiver atom ProjectReactComponent;
}