type code = | Char of string| Enter| Escape| Tab| Up| Down| Left| Right| F1| F2| F3| F4| F5| F6| F7| F8| F9| F10| F11| F12| Next_page| Prev_page| Home| End| Insert| Delete| Backspace
val code_to_int : code -> intval code_to_string : code -> stringtype t = {control : bool;meta : bool;shift : bool;code : code;
}val t_to_int : t -> int * int listval t_to_string : t -> stringtype modifier = | Control| Meta| Shift
val compare_code : t -> t -> intval compare_modifier : t -> t -> intval compare : t -> t -> intval modifier : key:t -> modifier:modifier -> boolval equal : t -> t -> boolval to_string : t -> string