# Functions
NewRabbitMQClient creates a new rabbitMQ client instance.
NewRabbitMqPublisher creates a new rabbitMQ publisher instance.
# Variables
ErrInvalidRabbitMqExchangeName signals that an empty rabbitmq exchange name has been provided.
ErrInvalidRabbitMqExchangeType signals that an empty rabbitmq exchange type has been provided.
ErrNilRabbitMqClient signals that a nil rabbitmq client has been provided.
# Structs
ArgsRabbitMqPublisher defines the arguments needed for rabbitmq publisher creation.
# Interfaces
PublisherService defines the behaviour of a publisher component which should be able to publish received events and broadcast them to channels.
RabbitMqClient defines the behaviour of a rabbitMq client.