#ifndef FONT_H
#define FONT_H

#include "stdint.h"
#include "display.h"
#include "lvgl.h"

// Font declarations - fonts are defined in separate .c files to avoid static variable conflicts
#if LVGL_VERSION_MAJOR >= 8
extern const lv_font_t roboto_bold_font;
extern const lv_font_t roboto_bold_large_font;
#else
extern lv_font_t roboto_bold_font;
extern lv_font_t roboto_bold_large_font;
#endif

uint16_t draw_character(rgb565_pixel_t *framebuffer, const lv_font_t *font, const uint16_t x_loc, const uint16_t y_loc, const uint8_t character, rgb565_pixel_t color);

void draw_string(rgb565_pixel_t *framebuffer, const lv_font_t *font, const uint16_t x_loc, const uint16_t y_loc, const uint8_t *string, rgb565_pixel_t color);

#endif