/**
 * Discord adapter — Gateway WebSocket via discord.js (v0.7b).
 *
 * SDK: `discord.js` v14 (npm i discord.js as optionalDependency).
 * Discord's Gateway protocol is non-trivial — heartbeats, resume
 * tokens, sharding, identify backoff, zlib decompression. Rolling our
 * own WebSocket client would be ~500 LOC of fragile protocol code.
 * One big SDK we import a few symbols from is the right tradeoff.
 *
 * Connection: outbound WebSocket via `client.login(token)`. No public
 * webhook URL. Works behind any NAT.
 *
 * Intents: `Guilds`, `GuildMessages`, `MessageContent`, `DirectMessages`
 * — forgetting DirectMessages silently drops DM events, a known
 * newcomer gotcha. MESSAGE CONTENT is a privileged intent that needs
 * to be enabled in the Developer Portal but is exempt for DMs and
 * @-mentions, so personal-bot DM use works regardless.
 *
 * Dynamic import discipline matches [[telegram-adapter]] — non-discord
 * installs pay zero cost.
 */
import { type ChatAdapter, type MessageHandler, type OutboundMessage, type SendResult } from "../gateway.js";
import type { DiscordConfig } from "../config.js";
export declare class DiscordAdapter implements ChatAdapter {
    private readonly config;
    readonly platform: "discord";
    private client;
    private handlers;
    private botUsername;
    private botId;
    constructor(config: DiscordConfig);
    start(): Promise<void>;
    shutdown(): Promise<void>;
    onMessage(handler: MessageHandler): void;
    send(message: OutboundMessage): Promise<SendResult>;
    identity(): Promise<{
        username: string;
        nativeId: string;
    }>;
}
//# sourceMappingURL=discord.d.ts.map