import { ChannelAttachmentService, ChannelOutboundMessageEncoder, I18nService } from '@hexabot-ai/api'; import { ActionOptions, StdOutgoingAttachmentMessageData, StdOutgoingButtonsMessageData, StdOutgoingListMessageData, StdOutgoingMessageEnvelope, StdOutgoingQuickRepliesMessageData, StdOutgoingTextMessageData } from '@hexabot-ai/types'; import { MessageCreateOptions } from 'discord.js'; import { Type } from '@nestjs/common'; import { Discord } from '../types'; export type DiscordSourceScopedEncodeOptions = ActionOptions & { sourceId: string; }; export declare class DiscordOutboundMessageEncoder extends ChannelOutboundMessageEncoder { private readonly i18n; private readonly channelAttachmentService; constructor(i18n: I18nService, channelAttachmentService: ChannelAttachmentService); encode(envelope: StdOutgoingMessageEnvelope, options: DiscordSourceScopedEncodeOptions): Promise; protected encodeTextMessage(message: StdOutgoingTextMessageData): MessageCreateOptions; protected encodeQuickRepliesMessage(message: StdOutgoingQuickRepliesMessageData): MessageCreateOptions; protected encodeButtonsMessage(message: StdOutgoingButtonsMessageData): MessageCreateOptions; protected encodeAttachmentMessage(message: StdOutgoingAttachmentMessageData, sourceId: string): Promise; protected encodeListMessage(message: StdOutgoingListMessageData, options: DiscordSourceScopedEncodeOptions): Promise; protected encodeCarouselMessage(message: StdOutgoingListMessageData, options: DiscordSourceScopedEncodeOptions): Promise; private encodeInteractiveMessage; private encodeContentMessages; private encodeContentEmbed; private resolveContentImageUrl; private encodeContentButton; private encodeComponentButton; private encodeActionRows; private requireContent; private truncateDisplayText; private stringifyField; private ensureHttpUrl; } export declare function createDiscordOutboundMessageEncoder(_channelName: string): Type; export default DiscordOutboundMessageEncoder; //# sourceMappingURL=discord-outbound-message-encoder.d.ts.map