. */ namespace SP\Domain\Common\Ports; use Closure; /** * Interface RepositoryItemInterface * * @package SP\Domain\Common\Ports */ interface RepositoryInterface { /** * Bubbles a Closure in a database transaction * * @param \Closure $closure * @param object $newThis * * @return mixed * @throws \SP\Domain\Common\Services\ServiceException * @throws \Exception */ public function transactionAware(Closure $closure, object $newThis): mixed; }