32 lines
652 B
Go
32 lines
652 B
Go
|
package config
|
||
|
|
||
|
import "crypto/tls"
|
||
|
|
||
|
type Config interface {
|
||
|
User (name string) User
|
||
|
OverUsers (func (name string, user User) bool)
|
||
|
|
||
|
RconEnable () bool
|
||
|
|
||
|
RouterPort () int
|
||
|
HTTPSPort () int
|
||
|
HTTPSEnable () bool
|
||
|
HTTPPort () int
|
||
|
HTTPEnable () bool
|
||
|
GeminiPort () int
|
||
|
GeminiEnable () bool
|
||
|
Certificate () tls.Certificate
|
||
|
|
||
|
ResolveAlias (alias string) string
|
||
|
AliasFallback () string
|
||
|
OverAliases (func (alias, target string) bool)
|
||
|
}
|
||
|
|
||
|
type User interface {
|
||
|
Validate (key []byte) bool
|
||
|
RconAllow () bool
|
||
|
|
||
|
OverPatterns (func (pattern string) bool)
|
||
|
CanMountOn (scheme, host, path string) bool
|
||
|
}
|