19 lines
749 B
Go
19 lines
749 B
Go
package referralservice
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
|
|
)
|
|
|
|
type ReferralStore interface {
|
|
GenerateReferralCode() (string, error)
|
|
CreateReferral(ctx context.Context, userID string) (*domain.Referral, error)
|
|
ProcessReferral(ctx context.Context, referredID, referralCode string) error
|
|
ProcessDepositBonus(ctx context.Context, userID string, amount float64) error
|
|
GetReferralStats(ctx context.Context, userID string) (*domain.ReferralStats, error)
|
|
UpdateReferralSettings(ctx context.Context, settings *domain.ReferralSettings) error
|
|
GetReferralSettings(ctx context.Context) (*domain.ReferralSettings, error)
|
|
ProcessBetReferral(ctx context.Context, userPhone string, betAmount float64) error
|
|
}
|