/**
 * Webhook Type Definition
 * Webhook event definition of the LINE Messaging API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

import { Emoji } from "./emoji.js";
import { Mention } from "./mention.js";
import { MessageContent } from "./messageContent.js";

import { MessageContentBase } from "./models.js";

/**
 * @see <a href="https://developers.line.biz/en/reference/messaging-api/#wh-text">https://developers.line.biz/en/reference/messaging-api/#wh-text</a>
 */
export type TextMessageContent = MessageContentBase & {
  type: "text";

  /**
   * Message text.
   */
  text: string;
  /**
   * Array of one or more LINE emoji objects. Only included in the message event when the text property contains a LINE emoji.
   */
  emojis?: Array<Emoji>;
  mention?: Mention;
  /**
   * Quote token to quote this message.
   */
  quoteToken: string;
  /**
   * Message ID of a quoted message. Only included when the received message quotes a past message.
   */
  quotedMessageId?: string;
  /**
   * Token used to mark the message as read.
   */
  markAsReadToken?: string;
};
