Как отправить embed с button?

Для отправки embed с кнопкой в TypeScript вам потребуется использовать Discord.js, библиотеку для создания ботов Discord. Ниже приведен пример кода, который демонстрирует, как отправлять embed с кнопкой на Discord.

import { Client, MessageButton, MessageActionRow } from 'discord.js';

const client = new Client();

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}`);
});

client.on('messageCreate', async (message) => {
  if (message.content === '!embed') {
    const button = new MessageButton()
      .setCustomId('button_click')
      .setLabel('Click Me!')
      .setStyle('SUCCESS');

    const row = new MessageActionRow().addComponents(button);

    const embed = {
      title: 'Embed with Button',
      description: 'This is an example of an embed with a button.',
      color: 'RANDOM',
    };

    // Отправляем сообщение с embed и кнопкой
    message.channel.send({ embeds: [embed], components: [row] });
  }
});

client.login('YOUR_BOT_TOKEN');

Давайте разберем код по частям. Сначала мы импортируем необходимые классы из пакета discord.js, включая Client для создания бота, MessageButton для создания кнопки и MessageActionRow для упорядочивания компонентов на сообщении.

Затем мы создаем экземпляр Client и подключаемся к Discord с помощью функции login, передавая токен вашего бота.

Затем мы регистрируем слушатель события messageCreate, который будет вызываться при получении нового сообщения. Мы проверяем, является ли содержимое сообщения равным !embed и, если да, создаем кнопку с помощью MessageButton. Мы задаем ей уникальный идентификатор, метку (текст на кнопке) и стиль (цвет кнопки). Затем мы создаем MessageActionRow и добавляем в нее кнопку.

Затем мы создаем объект embed, указывая заголовок, описание и цвет, который будет отображаться во встроенном сообщении.

Наконец, мы отправляем сообщение в канал с помощью метода send и передаем объект с встроенным сообщением (embeds) и компонентами (components), которые включают в себя нашу строку с кнопкой.

Надеюсь, этот ответ помог вам понять, как отправлять встроенные сообщения с кнопками при использовании TypeScript и Discord.js.