Abstract Class: Message
@providerprotocol/ai / @providerprotocol/ai / Message
Abstract Class: Message
Section titled “Abstract Class: Message”Defined in: src/types/messages.ts:122
Abstract base class for all message types.
Provides common functionality for user, assistant, and tool result messages, including content accessors and metadata handling.
Example
Section titled “Example”// Access text content from any messageconst text = message.text;
// Access imagesconst images = message.images;Extended by
Section titled “Extended by”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new Message(
options?):Message
Defined in: src/types/messages.ts:146
Creates a new message instance.
Parameters
Section titled “Parameters”options?
Section titled “options?”Optional message ID and metadata
Returns
Section titled “Returns”Message
Properties
Section titled “Properties”
readonlyid:string
Defined in: src/types/messages.ts:124
Unique message identifier
metadata?
Section titled “metadata?”
readonlyoptionalmetadata:MessageMetadata
Defined in: src/types/messages.ts:130
Provider-specific metadata, namespaced by provider name
timestamp
Section titled “timestamp”
readonlytimestamp:Date
Defined in: src/types/messages.ts:127
Timestamp when the message was created
abstractreadonlytype:MessageType
Defined in: src/types/messages.ts:133
Message type discriminator (implemented by subclasses)
Accessors
Section titled “Accessors”Get Signature
Section titled “Get Signature”get audio():
AudioBlock[]
Defined in: src/types/messages.ts:180
All audio content blocks in this message.
Returns
Section titled “Returns”documents
Section titled “documents”Get Signature
Section titled “Get Signature”get documents():
DocumentBlock[]
Defined in: src/types/messages.ts:173
All document content blocks in this message.
Returns
Section titled “Returns”images
Section titled “images”Get Signature
Section titled “Get Signature”get images():
ImageBlock[]
Defined in: src/types/messages.ts:166
All image content blocks in this message.
Returns
Section titled “Returns”reasoning
Section titled “reasoning”Get Signature
Section titled “Get Signature”get reasoning():
ReasoningBlock[]
Defined in: src/types/messages.ts:195
All reasoning/thinking content blocks in this message. Available when using extended thinking models.
Returns
Section titled “Returns”Get Signature
Section titled “Get Signature”get text():
string
Defined in: src/types/messages.ts:156
Concatenated text content from all text blocks. Blocks are joined with double newlines.
Returns
Section titled “Returns”string
Get Signature
Section titled “Get Signature”get video():
VideoBlock[]
Defined in: src/types/messages.ts:187
All video content blocks in this message.
Returns
Section titled “Returns”Methods
Section titled “Methods”getContent()
Section titled “getContent()”
abstractprotectedgetContent():ContentBlock[]
Defined in: src/types/messages.ts:139
Returns the content blocks for this message. Implemented by subclasses to provide type-specific content.