Is your feature request related to a problem? Please describe.
Currently, the codegen outputs something like this for RichTextField:
declare type RichTextField<State extends FieldState = FieldState> = State extends "empty" ? [] : [RTNode, ...RTNode[]];
Using State extends "empty" ? [] means that the array is essentially never[] | [RTNode, ...RTNode[]]. This means that looping over items basically never works, because they can also be typed as never.
Describe the solution you'd like
Rewrite the type like this:
declare type RichTextField<State extends FieldState = FieldState> = RTNode[];
An empty array doesn't require getting typed, right?
Is your feature request related to a problem? Please describe.
Currently, the codegen outputs something like this for
RichTextField
:Using
State extends "empty" ? []
means that the array is essentiallynever[] | [RTNode, ...RTNode[]]
. This means that looping over items basically never works, because they can also be typed asnever
.Describe the solution you'd like
Rewrite the type like this:
An empty array doesn't require getting typed, right?
Describe alternatives you've considered
Overriding the types manually.
Additional context