#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <stdbool.h>
#include <stddef.h>
typedef void* neug_db_t;
typedef void* neug_conn_t;
typedef void* neug_result_t;
typedef struct {
const char* db_path;
const char* mode; size_t max_thread_num;
bool checkpoint_on_close;
} neug_db_options_t;
const char* neug_get_last_error(void);
void neug_init(void);
neug_db_t neug_db_open(const neug_db_options_t* options);
void neug_db_close(neug_db_t db);
neug_conn_t neug_db_connect(neug_db_t db);
void neug_conn_close(neug_db_t db, neug_conn_t conn);
neug_result_t neug_conn_execute(neug_conn_t conn, const char* query, const char* access_mode);
void neug_result_free(neug_result_t result);
bool neug_result_is_ok(neug_result_t result);
const char* neug_result_get_error(neug_result_t result);
#ifdef __cplusplus
}
#endif