services:
    _defaults:
        autowire: true
        autoconfigure: true
        public: false
    
    Webkul\UVDesk\MailboxBundle\:
        resource: '../../*'
        exclude: '../../{DependencyInjection,Entity,Package,Templates,Migrations,Tests}'
    
    Webkul\UVDesk\MailboxBundle\Controller\:
        resource: '../../Controller/*'
        tags: ['controller.service_arguments']
    
    Webkul\UVDesk\MailboxBundle\Console\:
        resource: '../../Console/*'
        exclude: '../../Console/{UTF8Symbol.php,ANSIEscapeSequence.php}'
    
    Webkul\UVDesk\MailboxBundle\EventListener\Mailer:
        tags:
            - { name: uvdesk.event_listener, event: mailer.configuration.updated, method: onMailerConfigurationUpdated }
            - { name: uvdesk.event_listener, event: mailer.configuration.removed, method: onMailerConfigurationRemoved }
    
    # Public aliases
    uvdesk.mailbox:
        public: true
        class: Webkul\UVDesk\MailboxBundle\Services\MailboxService
