package config

// Config stores application configuration
type Config struct {
	Service      Service
	AdminService Service
	Database     Database
	Blockchain   Blockchain
	AWS          AWS
}

// Service contains configuration for service
type Service struct {
	Port                    string
	Environment             string
	WebPageURL              string
	MapboxAccessToken       string
	JwtSecretKey            string
	JwtSecretKeyExpiryHours string
}

// Blockchain contains configuration for blockchain
type Blockchain struct {
	NetworkEndpoint  string
	ContractAddress  string
	WalletAddress    string
	WalletPrivateKey string
}

// Database configuration
type Database struct {
	UserName     string
	Password     string
	DatabaseName string
	HostName     string
	Port         string
}

type AWS struct {
	AccessKey string
	SecretKey string
}
