import type { AnyMessageBlock } from "../block-kit/blocks";
import type { MessageAttachment } from "../block-kit/message-attachment";
import type { MessageMetadata } from "../block-kit/message-metadata";
export declare class WebhookSender {
    #private;
    constructor(url: string);
    call(params: WebhookParams): Promise<Response>;
}
export declare const ResponseUrlSender: typeof WebhookSender;
export interface WebhookPostUpdateParams {
    response_type?: "ephemeral" | "in_channel";
    text: string;
    blocks?: AnyMessageBlock[];
    attachments?: MessageAttachment[];
    metadata?: MessageMetadata;
    replace_original?: boolean;
    unfurl_links?: boolean;
    unfurl_media?: boolean;
}
export interface WebhookPostInThreadParams extends WebhookPostUpdateParams {
    replace_original: false;
    thread_ts: string;
}
export interface WebhookDeleteParams {
    delete_original: boolean;
}
export type WebhookParams = WebhookPostUpdateParams | WebhookPostInThreadParams | WebhookDeleteParams;
//# sourceMappingURL=webhook-client.d.ts.map