import type { KnownBlock, ModalView } from '@slack/types'; export interface SlackEvent { type: string; body: unknown; } export interface SlackThread { channelId: string; parentTs: string; } export type SlackDeliveryResult = { kind: 'delivered'; } | { kind: 'unavailable'; reason: string; }; export type SlackPostResult = { kind: 'delivered'; parentTs: string; } | { kind: 'unavailable'; reason: string; }; export interface SlackClient { start(receive: (event: SlackEvent) => Promise): Promise; postThreadMessage(thread: SlackThread, text: string, blocks?: KnownBlock[]): Promise; postMessage(channelId: string, text: string, blocks: KnownBlock[]): Promise; openModal(triggerId: string, view: ModalView): Promise; stopAccepting(): void; close(): Promise; } export declare function createSlackClient(tokens: { appToken: string; botToken: string; }): SlackClient; //# sourceMappingURL=client.d.ts.map