<?php

namespace Modules\Product\Interfaces;

use Modules\Product\Models\Product;

interface ProductRepositoryInterface
{
    public function get(array $request);
    public function getItem(int $id);
    public function checkItem(int $id);
    public function create(array $request): Product;
    public function update(array $request, Product $product): Product;
    public function destroy(Product $product): void;
    public function destroyAll(array $ids): void;
    public function restore(Product $product): void;
    public function restoreAll(array $ids): void;
    public function forceDelete(Product $product): void;
    public function forceDeleteAll(array $ids): void;
}
