Function fieldLens

    • Bidirectional field lens onto parent.value[key] (write spread-replaces), cached per (instance, key). Writable<Cls> on a writable parent, bare Cls on RO.

       get x() { return fieldLens(this, "x", Num); }
      

      Type Parameters

      • S extends Cell<any>
      • K extends string | number | symbol
      • C extends new (...args: never[]) => Cell<Inner<S>[K]>

      Parameters

      • parent: S
      • key: K
      • Cls: C

      Returns S extends WritableBrand ? Writable<InstanceType<C>> : InstanceType<C>