19 lines
275 B
PHP
19 lines
275 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
namespace App\Contracts;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @template TInput of \App\Contracts\QueryInput
|
||
|
|
* @template TResult
|
||
|
|
*/
|
||
|
|
interface Query
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* @param TInput $input
|
||
|
|
* @return TResult
|
||
|
|
*/
|
||
|
|
public function __invoke(QueryInput $input);
|
||
|
|
}
|