// SPDX-FileCopyrightText: 2024 Manuel Alcaraz Zambrano <manuel@alcarazzam.dev>
// SPDX-License-Identifier: GPL-3.0-or-later

#pragma once

#include <QCoroProcess>
#include <QList>
#include <QObject>

#include <expected>

class Tournament;

#include "tournament.h"

class PairingEngine : public QObject
{
    Q_OBJECT

public:
    explicit PairingEngine() = default;

    QCoro::Task<std::expected<QList<std::pair<uint, uint>>, QString>> pair(int round, Tournament *tournament);
};
