table = $table; return $this; } public function setEntity(string $entityClass): self { if (!class_exists($entityClass)) { throw new \InvalidArgumentException("Class '{$entityClass}' does not exist."); } $this->entityClass = $entityClass; return $this; } public function getRepository(): SingleRepository { $factory = new SingleFactory($this->entityClass); $mapper = new SingleMapper($factory); return new SingleRepository($mapper, $this->table); } }