This is an early alpha discord library which will be the future core of the Klasa Bot framework. This implements a high-level stateful interface over @klasa/rest and @klasa/ws. You are bound to come across missing or broken code/types using this alpha library. (I even found some unintended types while writing this!) Please make issues and pull requests to further the development.
Simple ping client in typescript
import{Client,ClientEvents,Message}from'@klasa/core';import*asconfigfrom'./config.json';constclient=newClient().on(ClientEvents.MessageCreate,async(message: Message): Promise<void>=>{if(message.author.bot)return;if(message.content.toLowerCase().startsWith('ping')){const[response]=awaitmessage.channel.send(mb=>mb.setContent('ping?'));awaitresponse.edit(mb=>mb.setContent(`Pong! Took: ${response.createdTimestamp-message.createdTimestamp}ms`));}});client.token=config.token;client.connect();Simple ping client in javascript
const{ Client }=require('@klasa/core');const{ token }=require('./config.json');constclient=newClient().on('messageCreate',async(message)=>{if(message.author.bot)return;if(message.content.toLowerCase().startsWith('ping')){const[response]=awaitmessage.channel.send(mb=>mb.setContent('ping?'));returnresponse.edit(mb=>mb.setContent(`Pong! Took: ${response.createdTimestamp-message.createdTimestamp}ms`));}});client.token=token;client.connect();