#ifndef TINY_CONVMEM_MCP_TOOLS_HISTORY_H #define TINY_CONVMEM_MCP_TOOLS_HISTORY_H #include "storage/store.h" typedef struct tiny_history_index tiny_history_index_t; typedef struct tiny_history_index_session_info { const char *session_id; int64_t last_message_at; } tiny_history_index_session_info_t; tiny_history_index_t *tiny_history_index_build(const tiny_store_t *store); void tiny_history_index_free(tiny_history_index_t *index); bool tiny_history_index_add(tiny_history_index_t *index, const tiny_store_t *store, size_t entry_index); bool tiny_history_index_session(const tiny_history_index_t *index, const char *session_id, const size_t **entries, size_t *count); size_t tiny_history_index_session_count(const tiny_history_index_t *index); bool tiny_history_index_session_at(const tiny_history_index_t *index, size_t position, const char **session_id, const size_t **entries, size_t *count); #endif