hetzner-dns-api/generated/Runtime/Client/Endpoint.php

42 lines
1.4 KiB
PHP
Raw Permalink Normal View History

2023-01-05 12:55:52 +01:00
<?php
namespace DigiComp\HetznerDnsApi\Runtime\Client;
use Psr\Http\Message\ResponseInterface;
use Symfony\Component\Serializer\SerializerInterface;
interface Endpoint
{
/**
* Get body for an endpoint.
*
* Return value consist of an array where the first item will be a list of headers to add on the request (like the Content Type)
* And the second value consist of the body object.
*/
public function getBody(SerializerInterface $serializer, $streamFactory = null) : array;
/**
* Get the query string of an endpoint without the starting ? (like foo=foo&bar=bar).
*/
public function getQueryString() : string;
/**
* Get the URI of an endpoint (like /foo-uri).
*/
public function getUri() : string;
/**
* Get the HTTP method of an endpoint (like GET, POST, ...).
*/
public function getMethod() : string;
/**
* Get the headers of an endpoint.
*/
public function getHeaders(array $baseHeaders = []) : array;
/**
* Get security scopes of an endpoint.
*/
public function getAuthenticationScopes() : array;
/**
* Parse and transform a PSR7 Response into a different object.
*
* Implementations may vary depending the status code of the response and the fetch mode used.
*/
public function parseResponse(ResponseInterface $response, SerializerInterface $serializer, string $fetchMode = Client::FETCH_OBJECT);
}