Yimaru-BackEnd/internal/ports/settings.go

25 lines
1.2 KiB
Go

package ports
import (
"context"
"github.com/SamuelTariku/FortuneBet-Backend/internal/domain"
)
type SettingStore interface {
GetGlobalSettingList(ctx context.Context) (domain.SettingList, error)
GetGlobalSettings(ctx context.Context) ([]domain.Setting, error)
GetGlobalSetting(ctx context.Context, key string) (domain.Setting, error)
UpdateGlobalSetting(ctx context.Context, key, value string) error
UpdateGlobalSettingList(ctx context.Context, settingList domain.ValidSettingList) error
InsertCompanySetting(ctx context.Context, key, value string, companyID int64) error
InsertCompanySettingList(ctx context.Context, settingList domain.ValidSettingList, companyID int64) error
GetAllCompanySettings(ctx context.Context) ([]domain.CompanySetting, error)
GetCompanySettingsByKey(ctx context.Context, key string) ([]domain.CompanySetting, error)
GetOverrideSettings(ctx context.Context, companyID int64) ([]domain.Setting, error)
GetOverrideSettingsList(ctx context.Context, companyID int64) (domain.SettingList, error)
DeleteCompanySetting(ctx context.Context, companyID int64, key string) error
DeleteAllCompanySetting(ctx context.Context, companyID int64) error
}