/** * Represents the raw request body received from Slack. * This interface captures the common properties that may appear in various * Slack request payloads including slash commands, events, interactions, and views. * * The properties present depend on the type of request: * - Slash commands: `command` property * - Events API: `event`, `event_id`, `event_time`, `authorizations` * - Interactive components: `actions`, `callback_id`, `trigger_id` * - Block suggestions: `block_id`, `action_id` * - Views: `view` */ export interface SlackRequestBody { /** The type of request payload (e.g., "event_callback", "block_actions") */ type?: string; /** The slash command that was invoked (e.g., "/weather") - present in slash command payloads */ command?: string; /** The event data for Events API payloads */ event?: { /** The type of event (e.g., "message", "app_mention") */ type: string; /** The subtype of the event if applicable (e.g., "bot_message", "file_share") */ subtype?: string; /** Text content of the event if applicable */ text?: string; }; /** Unique identifier for the event */ event_id?: string; /** Unix timestamp when the event occurred */ event_time?: number; /** The app ID that received this event */ api_app_id?: string; /** The enterprise ID if applicable */ enterprise_id?: string; /** The workspace ID where the event occurred */ team_id?: string; /** Whether the event occurred in an externally shared channel */ is_ext_shared_channel?: boolean; /** Authorization information for the event */ authorizations?: EventApiAuthorization[]; /** Legacy verification token (deprecated, use signing secret instead) */ token?: string; /** The callback_id for shortcuts and message actions */ callback_id?: string; /** The list of actions triggered in block_actions payloads */ actions: { /** The type of interactive element (e.g., "button", "static_select") */ type: string; /** The block_id of the block containing this action */ block_id: string; /** The action_id identifying this specific action */ action_id: string; }[]; /** The block_id for block_suggestion payloads (external data source) */ block_id?: string; /** The action_id for block_suggestion payloads */ action_id?: string; /** The view data for view_submission and view_closed payloads */ view?: { /** The callback_id of the view */ callback_id: string; }; } /** * Authorization information included in Events API payloads. * Contains details about the authorized installation that received the event. */ export interface EventApiAuthorization { /** The enterprise ID if the app is installed in an Enterprise Grid organization, null otherwise */ enterprise_id: string | null; /** The workspace ID where the app is installed, null for org-wide installations */ team_id: string | null; /** The user ID of the authorized user or bot */ user_id: string; /** Whether the authorization is for a bot user */ is_bot: boolean; /** Whether this is an org-wide (enterprise) installation */ is_enterprise_install?: boolean; } //# sourceMappingURL=request-body.d.ts.map