import { ButtonBuilder, ButtonParams } from './button';
import { ChannelMultiSelectBuilder, ChannelMultiSelectParams } from './channel-multi-select';
import { ChannelSelectBuilder, ChannelSelectParams } from './channel-select';
import { CheckboxesBuilder, CheckboxesParams } from './checkboxes';
import { ConversationMultiSelectBuilder, ConversationMultiSelectParams } from './conversation-multi-select';
import { ConversationSelectBuilder, ConversationSelectParams } from './conversation-select';
import { DatePickerBuilder, DatePickerParams } from './date-picker';
import { DateTimePickerBuilder, DateTimePickerParams } from './date-time-picker';
import { EmailInputBuilder, EmailInputParams } from './email-input';
import { ExternalMultiSelectBuilder, ExternalMultiSelectParams } from './external-multi-select';
import { ExternalSelectBuilder, ExternalSelectParams } from './external-select';
import { ImgBuilder, ImgParams } from './img';
import { NumberInputBuilder, NumberInputParams } from './number-input';
import { OverflowMenuBuilder, OverflowMenuParams } from './overflow-menu';
import { RadioButtonsBuilder, RadioButtonsParams } from './radio-buttons';
import { StaticMultiSelectBuilder, StaticMultiSelectParams } from './static-multi-select';
import { StaticSelectBuilder, StaticSelectParams } from './static-select';
import { TextInputBuilder, TextInputParams } from './text-input';
import { TimePickerBuilder, TimePickerParams } from './timepicker';
import { URLInputBuilder, URLInputParams } from './url-input';
import { UserMultiSelectBuilder, UserMultiSelectParams } from './user-multi-select';
import { UserSelectBuilder, UserSelectParams } from './user-select';
export type { ButtonBuilder, ButtonParams, ChannelMultiSelectBuilder, ChannelMultiSelectParams, ChannelSelectBuilder, ChannelSelectParams, CheckboxesBuilder, CheckboxesParams, ConversationMultiSelectBuilder, ConversationMultiSelectParams, ConversationSelectBuilder, ConversationSelectParams, DatePickerBuilder, DatePickerParams, DateTimePickerBuilder, DateTimePickerParams, EmailInputBuilder, EmailInputParams, ExternalMultiSelectBuilder, ExternalMultiSelectParams, ExternalSelectBuilder, ExternalSelectParams, ImgBuilder, ImgParams, NumberInputBuilder, NumberInputParams, OverflowMenuBuilder, OverflowMenuParams, RadioButtonsBuilder, RadioButtonsParams, StaticMultiSelectBuilder, StaticMultiSelectParams, StaticSelectBuilder, StaticSelectParams, TextInputBuilder, TextInputParams, TimePickerBuilder, TimePickerParams, URLInputBuilder, URLInputParams, UserMultiSelectBuilder, UserMultiSelectParams, UserSelectBuilder, UserSelectParams, };
/**
 * Functions here do not use arrow functions stored in variables for IDE color compatibility.
 */
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.accessibilityLabel] Sets a longer descriptive text that will be read out by screen readers instead of the button text object.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.text] Sets the display text for the button.
 * @param {string} [params.url] Sets the URL to redirect the user to when this button is clicked.
 * @param {string} [params.value] Sets the value to be passed to your app when this button is clicked.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#button|View in Slack API Documentation}
 */
export declare function Button(params?: ButtonParams): ButtonBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.maxSelectedItems] Sets a limit to how many items the user can select.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#channel_multi_select|View in Slack API Documentation}
 */
export declare function ChannelMultiSelect(params?: ChannelMultiSelectParams): ChannelMultiSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialChannel] Sets the default selected item in the menu.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#channel_select|View in Slack API Documentation}
 */
export declare function ChannelSelect(params?: ChannelSelectParams): ChannelSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#checkboxes|View in Slack API Documentation}
 */
export declare function Checkboxes(params?: CheckboxesParams): CheckboxesBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.maxSelectedItems] Sets a limit to how many items the user can select.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#conversation_multi_select|View in Slack API Documentation}
 */
export declare function ConversationMultiSelect(params?: ConversationMultiSelectParams): ConversationMultiSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialConversation] Sets the default selected item in the menu.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#conversation_multi_select|View in Slack API Documentation}
 */
export declare function ConversationSelect(params?: ConversationSelectParams): ConversationSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialDate] Sets the default selected date in the menu.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#datepicker|View in Slack API Documentation}
 */
export declare function DatePicker(params?: DatePickerParams): DatePickerBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.initialDateTime] Sets the default selected date and time for the date time picker.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#datetimepicker|View in Slack API Documentation}
 */
