1<?php
2/**
3 * This file is part of the FreeDSx LDAP package.
4 *
5 * (c) Chad Sikorra <Chad.Sikorra@gmail.com>
6 *
7 * For the full copyright and license information, please view the LICENSE
8 * file that was distributed with this source code.
9 */
10
11namespace FreeDSx\Ldap\Protocol\ClientProtocolHandler;
12
13use FreeDSx\Ldap\Protocol\LdapMessageRequest;
14use FreeDSx\Ldap\Protocol\LdapMessageResponse;
15use FreeDSx\Ldap\Protocol\Queue\ClientQueue;
16
17/**
18 * Handles response specific protocol communication details.
19 *
20 * @internal
21 * @author Chad Sikorra <Chad.Sikorra@gmail.com>
22 */
23interface ResponseHandlerInterface
24{
25    /**
26     * Pass the message response to the handler specific to it.
27     */
28    public function handleResponse(LdapMessageRequest $messageTo, LdapMessageResponse $messageFrom, ClientQueue $queue, array $options): ?LdapMessageResponse;
29}
30