import { createFunc, complete, never, useState, useEffect, createSubscription } from "../../"; const counter = createFunc(() => { const [value, setValue] = useState(1); useEffect(() => { const timeoutId = setTimeout(() => setValue(value + 1), 1000); return () => clearTimeout(timeoutId); }, [value]); if (value === 5) { complete(); } return value.toString(); }); const app = createFunc(() => { const [value, setValue] = useState(""); counter().subscribe({ next: setValue }); return value !== "" ? "Result: " + value : never(); }); createSubscription(app(), { next: (value) => console.log(value) });