import { d as BaseConfig, b as ChatPayload } from "../../../packem_shared/types.d-C7l7qdMG.js"; import { a as ProviderFactory, P as Provider } from "../../../packem_shared/provider.d-Dh32nRm9.js"; import { l as ReceiverOptions, R as Receiver } from "../../../packem_shared/types.d-4T7bNo4x.js"; import "../../../packem_shared/types.d-BXfGenMH.js"; interface SlackConfig extends BaseConfig { /** Default channel id/name used when the payload omits `to` (Web API mode). */ defaultChannel?: string; /** Override the API base URL (Web API mode). */ endpoint?: string; /** Bot/User OAuth token (`xoxb-...`) for the Web API. Required unless `webhookUrl` is set. */ token?: string; /** Incoming webhook URL. When set, takes precedence over the Web API. */ webhookUrl?: string; } /** * Slack chat provider. Supports both Incoming Webhooks (`webhookUrl`) and the Web API * (`token` + channel). Edge-safe — `fetch` only. * @see https://api.slack.com/methods/chat.postMessage */ declare const slackProvider$1: ProviderFactory; /** * Options for the Slack inbound receiver. */ interface SlackReceiverOptions extends ReceiverOptions { /** * The outbound Slack chat provider used by `context.reply()` (and for replying to Events * API deliveries, which cannot answer in the HTTP response). Optional. */ provider?: Provider; /** The Slack app signing secret, used to verify `X-Slack-Signature`. */ signingSecret: string; } /** * Creates a Slack inbound receiver covering the Events API, slash commands and interactive * components. Requests are verified with Slack's v0 signing scheme (5-minute replay window) * before dispatch, and the `url_verification` handshake is answered automatically. * * Slash-command and interaction handlers may return an {@link ../types.InboundReply} to post * a synchronous message in the HTTP response; Events API deliveries are acknowledged with * `200` and should be replied to through the outbound Slack provider. * @param options Verification config, the message handler and an optional reply provider. * @returns The inbound channel. */ declare const createSlackReceiver: (options: SlackReceiverOptions) => Receiver; /** @deprecated Renamed to `createSlackProvider`; removed in the next major. */ declare const slackProvider: typeof slackProvider$1; export { type SlackConfig, type SlackReceiverOptions, slackProvider$1 as createSlackProvider, createSlackReceiver, slackProvider };