#ifndef KC_CONFIG_H
#define KC_CONFIG_H

#include <stdbool.h>
#include <stdlib.h>
#include <string.h>

#define PROGRAM_NAME "kl"
#define PROGRAM_FULL_NAME "Keyboard Listener (kl)"
#define PROGRAM_VERSION "0.0.2"
#define PROGRAM_AUTHORS "Verdant <im@verdant.ee>"

#define CONFIG_FILE_COMMENT "# kl config file (v"PROGRAM_VERSION")\n"	\
    "#\n"								\
    "# Please see your README for details.\n"				\
    "#\n"								\
    "# This file was auto-generated because it was missing.\n"		\

#define CFG_COMPLETE(key, val) ((strcmp((key), (val)) == 0) && ((val)[0] != '\0'))

struct config {
    char* home;
    char* config_file_path;
    char device[256];
    bool time;
    bool keys_counter;
};

struct config* parese_config(struct config* cfg);

struct config* prepare_config_file();

struct config* config_init();


#endif
