package ticket

import (
	"context"

	"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
)

type TicketStore interface {
	CreateTicket(ctx context.Context, ticket domain.CreateTicket) (domain.Ticket, error)
	CreateTicketOutcome(ctx context.Context, outcomes []domain.CreateTicketOutcome) (int64, error)
	GetTicketByID(ctx context.Context, id int64) (domain.GetTicket, error)
	GetAllTickets(ctx context.Context) ([]domain.GetTicket, error)
	CountTicketByIP(ctx context.Context, IP string) (int64, error)
	UpdateTicketOutcomeStatus(ctx context.Context, id int64, status domain.OutcomeStatus) error
	DeleteOldTickets(ctx context.Context) error
	DeleteTicket(ctx context.Context, id int64) error
}
