func (e EnvironmentType) BaseUrl() string {
	for k, v := range typeString {
		if k == e {
			return v
		}
	}
	return "undefined"
}
BaseUrl To get Midtrans Base URL
package midtrans
import (
	"context"
	"net/http"
	"strings"
	"time"
)
type EnvironmentType int8
const (
	_ EnvironmentType = iota
	Sandbox
	Production
	libraryVersion = "v1.2.2"
)
var ServerKey string
var ClientKey string
var PaymentOverrideNotification *string
var PaymentAppendNotification *string
func SetPaymentOverrideNotification(val string) {
	PaymentOverrideNotification = &val
}
func SetPaymentAppendNotification(val string) {
	PaymentAppendNotification = &val
}
var (
	Environment = Sandbox
	DefaultHttpTimeout = 80 * time.Second
	DefaultGoHttpClient = &http.Client{Timeout: DefaultHttpTimeout}
	DefaultLoggerLevel = &LoggerImplementation{LogLevel: LogError}
	defaultHttpClientImplementation = &HttpClientImplementation{
		HttpClient: DefaultGoHttpClient,
		Logger:     GetDefaultLogger(Environment),
	}
)
func GetDefaultLogger(env EnvironmentType) LoggerInterface {
	if env == Sandbox {
		return &LoggerImplementation{LogLevel: LogDebug}
	} else {
		return DefaultLoggerLevel
	}
}
func GetHttpClient(Env EnvironmentType) *HttpClientImplementation {
	return &HttpClientImplementation{
		HttpClient: DefaultGoHttpClient,
		Logger:     GetDefaultLogger(Env),
	}
}
var typeString = map[EnvironmentType]string{
	Sandbox:    "https://api.sandbox.midtrans.com",
	Production: "https://api.midtrans.com",
}