package broker

type ConsumeFn func(string, []byte) error

// MessageBroker interface of message broker, memory & rabbitmq
type MessageBroker interface {
	Start()
	Stop()
	Publish(topicName, id string, body MessageBrokerBody) error
	Subscribe(topicName, queueName string, fn ConsumeFn)
}

type MessageBrokerConfig struct {
	IsDevelopment bool

	Uri          string
	ExchangeName string
}
