package types

type Config struct {
	WebUrl          string `mapstructure:"weburl"`
	Address         string `mapstructure:"address"`
	Port            int    `mapstructure:"port"`
	ApiPrefix       string `mapstructure:"apiprefix"`
	KeyFile         string `mapstructure:"keyfile"`
	CertFile        string `mapstructure:"certfile"`
	// Database configuration
	DatabaseDriver  string `mapstructure:"databasedriver"`  // "mysql" or "sqlite"
	DatabaseAddress string `mapstructure:"databaseaddress"`
	Database        string `mapstructure:"database"`
	User            string `mapstructure:"user"`
	Password        string `mapstructure:"password"`        // Sensitive: use OA_PASSWORD env var
	// SQLite specific
	DatabaseFile    string `mapstructure:"databasefile"`
	MailgunDomain   string `mapstructure:"mailgundomain"`
	MailgunKey      string `mapstructure:"mailgunkey"`      // Sensitive: use OA_MAILGUN_KEY env var
	MailgunEmail    string `mapstructure:"mailgunemail"`
	MailgunSender   string `mapstructure:"mailgunsender"`
}
