+class AuthenticationSelectionPage : public QWizardPage
+{
+ Q_OBJECT
+ using FieldInfo = std::tuple<QString, QString, QVariant>;
+
+public:
+ AuthenticationSelectionPage(const QVariantList& authInfos, QWidget* parent = nullptr);
+ int nextId() const override;
+ QString displayName() const;
+ QString authenticator() const;
+ QVariantMap authProperties() const;
+
+private slots:
+ void on_backendList_currentIndexChanged(int index);
+
+private:
+ Ui::CoreConfigWizardAuthenticationSelectionPage ui;
+ std::vector<QVariantMap> _authProperties;
+ std::vector<std::vector<FieldInfo>> _authFields;
+};