use super::*;
use crate::api::{chat::*, profile::GetProfileRequest};
pub use crate::api::chat::{action_payload, ActionPayload, EventSource};
#[into_request("GetMessageRequest", "DeleteMessageRequest")]
#[derive(new, Debug, Clone, Copy, PartialEq, Eq)]
pub struct MessageLocation {
guild_id: u64,
channel_id: u64,
message_id: u64,
}
#[into_request(
"DeleteGuildRequest",
"LeaveGuildRequest",
"GetGuildRequest",
"GetGuildInvitesRequest",
"GetGuildChannelsRequest",
"GetGuildRolesRequest",
"GetGuildMembersRequest"
)]
#[derive(new, Debug, Clone, Copy, PartialEq, Eq, Into, From)]
pub struct GuildId {
guild_id: u64,
}
#[into_request("GetProfileRequest")]
#[derive(new, Debug, Clone, Copy, PartialEq, Eq, Into, From)]
pub struct UserId {
user_id: u64,
}
pub mod channel;
pub mod guild;
pub mod invite;
pub mod message;
pub mod permissions;
#[into_request("TriggerActionRequest")]
#[derive(Debug, Clone, new)]
pub struct TriggerAction {
guild_id: u64,
channel_id: u64,
message_id: u64,
payload: ActionPayload,
}
#[into_request("TypingRequest")]
#[derive(Debug, Clone, Copy, new)]
pub struct Typing {
guild_id: u64,
channel_id: u64,
}