package adssvc

import (
	adsrepository "legalgo-BE-go/internal/accessor/ads"
	adsdomain "legalgo-BE-go/internal/domain/ads"
)

type impl struct {
	adsRepo adsrepository.Ads
}

type Ads interface {
	Create(adsdomain.AdsReq) error
	GetAll() ([]adsdomain.AdsResponse, error)
	Update(string, adsdomain.AdsReq) error
	Delete(string) error
}

func New(
	adsRepo adsrepository.Ads,
) Ads {
	return &impl{
		adsRepo,
	}
}
