#pragma once
#include <string>
#include <vector>
#include <optional>

class Popup {
public:
    struct Option {
        std::string label;
        int returnValue;

        static int nextID;


        Option(const std::string& label, int value)
            : label(label), returnValue(value) {}
    };

    // Yes/No message box (native)
    static bool AskYesNo(const std::string& title, const std::string& message);

    static int Show(const std::string& title,
                    const std::string& message,
                    const std::vector<Option>& options = { Option("OK", 1) });
};
