<?php

namespace FiloBlu\Esb\Model\Producer;

use FiloBlu\Esb\Api\Data\InvoiceProducerInterface;
use FiloBlu\Esb\Api\Data\MessageInterface;
use FiloBlu\Esb\Framework\Producer\AbstractProducer;
use Magento\Sales\Api\Data\InvoiceInterface;

/**
 * Class AbstractInvoiceProducer
 * @package FiloBlu\Esb\Model\Producer
 */
abstract class AbstractInvoiceProducer extends AbstractProducer implements InvoiceProducerInterface
{
    /**
     * @inheritDoc
     */
    abstract public function produce(InvoiceInterface $invoice = null) : MessageInterface;
}
