package provider

import (
	"log/slog"
	"net/http"
)

// GitHubHandler serves GitHub App registration, installation, config, and connection routes.
type GitHubHandler struct {
	store                           Store
	adminStore                      GitHubAdminStore
	installationRequestProjector    AppInstallationRequestProjector
	serviceEventSubscriptionBlocker ServiceEventSubscriptionBlocker
	githubConfig                    GitHubConfig
	httpClient                      *http.Client
	publicBaseURL                   string
	logger                          *slog.Logger
}

// GiteaHandler serves Gitea App config and connection routes.
type GiteaHandler struct {
	store      Store
	adminStore GiteaAdminStore
}
