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 };
