49 lines
1.2 KiB
PHP
49 lines
1.2 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Slim Framework (https://slimframework.com)
|
|
*
|
|
* @license https://github.com/slimphp/Slim/blob/4.x/LICENSE.md (MIT License)
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Slim\Interfaces;
|
|
|
|
use Psr\Http\Message\ResponseFactoryInterface;
|
|
use Psr\Http\Message\StreamFactoryInterface;
|
|
use RuntimeException;
|
|
|
|
interface Psr17FactoryInterface
|
|
{
|
|
/**
|
|
* @throws RuntimeException when the factory could not be instantiated
|
|
*/
|
|
public static function getResponseFactory(): ResponseFactoryInterface;
|
|
|
|
/**
|
|
* @throws RuntimeException when the factory could not be instantiated
|
|
*/
|
|
public static function getStreamFactory(): StreamFactoryInterface;
|
|
|
|
/**
|
|
* @throws RuntimeException when the factory could not be instantiated
|
|
*/
|
|
public static function getServerRequestCreator(): ServerRequestCreatorInterface;
|
|
|
|
/**
|
|
* Is the PSR-17 ResponseFactory available
|
|
*/
|
|
public static function isResponseFactoryAvailable(): bool;
|
|
|
|
/**
|
|
* Is the PSR-17 StreamFactory available
|
|
*/
|
|
public static function isStreamFactoryAvailable(): bool;
|
|
|
|
/**
|
|
* Is the ServerRequest creator available
|
|
*/
|
|
public static function isServerRequestCreatorAvailable(): bool;
|
|
}
|