UNPKG

seyfert

Version:

The most advanced framework for discord bots

74 lines (73 loc) 3.14 kB
import { type RestOrArray } from '../common'; import { type APICheckboxGroupComponent, type APICheckboxGroupOption } from '../types'; import { BaseComponentBuilder, type OptionValuesLength } from './Base'; export declare class CheckboxGroup extends BaseComponentBuilder<APICheckboxGroupComponent> { #private; constructor(data?: Partial<APICheckboxGroupComponent>); /** * Sets the ID for the checkbox group. * @param id - The ID for the checkbox group. * @return The current CheckboxGroup instance. * @remarks The ID is used by Discord to identify the component when an interaction is received. It must be unique within the message. */ setId(id: number): this; /** * Sets the custom ID for the checkbox group. * @param customId - The custom ID for the checkbox group. * @returns The current CheckboxGroup instance. */ setCustomId(customId: string): this; /** * Sets the maximum and minimum number of selected values for the checkbox group. * [max = options length] 10, [min = 1] 0 * @param options - The maximum and minimum values. * @returns The current CheckboxGroup instance. */ setSelectionLimit({ max, min }: Partial<OptionValuesLength>): this; /** * Sets whether the checkbox group is required. * @param required - Whether the checkbox group is required (true by discord side). * @returns The current CheckboxGroup instance. */ setRequired(required: boolean): this; setOptions(...options: RestOrArray<CheckboxGroupOption>): this; addOptions(...options: RestOrArray<CheckboxGroupOption>): this; toJSON(): APICheckboxGroupComponent; } export declare class CheckboxGroupOption { data: APICheckboxGroupOption; constructor(data: APICheckboxGroupOption); /** * Sets the value of the checkbox group option. * @param value - The value of the checkbox group option. * @return The current CheckboxGroupOption instance. * @remarks The value is sent to the bot when the option is selected. It must be unique within the options of the checkbox group. * The value can be up to 100 characters long. */ setValue(value: string): this; /** * Sets the label of the checkbox group option. * @param label - The label of the checkbox group option. * @return The current CheckboxGroupOption instance. * @remarks The label is displayed to the user. It can be up to 100 characters long. */ setLabel(label: string): this; /** * Sets the description of the checkbox group option. * @param description - The description of the checkbox group option. * @return The current CheckboxGroupOption instance. */ setDescription(description: string): this; /** * Sets whether the checkbox group option is default. * @param value - Whether the checkbox group option is default. * @return The current CheckboxGroupOption instance. */ setDefault(value: boolean): this; toJSON(): { value: string; label: string; description?: string; default?: boolean; }; }