package slack // ImageBlock defines data required to display an image as a block element // // More Information: https://api.slack.com/reference/messaging/blocks#image type ImageBlock struct { Type MessageBlockType `json:"type"` ImageURL string `json:"image_url"` AltText string `json:"alt_text"` BlockID string `json:"block_id,omitempty"` Title *TextBlockObject `json:"title,omitempty"` } // BlockType returns the type of the block func (s ImageBlock) BlockType() MessageBlockType { return s.Type } // NewImageBlock returns an instance of a new Image Block type func NewImageBlock(imageURL, altText, blockID string, title *TextBlockObject) *ImageBlock { return &ImageBlock{ Type: MBTImage, ImageURL: imageURL, AltText: altText, BlockID: blockID, Title: title, } }