AttributeRepositoryInterface.php 792 B

12345678910111213141516171819202122232425
  1. <?php
  2. namespace App\Shop\Attributes\Repositories;
  3. use App\Shop\Attributes\Attribute;
  4. use App\Shop\AttributeValues\AttributeValue;
  5. use Jsdecena\Baserepo\BaseRepositoryInterface;
  6. use Illuminate\Support\Collection;
  7. interface AttributeRepositoryInterface extends BaseRepositoryInterface
  8. {
  9. public function createAttribute(array $data) : Attribute;
  10. public function findAttributeById(int $id) : Attribute;
  11. public function updateAttribute(array $data) : bool;
  12. public function deleteAttribute() : ?bool;
  13. public function listAttributes($columns = array('*'), string $orderBy = 'id', string $sortBy = 'asc') : Collection;
  14. public function listAttributeValues() : Collection;
  15. public function associateAttributeValue(AttributeValue $attributeValue) : AttributeValue;
  16. }