krz/vox-populi
A Tumblr web client.
clone: git clone https://gitbay.org/krz/vox-populi.git
main: vendor/guzzlehttp/guzzle/src/ClientInterface.php · raw
1<?php
2namespace GuzzleHttp;
3
4use GuzzleHttp\Exception\GuzzleException;
5use GuzzleHttp\Promise\PromiseInterface;
6use Psr\Http\Message\RequestInterface;
7use Psr\Http\Message\ResponseInterface;
8use Psr\Http\Message\UriInterface;
9
10/**
11 * Client interface for sending HTTP requests.
12 */
13interface ClientInterface
14{
15 /**
16 * @deprecated Will be removed in Guzzle 7.0.0
17 */
18 const VERSION = '6.5.5';
19
20 /**
21 * Send an HTTP request.
22 *
23 * @param RequestInterface $request Request to send
24 * @param array $options Request options to apply to the given
25 * request and to the transfer.
26 *
27 * @return ResponseInterface
28 * @throws GuzzleException
29 */
30 public function send(RequestInterface $request, array $options = []);
31
32 /**
33 * Asynchronously send an HTTP request.
34 *
35 * @param RequestInterface $request Request to send
36 * @param array $options Request options to apply to the given
37 * request and to the transfer.
38 *
39 * @return PromiseInterface
40 */
41 public function sendAsync(RequestInterface $request, array $options = []);
42
43 /**
44 * Create and send an HTTP request.
45 *
46 * Use an absolute path to override the base path of the client, or a
47 * relative path to append to the base path of the client. The URL can
48 * contain the query string as well.
49 *
50 * @param string $method HTTP method.
51 * @param string|UriInterface $uri URI object or string.
52 * @param array $options Request options to apply.
53 *
54 * @return ResponseInterface
55 * @throws GuzzleException
56 */
57 public function request($method, $uri, array $options = []);
58
59 /**
60 * Create and send an asynchronous HTTP request.
61 *
62 * Use an absolute path to override the base path of the client, or a
63 * relative path to append to the base path of the client. The URL can
64 * contain the query string as well. Use an array to provide a URL
65 * template and additional variables to use in the URL template expansion.
66 *
67 * @param string $method HTTP method
68 * @param string|UriInterface $uri URI object or string.
69 * @param array $options Request options to apply.
70 *
71 * @return PromiseInterface
72 */
73 public function requestAsync($method, $uri, array $options = []);
74
75 /**
76 * Get a client configuration option.
77 *
78 * These options include default request options of the client, a "handler"
79 * (if utilized by the concrete client), and a "base_uri" if utilized by
80 * the concrete client.
81 *
82 * @param string|null $option The config option to retrieve.
83 *
84 * @return mixed
85 */
86 public function getConfig($option = null);
87}