import type { Snowflake } from "../util/Snowflake.ts"; import type { Session } from "../session/Session.ts"; import type { DiscordChannel } from "../vendor/external.ts"; import { GuildChannel } from "./GuildChannel.ts"; export class ThreadChannel extends GuildChannel { constructor(session: Session, data: DiscordChannel, guildId: Snowflake) { super(session, data, guildId); this.archived = !!data.thread_metadata?.archived; this.archiveTimestamp = data.thread_metadata?.archive_timestamp; this.autoArchiveDuration = data.thread_metadata?.auto_archive_duration; this.locked = !!data.thread_metadata?.locked; this.messageCount = data.message_count; this.memberCount = data.member_count; this.ownerId = data.owner_id; } archived?: boolean; archiveTimestamp?: string; autoArchiveDuration?: number; locked?: boolean; messageCount?: number; memberCount?: number; ownerId?: Snowflake; } export default ThreadChannel;