#ifndef EXTRACTOR_H_
#define EXTRACTOR_H_

#include <cjson/cJSON.h>
#include <limits.h>
#include <stdbool.h>
#include <stddef.h>

enum site { SITE_BILIBILI };
typedef enum site site_t;

typedef struct site_map {
  struct {
    char domain[SHRT_MAX];
    site_t site;
  } pairs[1];
  unsigned char size;
} Site_map;

typedef struct options {
  site_t site;
  char *URL;
  char *path;
  char *query;
  char *pagedata;
} Options;

void options_cleanup(Options*);

int extract(void *);

#endif