Files
PHP-App-Timekeeping/api/src/Repositories/RepositoryWriterInterface.php
T
2021-04-07 12:11:01 +02:00

31 lines
620 B
PHP

<?php
namespace TorstenHettstedt\TimekeepingApi\Repositories;
/**
* @template T of \TorstenHettstedt\TimekeepingApi\Models\ModelInterface
*/
interface RepositoryWriterInterface
{
/**
* @param T $model
*
* @throws RepositoryRecordAlreadyExistException
*/
public function insert(mixed $model): void;
/**
* @param T $model
*
* @throws RepositoryRecordNotFoundException
*/
public function update(mixed $model): void;
/**
* @param T $model
*
* @throws RepositoryRecordNotFoundException
*/
public function delete(mixed $model): void;
}