RichBlock
extends Part
in package
This file is generated from spec/openapi.json (Bot API 10.3) by tools/generate.php.
Do not edit it by hand - run composer spec:build instead.
This object represents a block in a rich formatted message. Currently, it can be any of the following types:
- RichBlockParagraph
- RichBlockSectionHeading
- RichBlockPreformatted
- RichBlockFooter
- RichBlockDivider
- RichBlockMathematicalExpression
- RichBlockAnchor
- RichBlockList
- RichBlockBlockQuotation
- RichBlockExpandableBlockQuotation
- RichBlockPullQuotation
- RichBlockCollage
- RichBlockSlideshow
- RichBlockTable
- RichBlockDetails
- RichBlockMap
- RichBlockButtons
- RichBlockAnimation
- RichBlockAudio
- RichBlockDocument
- RichBlockPhoto
- RichBlockVideo
- RichBlockVoiceNote
- RichBlockThinking
One of: RichBlockParagraph, RichBlockSectionHeading, RichBlockPreformatted, RichBlockFooter, RichBlockDivider, RichBlockMathematicalExpression, RichBlockAnchor, RichBlockList, RichBlockBlockQuotation, RichBlockExpandableBlockQuotation, RichBlockPullQuotation, RichBlockCollage, RichBlockSlideshow, RichBlockTable, RichBlockDetails, RichBlockMap, RichBlockButtons, RichBlockAnimation, RichBlockAudio, RichBlockDocument, RichBlockPhoto, RichBlockVideo, RichBlockVoiceNote, RichBlockThinking.
Tags
Table of Contents
Constants
- DISCRIMINATOR : mixed = 'type'
- The attribute whose value names the concrete subtype.
- SUBTYPES : array<string, Part>>|array<int, Part>> = ['paragraph' => \Telegram\Parts\RichBlockParagr...
- The concrete classes a union parent may resolve to - keyed by discriminator value when there is one, a plain list otherwise. Empty on ordinary parts.
Properties
- $casts : array<string, string>
- Attribute name => Telegram type token ("User", "Array of PhotoSize"), used to hydrate nested objects into parts.
- $dates : array<int, string>
- Attribute names holding Unix timestamps, read back as {@see CarbonImmutable}.
- $fillable : array<int, string>
- Attribute names this part accepts. Empty = accept anything.
- $telegram : Telegram
Methods
- __construct() : mixed
- __debugInfo() : array<string, mixed>
- __get() : mixed
- __isset() : bool
- __set() : void
- __toString() : string
- attributeExists() : bool
- fill() : void
- getAttribute() : mixed
- getCasts() : array<string, string>
- getFillable() : array<int, string>
- getRawAttributes() : array<string, mixed>
- getTelegram() : Telegram
- jsonSerialize() : array<string, mixed>
- The payload this part would be sent back to Telegram as - nested parts and collections flattened, timestamps left as the integers they arrived as.
- offsetExists() : bool
- offsetGet() : mixed
- offsetSet() : void
- offsetUnset() : void
- resolveSubtype() : Part>
- The concrete class an incoming payload belongs to, for a union parent.
- setAttribute() : void
- factory() : Factory
- Builds another part from the same client - for nested objects.
- getRawAttribute() : mixed
- Reads straight from the attribute bag, skipping the `get{Key}Attribute` hook.
- setRawAttribute() : void
- Writes straight to the attribute bag, skipping the `set{Key}Attribute` hook and any cast. For use *inside* a mutator, which would otherwise have no way to store its shaped value without recursing through {@see setAttribute()}.
Constants
DISCRIMINATOR
The attribute whose value names the concrete subtype.
public
mixed
DISCRIMINATOR
= 'type'
SUBTYPES
The concrete classes a union parent may resolve to - keyed by discriminator value when there is one, a plain list otherwise. Empty on ordinary parts.
public
array<string, Part>>|array<int, Part>>
SUBTYPES
= ['paragraph' => \Telegram\Parts\RichBlockParagraph::class, 'heading' => \Telegram\Parts\RichBlockSectionHeading::class, 'pre' => \Telegram\Parts\RichBlockPreformatted::class, 'footer' => \Telegram\Parts\RichBlockFooter::class, 'divider' => \Telegram\Parts\RichBlockDivider::class, 'mathematical_expression' => \Telegram\Parts\RichBlockMathematicalExpression::class, 'anchor' => \Telegram\Parts\RichBlockAnchor::class, 'list' => \Telegram\Parts\RichBlockList::class, 'blockquote' => \Telegram\Parts\RichBlockBlockQuotation::class, 'expandable_blockquote' => \Telegram\Parts\RichBlockExpandableBlockQuotation::class, 'pullquote' => \Telegram\Parts\RichBlockPullQuotation::class, 'collage' => \Telegram\Parts\RichBlockCollage::class, 'slideshow' => \Telegram\Parts\RichBlockSlideshow::class, 'table' => \Telegram\Parts\RichBlockTable::class, 'details' => \Telegram\Parts\RichBlockDetails::class, 'map' => \Telegram\Parts\RichBlockMap::class, 'buttons' => \Telegram\Parts\RichBlockButtons::class, 'animation' => \Telegram\Parts\RichBlockAnimation::class, 'audio' => \Telegram\Parts\RichBlockAudio::class, 'document' => \Telegram\Parts\RichBlockDocument::class, 'photo' => \Telegram\Parts\RichBlockPhoto::class, 'video' => \Telegram\Parts\RichBlockVideo::class, 'voice_note' => \Telegram\Parts\RichBlockVoiceNote::class, 'thinking' => \Telegram\Parts\RichBlockThinking::class]
Properties
$casts
Attribute name => Telegram type token ("User", "Array of PhotoSize"), used to hydrate nested objects into parts.
protected
array<string, string>
$casts
= []
$dates
Attribute names holding Unix timestamps, read back as {@see CarbonImmutable}.
protected
array<int, string>
$dates
= []
$fillable
Attribute names this part accepts. Empty = accept anything.
protected
array<int, string>
$fillable
= []
$telegram read-only
protected
Telegram
$telegram
Methods
__construct()
public
__construct(Telegram $telegram[, array<string, mixed>|object $attributes = [] ]) : mixed
Parameters
- $telegram : Telegram
- $attributes : array<string, mixed>|object = []
__debugInfo()
public
__debugInfo() : array<string, mixed>
Return values
array<string, mixed>__get()
public
__get(string $name) : mixed
Parameters
- $name : string
__isset()
public
__isset(string $name) : bool
Parameters
- $name : string
Return values
bool__set()
public
__set(string $name, mixed $value) : void
Parameters
- $name : string
- $value : mixed
__toString()
public
__toString() : string
Return values
stringattributeExists()
public
attributeExists(string $key) : bool
Parameters
- $key : string
Return values
boolfill()
public
fill(array<string, mixed> $attributes) : void
Parameters
- $attributes : array<string, mixed>
getAttribute()
public
getAttribute(string $key) : mixed
Parameters
- $key : string
getCasts()
public
getCasts() : array<string, string>
Return values
array<string, string>getFillable()
public
getFillable() : array<int, string>
Return values
array<int, string>getRawAttributes()
public
getRawAttributes() : array<string, mixed>
Return values
array<string, mixed>getTelegram()
public
getTelegram() : Telegram
Return values
TelegramjsonSerialize()
The payload this part would be sent back to Telegram as - nested parts and collections flattened, timestamps left as the integers they arrived as.
public
jsonSerialize() : array<string, mixed>
Return values
array<string, mixed>offsetExists()
public
offsetExists(mixed $offset) : bool
Parameters
- $offset : mixed
Return values
booloffsetGet()
public
offsetGet(mixed $offset) : mixed
Parameters
- $offset : mixed
offsetSet()
public
offsetSet(mixed $offset, mixed $value) : void
Parameters
- $offset : mixed
- $value : mixed
offsetUnset()
public
offsetUnset(mixed $offset) : void
Parameters
- $offset : mixed
resolveSubtype()
The concrete class an incoming payload belongs to, for a union parent.
public
static resolveSubtype(array<string, mixed> $attributes) : Part>
Tagged unions resolve on their discriminator. The handful Telegram leaves
untagged (InputMessageContent, and the rest), and any payload whose tag
this build does not recognise - a member added to the Bot API since it was
generated - resolve instead to the subtype whose attributes the payload
matches most closely.
Parameters
- $attributes : array<string, mixed>
Tags
Return values
Part>setAttribute()
public
setAttribute(string $key, mixed $value) : void
Parameters
- $key : string
- $value : mixed
factory()
Builds another part from the same client - for nested objects.
protected
factory() : Factory
Return values
FactorygetRawAttribute()
Reads straight from the attribute bag, skipping the `get{Key}Attribute` hook.
protected
getRawAttribute(string $key) : mixed
Parameters
- $key : string
setRawAttribute()
Writes straight to the attribute bag, skipping the `set{Key}Attribute` hook and any cast. For use *inside* a mutator, which would otherwise have no way to store its shaped value without recursing through {@see setAttribute()}.
protected
setRawAttribute(string $key, mixed $value) : void
Parameters
- $key : string
- $value : mixed