#ifndef _STDIO_H
#define _STDIO_H

#include <stdarg.h>
#include <sys/types.h>

typedef struct
{
    int __unused;
} FILE;

#define SEEK_SET 0

extern FILE* stderr;
#define stderr stderr

#ifdef __cplusplus
extern "C"
{
#endif

    int fflush(FILE*);

    FILE* fopen(const char*, const char*);
    int fclose(FILE*);

    size_t fread(void*, size_t, size_t, FILE*);
    size_t fwrite(const void*, size_t, size_t, FILE*);

    int fseek(FILE*, long, int);
    long ftell(FILE*);

    void setbuf(FILE*, char*);

    int fprintf(FILE*, const char*, ...);
    int vfprintf(FILE*, const char*, va_list);
    int sprintf(char*, const char*, ...);

    int console_print(const char*);

#ifdef __cplusplus
}
#endif

#endif