import type { DiscordActionRow, MessageComponentTypes } from "../../../../discordeno/mod.ts"; import type { ComponentBuilder } from "../../../Util.ts"; export class ActionRowBuilder { constructor() { this.components = [] as T[]; this.type = 1; } components: T[]; type: MessageComponentTypes.ActionRow; addComponents(...components: T[]): ActionRowBuilder { this.components.push(...components); return this; } setComponents(...components: T[]): ActionRowBuilder { this.components.splice( 0, this.components.length, ...components, ); return this; } toJSON(): DiscordActionRow { return { type: this.type, components: this.components.map((c) => c.toJSON()) as DiscordActionRow["components"], }; } }