import type { FinalizedMsgContext } from "../auto-reply/templating.js"; import type { BotConfig } from "../config/config.js"; import type { PluginHookMessageContext, PluginHookMessageReceivedEvent, PluginHookMessageSentEvent } from "../plugins/types.js"; import type { MessagePreprocessedHookContext, MessageReceivedHookContext, MessageSentHookContext, MessageTranscribedHookContext } from "./internal-hooks.js"; export type CanonicalInboundMessageHookContext = { from: string; to?: string; content: string; body?: string; bodyForAgent?: string; transcript?: string; timestamp?: number; channelId: string; accountId?: string; conversationId?: string; messageId?: string; senderId?: string; senderName?: string; senderUsername?: string; senderE164?: string; provider?: string; surface?: string; threadId?: string | number; mediaPath?: string; mediaType?: string; originatingChannel?: string; originatingTo?: string; guildId?: string; channelName?: string; isGroup: boolean; groupId?: string; }; export type CanonicalSentMessageHookContext = { to: string; content: string; success: boolean; error?: string; channelId: string; accountId?: string; conversationId?: string; messageId?: string; isGroup?: boolean; groupId?: string; }; export declare function deriveInboundMessageHookContext(ctx: FinalizedMsgContext, overrides?: { content?: string; messageId?: string; }): CanonicalInboundMessageHookContext; export declare function buildCanonicalSentMessageHookContext(params: { to: string; content: string; success: boolean; error?: string; channelId: string; accountId?: string; conversationId?: string; messageId?: string; isGroup?: boolean; groupId?: string; }): CanonicalSentMessageHookContext; export declare function toPluginMessageContext(canonical: CanonicalInboundMessageHookContext | CanonicalSentMessageHookContext): PluginHookMessageContext; export declare function toPluginMessageReceivedEvent(canonical: CanonicalInboundMessageHookContext): PluginHookMessageReceivedEvent; export declare function toPluginMessageSentEvent(canonical: CanonicalSentMessageHookContext): PluginHookMessageSentEvent; export declare function toInternalMessageReceivedContext(canonical: CanonicalInboundMessageHookContext): MessageReceivedHookContext; export declare function toInternalMessageTranscribedContext(canonical: CanonicalInboundMessageHookContext, cfg: BotConfig): MessageTranscribedHookContext & { cfg: BotConfig; }; export declare function toInternalMessagePreprocessedContext(canonical: CanonicalInboundMessageHookContext, cfg: BotConfig): MessagePreprocessedHookContext & { cfg: BotConfig; }; export declare function toInternalMessageSentContext(canonical: CanonicalSentMessageHookContext): MessageSentHookContext;