/** File for types only, not actual implementation **/

export type Input<T = undefined, K = T> =
  | { value: T; valueChange?: ((newValue: K) => void) | false | null }
  | { value?: undefined; valueChange?: ((newValue: K) => void) | false | null };

return=(input.value as T) valueChange=(input.valueChange as (newValue: K) => void)
