#pragma once

#include <maps/wikimap/mapspro/services/mrc/eye/experiments/signs_map/toloka/matches/lib/include/object.h>
#include <maps/wikimap/mapspro/services/mrc/eye/experiments/signs_map/toloka/matches/lib/include/task.h>

#include <maps/wikimap/mapspro/services/mrc/libs/db/include/feature.h>

#include <maps/libs/json/include/builder.h>

#include <iostream>

namespace maps::mrc::eye {

void toJson(const Object& object, json::ObjectBuilder& builder);

void toJson(
    const db::Feature& feature, const Objects& objects,
    json::ObjectBuilder& builder);

void toJson(const Task& task, json::ObjectBuilder& builder);


void dumpTasks(const Tasks& tasks, std::ostream& output);

void dumpTasks(const Tasks& tasks, const std::string& path);

} // namespace maps::mrc::eye
