import {defer} from "@e280/stz" export class LightCx { count = 0 rendered = defer() constructor(public render: () => Promise) {} doneRender() { this.count++ this.rendered.resolve() this.rendered = defer() } } export class ShadowCx extends LightCx { constructor( render: () => Promise, public host: HTMLElement, public shadow: ShadowRoot, ) { super(render) } }