Represents a command that is selectable in the menu
Configuration for the GUI. Check source for what the defaults are.
Represents a result of the interaction between the user and the GUI.
A reasonable main function. Commands are filtered by command.key().starts_with(input), then selected_command.command() is executed.
Runs the menu with the default config. The process function will filter the output based on the input.
Runs with a configuration. See run