#pragma once

#include <maps/libs/common/include/pimpl_utils.h>
#include <maps/libs/json/include/value.h>

#include <string>
#include <vector>

namespace maps {
namespace mrc {
namespace toloka {
namespace io {

class KnownSolution
{
public:
    KnownSolution(json::Value outputValues, double correctnessWeight);

    const json::Value& outputValues() const;

    double correctnessWeight() const;

    COPYABLE_PIMPL_DECLARATIONS(KnownSolution)
};


using KnownSolutions = std::vector<KnownSolution>;


} // namespace io
} // namespace toloka
} // namespace mrc
} // namespace maps

