23 lines
525 B
Rust
23 lines
525 B
Rust
use serde::{Deserialize, Serialize};
|
|
use ts_rs::TS;
|
|
|
|
use crate::types::Id;
|
|
use magnetar_sdk_macros::pack;
|
|
|
|
#[derive(Clone, Debug, Deserialize, Serialize, TS)]
|
|
#[ts(export)]
|
|
pub struct EmojiBase {
|
|
pub shortcode: String,
|
|
pub url: String,
|
|
pub static_url: String,
|
|
pub visible_in_picker: bool,
|
|
pub category: Option<String>,
|
|
}
|
|
|
|
pack!(PackEmojiBase, Id as id & EmojiBase as emoji);
|
|
|
|
#[derive(Clone, Debug, Deserialize, Serialize, TS)]
|
|
#[ts(export)]
|
|
#[repr(transparent)]
|
|
pub struct EmojiContext(pub Vec<String>);
|