package kavenegar

import "github.com/kavenegar/kavenegar-go"

type Config struct {
	APIKey                    string `koanf:"api_key"`
	Sender                    string `koanf:"sender"`
	OtpTemplateNewUser        string `koanf:"otp_template_new_user"`
	OtpTemplateRegisteredUser string `koanf:"otp_template_registered_user"`
}

type Adapter struct {
	config Config
	api    *kavenegar.Kavenegar
}

func New(config Config) *Adapter {
	return &Adapter{config: config, api: kavenegar.New(config.APIKey)}
}

func (a Adapter) Client() *kavenegar.Kavenegar {
	return a.api
}

func (a Adapter) Config() Config {
	return a.config
}