#pragma once

#include <maps/wikimap/mapspro/services/mrc/libs/fb/fbs/traffic_sign_groups.fbs64.h>
#include <maps/wikimap/mapspro/services/mrc/libs/fb/include/common.h>
#include <maps/wikimap/mapspro/services/mrc/libs/fb/include/version.h>

#include <string>
#include <vector>

namespace maps::mrc::fb {

class TrafficSignGroupsWriter {
public:
    void add(
        const db::TId& groupId,
        const db::TIds& objectIds,
        GroupOrientation);

    void dump(
        const std::string& version,
        const std::string& toDirectory);

private:
    flatbuffers64::FlatBufferBuilder builder_;
    std::vector<flatbuffers64::Offset<TrafficSignGroup>> offsets_;
};

}  // namespace maps::mrc::fb
