         subtitleLabel.text = notification.content.subtitle
         subtitleLabel.font = notification.style.subtitleFont
         subtitleLabel.textColor = notification.style.subtitleTextColor
+        
+        imageView.image = notification.content.image
+        imageView.isHidden = notification.content.image == nil
+        
+        let chevronImageWidth = chevronImageView.image?.size.width ?? 0
+        containerStackView.spacing = imageView.isHidden ? -chevronImageWidth : containerStackViewDefaultSpacing
         
         backgroundColor = notification.style.backgroundColor
         

            containerStackView.leftAnchor.constraint(equalTo: layoutMarginsGuide.leftAnchor, constant: 18),
            containerStackView.rightAnchor.constraint(equalTo: layoutMarginsGuide.rightAnchor, constant: -18),
            containerStackView.topAnchor.constraint(equalTo: layoutMarginsGuide.topAnchor, constant: 4),
            containerStackView.bottomAnchor.constraint(equalTo: layoutMarginsGuide.bottomAnchor, constant: 0)
        ]
        
        NSLayoutConstraint.activate(constraints)
    }
    

    internal let translationDismissLimit: CGFloat = -15
    
    // MARK: UI Elements
    /// Saved to use for resetting the spacing after an image is shown or hidden.
    private let containerStackViewDefaultSpacing: CGFloat = 14
    
    lazy private var containerStackView: UIStackView = {
        let stackView = UIStackView(arrangedSubviews: [self.imageView, self.titlesStackView, self.chevronImageView])
        stackView.axis = .horizontal
        stackView.spacing = self.containerStackViewDefaultSpacing
        stackView.translatesAutoresizingMaskIntoConstraints = false
        stackView.alignment = .center
        return stackView
