import type * as Pinnacle from "../index.js"; /** * Content of an incoming or outgoing message. Discriminated by the `type` field. */ export type MessageEventContent = /** * SMS message containing plain text only. Has type `SMS`. */ Pinnacle.MessageEventContent.Sms /** * MMS message with text and/or media files from a phone number. Has type `MMS`. */ | Pinnacle.MessageEventContent.Mms /** * RCS message containing longer text content with optional quick reply buttons. Has type `RCS_TEXT`. */ | Pinnacle.MessageEventContent.RcsText /** * RCS message containing media file with optional quick reply buttons. Has type `RCS_MEDIA`. */ | Pinnacle.MessageEventContent.RcsMedia /** * RCS message containing cards with titles, subtitles, and buttons. Has type `RCS_CARDS`. */ | Pinnacle.MessageEventContent.RcsCards /** * RCS button click data. Sent when user clicks any button. Has type `RCS_BUTTON_DATA`. */ | Pinnacle.MessageEventContent.RcsButtonData /** * RCS location sharing data. Sent when user shares their location via a `requestUserLocation` button. Has type `RCS_LOCATION_DATA`. */ | Pinnacle.MessageEventContent.RcsLocationData; export declare namespace MessageEventContent { interface Sms extends Pinnacle.MessageEventSmsContent { type: "SMS"; } interface Mms extends Pinnacle.MessageEventMmsContent { type: "MMS"; } interface RcsText extends Pinnacle.MessageEventRcsTextContent { type: "RCS_TEXT"; } interface RcsMedia extends Pinnacle.MessageEventRcsMediaContent { type: "RCS_MEDIA"; } interface RcsCards extends Pinnacle.MessageEventRcsCardsContent { type: "RCS_CARDS"; } interface RcsButtonData extends Pinnacle.MessageEventRcsButtonData { type: "RCS_BUTTON_DATA"; } interface RcsLocationData extends Pinnacle.MessageEventRcsLocationData { type: "RCS_LOCATION_DATA"; } }