use crate::types::*;
/// Use this method to send information about a venue. On success, the sent Message is returned.
#[derive(Debug, Serialize, TelegramApi, Setters, New)]
#[return_type = "Message"]
#[new(vis = "pub")]
#[set(vis = "pub")]
pub struct SendVenue {
/// Unique identifier for the target chat or username of the target channel (in the format @channelusername)
pub(crate) chat_id: ChatIdOrUsername,
/// Latitude of the venue
pub(crate) latitude: Float,
/// Longitude of the venue
pub(crate) longitude: Float,
/// Name of the venue
pub(crate) title: String,
/// Address of the venue
pub(crate) address: String,
/// Foursquare identifier of the venue
#[serde(skip_serializing_if = "Option::is_none")]
pub(crate) foursquare_id: Option<String>,
/// Foursquare type of the venue, if known. (For example, “arts_entertainment/default”, “arts_entertainment/aquarium” or “food/icecream”.)
#[serde(skip_serializing_if = "Option::is_none")]
pub(crate) foursquare_type: Option<String>,
/// Sends the message silently. Users will receive a notification with no sound.
#[serde(skip_serializing_if = "Option::is_none")]
pub(crate) disable_notification: Option<bool>,
/// If the message is a reply, ID of the original message
#[serde(skip_serializing_if = "Option::is_none")]
pub(crate) reply_to_message_id: Option<Integer>,
/// Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.
#[serde(skip_serializing_if = "Option::is_none")]
pub(crate) reply_markup: Option<ReplyMarkup>,
}