KeyboardButton class abstract

This object represents one button of the reply keyboard. For simple text buttons String can be used instead of this object to specify text of the button. Optional fields web_app, request_contact, request_location, and request_poll are mutually exclusive.

Available extensions
Annotations
  • @freezed

Constructors

KeyboardButton({@JsonKey.new(name: 'text') required String text, @JsonKey.new(name: 'request_contact') bool? requestContact, @JsonKey.new(name: 'request_location') bool? requestLocation, @JsonKey.new(name: 'request_poll') KeyboardButtonPollType? requestPoll, @JsonKey.new(name: 'web_app') WebAppInfo? webApp, @JsonKey.new(name: 'request_user') KeyboardButtonRequestUsers? requestUsers, @JsonKey.new(name: 'request_chat') KeyboardButtonRequestChat? requestChat, @JsonKey.new(name: 'icon_custom_emoji_id') String? iconCustomEmojiId, @JsonKey.new(name: 'style') StyleType? style})
Creates a new KeyboardButton with the specified text.
const
factory
KeyboardButton.fromJson(Map<String, dynamic> json)
Creates a KeyboardButton from a JSON map
factory

Properties

copyWith → $KeyboardButtonCopyWith<KeyboardButton>
Create a copy of KeyboardButton with the given fields replaced by the non-null parameter values.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
iconCustomEmojiId String?
Optional. Unique identifier of the custom emoji shown before the text of the button. Can only be used by bots that purchased additional usernames on Fragment or in the messages directly sent by the bot to private, group and supergroup chats if the owner of the bot has a Telegram Premium subscription.
no setterinherited
requestChat KeyboardButtonRequestChat?
Optional. If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a "chat_shared" service message. Available in private chats only.
no setterinherited
requestContact bool?
Optional. If True, the user's phone number will be sent as a contact when the button is pressed. Available in private chats only
no setterinherited
requestLocation bool?
Optional. If True, the user's current location will be sent when the button is pressed. Available in private chats only.
no setterinherited
requestPoll KeyboardButtonPollType?
Optional. If specified, the user will be asked to create a poll and send it to the bot when the button is pressed. Available in private chats only.
no setterinherited
requestUsers KeyboardButtonRequestUsers?
Optional. If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a "user_shared" service message. Available in private chats only.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
style StyleType?
Optional. Style of the button. Must be one of “danger” (red), “success” (green) or “primary” (blue). If omitted, then an app-specific style is used.
no setterinherited
text String
Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed
no setterinherited
webApp WebAppInfo?
Optional. If specified, the described Web App will be launched when the button is pressed. The Web App will be able to send a "web_app_data" service message. Available in private chats only.
no setterinherited

Methods

map<TResult extends Object?>(TResult $default(_KeyboardButton value)) → TResult

Available on KeyboardButton, provided by the KeyboardButtonPatterns extension

A switch-like method, using callbacks.
mapOrNull<TResult extends Object?>(TResult? $default(_KeyboardButton value)?) → TResult?

Available on KeyboardButton, provided by the KeyboardButtonPatterns extension

A variant of map that fallback to returning null.
maybeMap<TResult extends Object?>(TResult $default(_KeyboardButton value)?, {required TResult orElse()}) → TResult

Available on KeyboardButton, provided by the KeyboardButtonPatterns extension

A variant of map that fallback to returning orElse.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() Map<String, dynamic>
Serializes this KeyboardButton to a JSON map.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited