import React from 'react'; import { Omit } from 'typelevel-ts'; export declare enum KeyCode { Escape = 27, Left = 37, Up = 38, Down = 40, Right = 39, Delete = 46, Tab = 9, Enter = 13, Backspace = 8, N0 = 48, N1 = 49, N2 = 50, N3 = 51, N4 = 52, N5 = 53, N6 = 54, N7 = 55, N8 = 56, N9 = 57, NUM0 = 96, NUM1 = 97, NUM2 = 98, NUM3 = 99, NUM4 = 100, NUM5 = 101, NUM6 = 102, NUM7 = 103, NUM8 = 104, NUM9 = 105, LETR_A = 65, LETR_P = 80 } export declare const KEY_CODE_NUM_MAP: { [code: number]: number; }; export declare const KEY_CODE_LETR_MAP: { [code: number]: string; }; /** * state of HOC - no need to mess with value naming - let it just be a 'value' */ export declare type TStatefulState = { value?: V; }; export declare type TDynamicValue = { [value in N]: V; }; export declare type TDynamicValueHandler = { [handler in H]: (value: V) => void; }; export declare type TControlProps = TDynamicValue & TDynamicValueHandler; export declare type TStatefulProps

, V, N extends string = 'value', D extends string = 'defaultValue', H extends string = 'onValueChange'> = Omit & //remove both value name and handler name from props Partial> & //add optional change handler to props TDynamicValue; export declare function stateful(valueName?: N, handlerName?: H, defaultValueName?: D): >(Target: React.FunctionComponent

& TDynamicValueHandler> | React.ComponentClass

& TDynamicValueHandler, any>) => React.ComponentClass, any>;