# Functions
KeepConnectionAndSetup starts a goroutine to keep the connection open and everytime the connection is open, it will call the setupRabbit function.
NewConfigConsume helper function to create a new ConfigConsume with some default values.
NewConfigPublish helper function to create a new ConfigPublish with some default values.
NewRabbitMQ creates the object to manage the operations to rabbitMQ.
NotifyOpenConnection registers a channel to be notified when the connection is open.
NotifySetupDone registers a channel to be notified when the setup is done by the KeepConnectionAndSetup function.
# Structs
ConfigBindQueue is the configuration for the bind to queue.
ConfigConnection is the configuration for the connection.
ConfigConsume is the configuration for the consumer.
ConfigExchange is the configuration for the exchange.
ConfigPublish is the configuration for the publisher.
ConfigQueue is the configuration for the queue.
# Interfaces
Closer is an interface for closing a RabbitMQ connection.
Connector is an interface for connecting to a RabbitMQ server.
Consumer is the interface for consuming messages from a queue.
ExchangeCreator is the interface for creating exchanges.
Publisher is the interface for publishing messages to an exchange.
QueueBinder is the interface for binding and unbinding queues.
QueueCreator is the interface for creating.
RabbitMQ combines all the interfaces of the package.
RabbitSetup is the interface for setting up the RabbitMQ queues and exchanges after the connection is made.
# Type aliases
Setup is a type that implements the RabbitSetup interface.