package config type Auth struct { DefaultAdmin DefaultAdmin `envPrefix:"DEFAULT_ADMIN_"` Providers AuthProviders `envPrefix:"PROVIDERS_"` } type DefaultAdmin struct { Email string `env:"EMAIL,expand"` Provider string `env:"PROVIDER,expand"` } type AuthProviders struct { Google OAuth2Provider `envPrefix:"GOOGLE_"` Github OAuth2Provider `envPrefix:"GITHUB_"` OIDC OIDCProvider `envPrefix:"OIDC_"` } type OAuth2Provider struct { Key string `env:"KEY,expand"` Secret string `env:"SECRET,expand"` Scopes []string `env:"SCOPES",expand"` } type OIDCProvider struct { OAuth2Provider DiscoveryURL string `env:"DISCOVERY_URL,expand"` Icon string `env:"ICON,expand" envDefault:"fa-passport"` Label string `env:"LABEL,expand" envDefault:"OpenID Connect"` }