/** @noSelfInFile */ import type { ClassComponent } from "../reconciler"; export interface ReducerState { type: "reducer"; reducer?: (this: void, prevState: S, action: A) => S; component?: ClassComponent; value?: [S, (action: A) => void]; } export interface EffectHookState { type: "effect"; lastInputs?: I; cleanup?: void | (() => void); } export interface RefState { type: "ref"; current: T; } export interface MemoState { type: "memo"; current: T; inputs: U; } export declare type HookState = ReducerState | EffectHookState | RefState | MemoState;