public function listHookOptionsStructured() {
    $data = $this->getHookDeclarations();

    $return = array();
    foreach ($data as $hook_name => $hook_info) {
      $return[$hook_info['group']][$hook_name] = array(
        'name' => $hook_info['name'],
        'description' => $hook_info['description'],
        'type' => $hook_info['type'],
        'core' => $hook_info['core'],
      );
    }

    return $return;
  }