text: #import "ACEKeyboardHandlers.h"
  
  #if __has_feature(objc_generics)
  #define OF_NSSTRING <NSString *>
  #else
  #define OF_NSSTRING
  #endif
  
  /** Class providing methods to:
  
   - convert ACE keyboard handler names used internally to to their human-readable counterparts and vise-versa.
   - Convert ACEKeyboardHandler constants into their ACE keyboard handler or human-readable ACE keyboard handler names.
  
   */
  @interface ACEKeyboardHandlerNames : NSObject { }
  
  /**---------------------------------------------------------------------------------------
   * @name Class Methods
   *  ---------------------------------------------------------------------------------------
   */
  
  /** Return an array of ACE keyboard handler names.
  
   @return Array of ACE keyboard handler names.
   */
  + (NSArray OF_NSSTRING *) keyboardHandlerCommands;
  /** Return an array of human-readable ACE keyboard handler names.
  
   @return Array of human-readable ACE keyboard handler names.
   */
  + (NSArray OF_NSSTRING *) humanKeyboardHandlerNames;
  
  /** Return the ACE keyboard handler command for a given ACEKeyboardHandler constant.
  
   @param keyboardHandler The ACEKeyboardHandler constant to be converted.
   @return The ACE keyboard handler name corresponding to the given ACEKeyboardHandler constant.
   */
  + (NSString *) commandForKeyboardHandler:(ACEKeyboardHandler)keyboardHandler;
  /** Return the human-readable ACE keyboard handler name for a given ACEKeyboardHandler constant.
  
   @param keyboardHandler The ACEKeyboardHandler constant to be converted.
   @return The human-readable ACE keyboard handler name corresponding to the given ACEKeyboardHandler constant.
   */
  + (NSString *) humanNameForKeyboardHandler:(ACEKeyboardHandler)keyboardHandler;
  
  @end
  