export type OrArray = T[] | T; export type StateOf any> = ReturnType['props']; export type Query = (state: S) => R; export type NotVoid = R extends void ? never : R;