-
-
Notifications
You must be signed in to change notification settings - Fork 99
/
threadMember.ts
25 lines (20 loc) · 1 KB
/
threadMember.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { Bot } from "../bot.ts";
import { DiscordThreadMember, DiscordThreadMemberGuildCreate } from "../types/discord.ts";
import { Optionalize } from "../types/shared.ts";
export function transformThreadMember(bot: Bot, payload: DiscordThreadMember) {
const threadMember = {
id: payload.id ? bot.transformers.snowflake(payload.id) : undefined,
userId: payload.user_id ? bot.transformers.snowflake(payload.user_id) : undefined,
joinTimestamp: Date.parse(payload.join_timestamp),
flags: payload.flags,
};
return threadMember as Optionalize<typeof threadMember>;
}
export function transformThreadMemberGuildCreate(bot: Bot, payload: DiscordThreadMemberGuildCreate) {
const threadMember = {
joinTimestamp: Date.parse(payload.join_timestamp),
};
return threadMember as Optionalize<typeof threadMember>;
}
export interface ThreadMember extends ReturnType<typeof transformThreadMember> {}
export interface ThreadMemberGuildCreate extends ReturnType<typeof transformThreadMemberGuildCreate> {}