#pragma once

#include "AbstractUiInterface.h"

#include <memory>

class DesktopManager;

class UiInterfaceFactory
{
public:
    enum class Backend
    {
        UNSET,
        X11_RASTER,
        X11,
        WAYLAND_RASTER,
        WAYLAND
    };

    static std::unique_ptr<AbstractUIInterface> create(DesktopManager* desktopManager, Backend backend = Backend::UNSET);
};
