slack-block-builder
Version:
Maintainable code for interactive Slack messages, modals, home tabs, and workflow steps. A must-have for the Slack Block Kit framework.
55 lines (54 loc) • 3.31 kB
TypeScript
import { HomeTabBuilder, HomeTabParams } from './home-tab';
import { MessageBuilder, MessageParams } from './message';
import { ModalBuilder, ModalParams } from './modal';
import { WorkflowStepBuilder, WorkflowStepParams } from './workflow-step';
export type { HomeTabBuilder, HomeTabParams, MessageBuilder, MessageParams, ModalBuilder, ModalParams, WorkflowStepBuilder, WorkflowStepParams, };
/**
* 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.callbackId] Sets a string sent back to your server together with all action and submission events.
* @param {string} [params.externalId] Sets a custom identifier that must be unique for all views on a per-team basis.
* @param {string} [params.privateMetaData] Sets a string sent back to your server together with all action and submission events.
*
* {@link https://api.slack.com/surfaces/tabs|View in Slack API Documentation}
*/
export declare function HomeTab(params?: HomeTabParams): HomeTabBuilder;
/**
* @param {Object} [params] Parameters passed to the constructor.
* @param {string} [params.channel] The Slack channel ID to which the message is to be sent.
* @param {string} [params.text] Text to be displayed in the notification on the Message, or in the body, if there are no Blocks available.
* @param {timestamp} [params.threadTs] Sets the message to be a reply in a thread to the message whose timestamp is passed.
* @param {timestamp} [params.postAt] Sets a time for the message to be posted, as a scheduled message.
*
* {@link https://api.slack.com/messaging/composing|View in Slack API Documentation}
*/
export declare function Message(params?: MessageParams): MessageBuilder;
/**
* @param {Object} [params] Parameters passed to the constructor.
* @param {string} [params.title] Sets a title for your modal.
* @param {string} [params.close] Sets the text for the close button.
* @param {string} [params.submit] Sets the text for the submit button.
* @param {string} [params.callbackId] Sets a string sent back to your server together with all action and submission events.
* @param {string} [params.externalId] Sets a custom identifier that must be unique for all views on a per-team basis.
* @param {string} [params.privateMetaData] Sets a string sent back to your server together with all action and submission events.
*
* {@link https://api.slack.com/reference/surfaces/views|View in Slack API Documentation}
*/
export declare function Modal(params?: ModalParams): ModalBuilder;
/**
* @param {Object} [params] Parameters passed to the constructor.
* @param {string} [params.callbackId] Sets a string sent back to your server together with all action and submission events.
* @param {string} [params.privateMetaData] Sets a string sent back to your server together with all action and submission events.
*
* {@link https://api.slack.com/reference/surfaces/views|View in Slack API Documentation}
*/
export declare function WorkflowStep(params?: WorkflowStepParams): WorkflowStepBuilder;
declare const surfaces: {
HomeTab: typeof HomeTab;
Message: typeof Message;
Modal: typeof Modal;
WorkflowStep: typeof WorkflowStep;
};
export { surfaces as Surfaces };