define_key.3x man page
define_key — define a keycode
int define_key(const char *definition, int keycode);
This is an extension to the curses library. It permits an application to define keycodes with their corresponding control strings, so that the ncurses library will interpret them just as it would the predefined codes in the terminfo database.
If the given string is null, any existing definition for the keycode is removed. Similarly, if the given keycode is negative or zero, any existing string for the given definition is removed.
The keycode must be greater than zero, and the string non-null, otherwise ERR is returned. ERR may also be returned if there is insufficient memory to allocate the data to store the definition. If no error is detected, OK is returned.
These routines are specific to ncurses. They were not supported on Version 7, BSD or System V implementations. It is recommended that any code depending on them be conditioned using NCURSES_VERSION.