Search...

ActionRowBuilder

export declare class ActionRowBuilder<T extends AnyComponentBuilder> extends ComponentBuilder<APIActionRowComponent<APIMessageActionRowComponent | APIModalActionRowComponent>> 
export declare class ActionRowBuilder<T extends AnyComponentBuilder> extends ComponentBuilder<APIActionRowComponent<APIMessageActionRowComponent | APIModalActionRowComponent>> 
A builder that creates API-compatible JSON data for action rows.

Extends

ComponentBuilder<APIActionRowComponent<APIMessageActionRowComponent | APIModalActionRowComponent>>
NameConstraintsOptionalDefaultDescription
TAnyComponentBuilderNoThe types of components this action row holds

constructor({ components, ...data }?)

Creates a new action row from API data.
Example
Creating an action row from an API data object:
const actionRow = new ActionRowBuilder({
	components: [
		{
			custom_id: "custom id",
			label: "Type something",
			style: TextInputStyle.Short,
			type: ComponentType.TextInput,
		},
	],
});
const actionRow = new ActionRowBuilder({
	components: [
		{
			custom_id: "custom id",
			label: "Type something",
			style: TextInputStyle.Short,
			type: ComponentType.TextInput,
		},
	],
});
Example
Creating an action row using setters and API data:
const actionRow = new ActionRowBuilder({
	components: [
		{
			custom_id: "custom id",
			label: "Click me",
			style: ButtonStyle.Primary,
			type: ComponentType.Button,
		},
	],
})
	.addComponents(button2, button3);
const actionRow = new ActionRowBuilder({
	components: [
		{
			custom_id: "custom id",
			label: "Click me",
			style: ButtonStyle.Primary,
			type: ComponentType.Button,
		},
	],
})
	.addComponents(button2, button3);
NameTypeOptionalDescription
{ components, ...data }Partial<APIActionRowComponent<APIActionRowComponentTypes>>YesNone
Readonly

components

:

T[]

The components within this action row.
Readonly

data

:

Partial<DataType>

The API data associated with this component.
Inherited from ComponentBuilder

addComponents(components)

:

this

Adds components to this action row.
NameTypeOptionalDescription
componentsRestOrArray<T>NoThe components to add

setComponents(components)

:

this

Sets components for this action row.
NameTypeOptionalDescription
componentsRestOrArray<T>NoThe components to set

toJSON()

:

APIActionRowComponent<ReturnType<T['toJSON']>>

Serializes this builder to API-compatible JSON data.
Remarks
This method runs validations on the data before serializing it. As such, it may throw an error if the data is invalid.