package handlers import ( "log/slog" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/authentication" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/bet" notificationservice "github.com/SamuelTariku/FortuneBet-Backend/internal/services/notfication" referralservice "github.com/SamuelTariku/FortuneBet-Backend/internal/services/referal" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/ticket" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/transaction" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/user" "github.com/SamuelTariku/FortuneBet-Backend/internal/services/wallet" jwtutil "github.com/SamuelTariku/FortuneBet-Backend/internal/web_server/jwt" customvalidator "github.com/SamuelTariku/FortuneBet-Backend/internal/web_server/validator" ) type Handler struct { logger *slog.Logger notificationSvc notificationservice.NotificationStore userSvc *user.Service referralSvc referralservice.ReferralStore walletSvc *wallet.Service transactionSvc *transaction.Service ticketSvc *ticket.Service betSvc *bet.Service authSvc *authentication.Service jwtConfig jwtutil.JwtConfig validator *customvalidator.CustomValidator } func New(logger *slog.Logger, notificationSvc notificationservice.NotificationStore, validator *customvalidator.CustomValidator, walletSvc *wallet.Service, referralSvc referralservice.ReferralStore, userSvc *user.Service, transactionSvc *transaction.Service, ticketSvc *ticket.Service, betSvc *bet.Service, authSvc *authentication.Service, jwtConfig jwtutil.JwtConfig) *Handler { return &Handler{ logger: logger, notificationSvc: notificationSvc, walletSvc: walletSvc, referralSvc: referralSvc, validator: validator, userSvc: userSvc, transactionSvc: transactionSvc, ticketSvc: ticketSvc, betSvc: betSvc, authSvc: authSvc, jwtConfig: jwtConfig, } }