export declare function DateTimePicker(params?: DateTimePickerParams): DateTimePickerBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialValue] Sets the default email entered into the Email input at modal render.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#email|View in Slack API Documentation}
 */
export declare function EmailInput(params?: EmailInputParams): EmailInputBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.maxSelectedItems] Sets a limit to how many items the user can select.
 * @param {int} [params.minQueryLength] Sets a minimum number of characters types before querying your options URL.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#external_multi_select|View in Slack API Documentation}
 */
export declare function ExternalMultiSelect(params?: ExternalMultiSelectParams): ExternalMultiSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.minQueryLength] Sets a minimum number of characters types before querying your options URL.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#external_select|View in Slack API Documentation}
 */
export declare function ExternalSelect(params?: ExternalSelectParams): ExternalSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.imageUrl] Sets the source URL from which the image will be loaded.
 * @param {string} [params.altText] Sets the textual summary of the image.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#image|View in Slack API Documentation}
 */
export declare function Img(params?: ImgParams): ImgBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {boolean} [params.isDecimalAllowed] Dicates whether a decimal is allowed for the value entered into the number input.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialValue] Sets the default text entered into the text input at modal render.
 * @param {int} [params.minValue] Sets a minimum value for the number input.
 * @param {int} [params.maxValue] Sets a maximum value for the number input.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#number|View in Slack API Documentation}
 */
export declare function NumberInput(params?: NumberInputParams): NumberInputBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#overflow|View in Slack API Documentation}
 */
export declare function OverflowMenu(params?: OverflowMenuParams): OverflowMenuBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#radio|View in Slack API Documentation}
 */
export declare function RadioButtons(params?: RadioButtonsParams): RadioButtonsBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.maxSelectedItems] Sets a limit to how many items the user can select.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#static_multi_select|View in Slack API Documentation}
 */
export declare function StaticMultiSelect(params?: StaticMultiSelectParams): StaticMultiSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#static_select|View in Slack API Documentation}
 */
export declare function StaticSelect(params?: StaticSelectParams): StaticSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialValue] Sets the default text entered into the text input at modal render.
 * @param {int} [params.minLength] Sets a minimum character count in order for the user to submit the form.
 * @param {int} [params.maxLength] Sets a maximum character count allowed to send the form.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#input|View in Slack API Documentation}
 */
export declare function TextInput(params?: TextInputParams): TextInputBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialTime] Sets the default selected time in the menu.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#timepicker|View in Slack API Documentation}
 */
export declare function TimePicker(params?: TimePickerParams): TimePickerBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialValue] Sets the default URL entered into the URL input at modal render.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#url|View in Slack API Documentation}
 */
export declare function URLInput(params?: URLInputParams): URLInputBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {int} [params.maxSelectedItems] Sets a limit to how many items the user can select.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#users_multi_select|View in Slack API Documentation}
 */
export declare function UserMultiSelect(params?: UserMultiSelectParams): UserMultiSelectBuilder;
/**
 * @param {Object} [params] Parameters passed to the constructor.
 * @param {string} [params.actionId] Sets a string to be an identifier for the source of an action in interaction payloads.
 * @param {string} [params.placeholder] Adds the text in place of the input before selected or interacted with.
 * @param {string} [params.initialUser] Setts the default selected user in the menu.
 *
 * {@link https://api.slack.com/reference/block-kit/block-elements#users_select|View in Slack API Documentation}
 */
export declare function UserSelect(params?: UserSelectParams): UserSelectBuilder;
declare const elements: {
    Button: typeof Button;
    ChannelMultiSelect: typeof ChannelMultiSelect;
    ChannelSelect: typeof ChannelSelect;
    Checkboxes: typeof Checkboxes;
    ConversationMultiSelect: typeof ConversationMultiSelect;
    ConversationSelect: typeof ConversationSelect;
    DatePicker: typeof DatePicker;
    DateTimePicker: typeof DateTimePicker;
    EmailInput: typeof EmailInput;
    ExternalMultiSelect: typeof ExternalMultiSelect;
    ExternalSelect: typeof ExternalSelect;
    Img: typeof Img;
    NumberInput: typeof NumberInput;
    OverflowMenu: typeof OverflowMenu;
    RadioButtons: typeof RadioButtons;
    StaticMultiSelect: typeof StaticMultiSelect;
    StaticSelect: typeof StaticSelect;
    TextInput: typeof TextInput;
    TimePicker: typeof TimePicker;
    URLInput: typeof URLInput;
    UserMultiSelect: typeof UserMultiSelect;
    UserSelect: typeof UserSelect;
};
export { elements as Elements };
