package mastersettings

import "context"

type Repository interface {
	Create(ctx context.Context, row *MasterSettings) error
	Update(ctx context.Context, row *MasterSettings) error
	Delete(ctx context.Context, id []byte, deletedBy []byte) error
	GetByID(ctx context.Context, id []byte) (*MasterSettings, error)
	List(ctx context.Context, filter, sort string, limit, offset int) ([]MasterSettings, int64, error)
	UpsertSettingValues(ctx context.Context, rows []MasterSettingValue) error
	GetSettingValuesByKeys(ctx context.Context, keys []string) ([]MasterSettingValue, error)
}
