package config

import (
	"git.gocasts.ir/ebhomengo/niki/adapter/redis"
	smsprovider "git.gocasts.ir/ebhomengo/niki/adapter/sms_provider/kavenegar"
	"git.gocasts.ir/ebhomengo/niki/repository/mysql"
	authservice "git.gocasts.ir/ebhomengo/niki/service/auth"
	benefactorservice "git.gocasts.ir/ebhomengo/niki/service/benefactor/benefactor"
)

type HTTPServer struct {
	Port int `koanf:"port"`
}

type Config struct {
	HTTPServer           HTTPServer               `koanf:"http_server"`
	Mysql                mysql.Config             `koanf:"mariadb"`
	Auth                 authservice.Config       `koanf:"auth"`
	AdminAuth            authservice.Config       `koanf:"admin_auth"`
	Redis                redis.Config             `koanf:"redis"`
	KavenegarSmsProvider smsprovider.Config       `koanf:"kavenegar_sms_provider"`
	BenefactorSvc        benefactorservice.Config `koanf:"benefactor_service"`
}
