Check out the official documentation for this plugin.
A menu is a set of interactive buttons that is displayed beneath a message. It uses an inline keyboard for that, so in a sense, a menu is just an inline keyboard spiced up with interactivity (such as navigation between multiple pages).
Here is a small example.
// Creating a simple menu
const menu = new Menu("my-menu-identifier")
.text("A", (ctx) => ctx.reply("You pressed A!")).row()
.text("B", (ctx) => ctx.reply("You pressed B!"));
// Make it interactive
bot.use(menu);
bot.command("start", async (ctx) => {
// Send the menu:
await ctx.reply("Check out this menu:", { reply_markup: menu });
});
You can find more examples and documentation on the plugin page on the website.