hookstate
hookstate copied to clipboard
add into() method to state
let a: State<{ a: number, b: string }> & { downcast<S extends Partial<{ a: number, b: string }>>(): State<S>; };
let b: State<{ a: number }> = a!.downcast();
let c: State<{ a: number }> = (a!);
function downcast<S1, S2 extends S1, E>(a: State<S2, E>): State<S1, E> {
return {} as State<S1, E>
}