import { type BlockTypeValue, type ElementInterface, type StyleValue } from './types.js'; import type { Text, Option, Confirmation } from './composition.js'; /** * Button element. */ export declare class Button implements ElementInterface { readonly type: "button"; actionId: string; text: Text; url?: string; value?: string; style?: StyleValue; confirm?: Confirmation; constructor(actionId: string, text: Text); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Checkbox group element. */ export declare class Checkbox implements ElementInterface { readonly type: "checkboxes"; actionId: string; options: Option[]; initialOptions?: Option[]; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Date picker element. */ export declare class DatePicker implements ElementInterface { readonly type: "datepicker"; actionId: string; placeholder?: Text; initialDate?: string; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Image element (not a block — used within Section/Context). */ export declare class ImageElement implements ElementInterface { readonly type: "image"; imageUrl: string; altText: string; constructor(imageUrl: string, altText: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Plain text input element. */ export declare class PlainTextInput implements ElementInterface { readonly type: "plain_text_input"; actionId: string; placeholder?: Text; initialValue?: string; multiline: boolean; minLength?: number; maxLength?: number; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Multi-select menu element. */ export declare class MultiSelect implements ElementInterface { readonly type: "multi_static_select"; actionId: string; options: Option[]; initialOptions?: Option[]; placeholder?: Text; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Overflow menu element. */ export declare class Overflow implements ElementInterface { readonly type: "overflow"; actionId: string; options: Option[]; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Radio button group element. */ export declare class RadioButton implements ElementInterface { readonly type: "radio_buttons"; actionId: string; options: Option[]; initialOption?: Option; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } /** * Select menu element. */ export declare class Select implements ElementInterface { readonly type: "static_select"; actionId: string; options: Option[]; initialOption?: Option; placeholder?: Text; confirm?: Confirmation; constructor(actionId: string); getValidBlocks(): BlockTypeValue[]; toJSON(): Record; } //# sourceMappingURL=elements.d.ts.map