/**
 * @file events_manager.h
 * @author Piotr Krygier (piotrkrygier@everyonencancode.xyz)
 * @brief Events manager for Red Scarf Engine
 * @version 0.1
 * @date 2026-03-02
 *
 * @copyright Copyright (c) 2026
 *
 */

#ifndef RSE_EVENTS_MANAGER_H_
#define RSE_EVENTS_MANAGER_H_

#include "src/events_context.h"
#include "utilities/commons.h"

rse_err_t rse_events_init(struct events_context_t* events_context);

rse_err_t rse_events_set_event_handler(struct events_context_t* events_context,
                                       enum EVENT_HANDLER event_type,
                                       rse_event_handler_t event_handler);

rse_err_t rse_events_main_loop(struct events_context_t* context);

#endif /* RSE_EVENTS_MANAGER_H_ */
