package ports import ( "context" "github.com/SamuelTariku/FortuneBet-Backend/internal/domain" ) type OddStore interface { SaveOddMarket(ctx context.Context, m domain.CreateOddMarket) error GetAllOdds(ctx context.Context, filter domain.OddMarketFilter) ([]domain.OddMarket, error) GetAllOddsWithSettings(ctx context.Context, companyID int64, filter domain.OddMarketFilter) ([]domain.OddMarketWithSettings, error) GetOddByID(ctx context.Context, id int64) (domain.OddMarket, error) GetOddsByMarketID(ctx context.Context, marketID int64, eventID int64) (domain.OddMarket, error) GetOddsWithSettingsByMarketID(ctx context.Context, marketID int64, eventID int64, companyID int64) (domain.OddMarketWithSettings, error) GetOddsByEventID(ctx context.Context, eventID int64, filter domain.OddMarketWithEventFilter) ([]domain.OddMarket, error) GetOddsWithSettingsByEventID(ctx context.Context, eventID int64, companyID int64, filter domain.OddMarketFilter) ([]domain.OddMarketWithSettings, error) DeleteOddsForEvent(ctx context.Context, eventID int64) error // Settings SaveOddsSetting(ctx context.Context, odd domain.CreateOddMarketSettings) error UpdateGlobalOddsSetting(ctx context.Context, odd domain.UpdateGlobalOddMarketSettings) error GetOddsWithSettingsByID(ctx context.Context, ID int64, companyID int64) (domain.OddMarketWithSettings, error) DeleteAllCompanyOddsSetting(ctx context.Context, companyID int64) error DeleteCompanyOddsSettingByOddMarketID(ctx context.Context, companyID int64, oddMarketID int64) error // Odd History InsertOddHistory(ctx context.Context, odd domain.CreateOddHistory) (domain.OddHistory, error) GetAllOddHistory(ctx context.Context, filter domain.OddHistoryFilter) ([]domain.OddHistory, error) GetInitialOddPerDay(ctx context.Context, filter domain.OddHistoryFilter) ([]domain.OddHistory, error) }