<?php

declare(strict_types=1);

namespace Gls\GlsPoland\AdePlus\Type;

use Gls\GlsPoland\AdePlus\Response;
use JsonSerializable;
use Gls\GlsPoland\Soap\Client\Type\ResultInterface;

final class AdeProfileChangeResponse extends Response implements ResultInterface, JsonSerializable
{
    /**
     * @var \Gls\GlsPoland\AdePlus\Type\CProfile
     */
    protected $return;

    public function jsonSerialize(): array
    {
        return [
            'return' => $this->return,
        ];
    }

    public function getReturn(): CProfile
    {
        return $this->return;
    }

    public function withReturn(CProfile $return): AdeProfileChangeResponse
    {
        $new = clone $this;
        $new->return = $return;

        return $new;
    }
}
