use std::sync::Arc; use tokio::sync::{Mutex, RwLock}; use std::collections::HashMap; use poise::{serenity_prelude::UserId, ReplyHandle}; use sqlx::{Pool, Postgres}; pub struct Data { pub database: Pool, pub mentions: Arc>>, /// last time the user redeemed a daily pub dailies: Arc>>, } pub type Error = Box; pub type Context<'a> = poise::Context<'a, Data, Error>; use poise::serenity_prelude::builder::CreateAllowedMentions; use poise::CreateReply; pub async fn no_ping_reply<'a>(ctx: &'a Context<'_>, text: impl Into) -> Result, Error> { Ok(ctx.send( CreateReply::default() .content(text.into()) .reply(true) .allowed_mentions(CreateAllowedMentions::new()) ).await?) }