ContainerBuilder

export declare class ContainerBuilder extends ComponentBuilder<APIContainerComponent>
export declare class ContainerBuilder extends ComponentBuilder<APIContainerComponent>
A builder that creates API-compatible JSON data for a container.
constructor(data?)
Creates a new container from API data.
Example
Creating a container from an API data object:
const container = new ContainerBuilder({
components: [
{
content: "Some text here",
type: ComponentType.TextDisplay,
},
],
});
const container = new ContainerBuilder({
components: [
{
content: "Some text here",
type: ComponentType.TextDisplay,
},
],
});
Example
Creating a container using setters and API data:
const container = new ContainerBuilder({
components: [
{
content: "# Heading",
type: ComponentType.TextDisplay,
},
],
})
.addComponents(separator, section);
const container = new ContainerBuilder({
components: [
{
content: "# Heading",
type: ComponentType.TextDisplay,
},
],
})
.addComponents(separator, section);
NameTypeOptionalDescription
dataPartial<APIContainerComponent>YesThe API data to create this container with
Readonly
The components within this container.
The API data associated with this component.
Inherited from ComponentBuilder
addActionRowComponents(...components):this
Adds action row components to this container.
NameConstraintsOptionalDefaultDescription
ComponentTypeMessageActionRowComponentBuilderNoNone
NameTypeOptionalDescription
...componentsRestOrArray<ActionRowBuilder<ComponentType> | APIActionRowComponent<APIComponentInMessageActionRow> | ((builder: ActionRowBuilder<ComponentType>) => ActionRowBuilder<ComponentType>)>NoThe action row components to add
addFileComponents(...components):this
Adds file components to this container.
NameTypeOptionalDescription
...componentsRestOrArray<APIFileComponent | FileBuilder | ((builder: FileBuilder) => FileBuilder)>NoThe file components to add
addMediaGalleryComponents(...components):this
Adds media gallery components to this container.
NameTypeOptionalDescription
...componentsRestOrArray<APIMediaGalleryComponent | MediaGalleryBuilder | ((builder: MediaGalleryBuilder) => MediaGalleryBuilder)>NoThe media gallery components to add
addSectionComponents(...components):this
Adds section components to this container.
NameTypeOptionalDescription
...componentsRestOrArray<APISectionComponent | SectionBuilder | ((builder: SectionBuilder) => SectionBuilder)>NoThe section components to add
addSeparatorComponents(...components):this
Adds separator components to this container.
NameTypeOptionalDescription
...componentsRestOrArray<APISeparatorComponent | SeparatorBuilder | ((builder: SeparatorBuilder) => SeparatorBuilder)>NoThe separator components to add
addTextDisplayComponents(...components):this
Adds text display components to this container.
NameTypeOptionalDescription
...componentsRestOrArray<APITextDisplayComponent | TextDisplayBuilder | ((builder: TextDisplayBuilder) => TextDisplayBuilder)>NoThe text display components to add
clearAccentColor():this
Clears the accent color of this container.
clearId():this
Clears the id of this component, defaulting to a default incremented id.
Inherited from ComponentBuilder
setAccentColor(color?):this
Sets the accent color of this container.
NameTypeOptionalDescription
colorRGBTuple | numberYesThe color to use
setId(id):this
Sets the id (not the custom id) for this component.
NameTypeOptionalDescription
idnumberNoThe id for this component
Inherited from ComponentBuilder
setSpoiler(spoiler?):this
Sets the spoiler status of this container.
NameTypeOptionalDescription
spoilerbooleanYesThe spoiler status to use
spliceComponents(index, deleteCount, ...components):this
Removes, replaces, or inserts components for this container.
NameTypeOptionalDescription
indexnumberNoThe index to start removing, replacing or inserting components
deleteCountnumberNoThe amount of components to remove
...componentsRestOrArray<APIComponentInContainer | ContainerComponentBuilder>NoThe components to set
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.