twilight_model/gateway/payload/incoming/
rate_limited.rs

1use crate::{
2    gateway::OpCode,
3    id::{Id, marker::GuildMarker},
4};
5use serde::{Deserialize, Serialize};
6
7#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
8pub struct RateLimited {
9    pub opcode: OpCode,
10    pub retry_after: f32,
11    pub meta: RateLimitMetadata,
12}
13
14#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]
15#[non_exhaustive]
16pub enum RateLimitMetadata {
17    RequestGuildMembers {
18        guild_id: Id<GuildMarker>,
19        #[serde(skip_serializing_if = "Option::is_none")]
20        nonce: Option<String>,
21    },
22}