1<?php
2/**
3 * This file is part of the FreeDSx Socket 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\Socket;
12
13use FreeDSx\Asn1\Type\AbstractType;
14
15/**
16 * Represents an ASN.1 PDU that can be retrieved from a message queue.
17 *
18 * @author Chad Sikorra <Chad.Sikorra@gmail.com>
19 */
20interface PduInterface
21{
22    /**
23     * @return AbstractType
24     */
25    public function toAsn1() : AbstractType;
26
27    /**
28     * @param AbstractType $asn1
29     * @return mixed
30     */
31    public static function fromAsn1(AbstractType $asn1);
32}
33