import { AccordionMessage, CarouselMessage, FileDownloadMessage, ImageMessage, QuickReplyMessage, TextMessage, VideoMessage, RatingMessage, CsatMessage } from '../types/parsed-message.types'; import { AccordionResponse, CarouselResponse, FileDownloadResponse, ImageResponse, QuickReplyResponse, TextResponse, VideoResponse, RatingResponse, CsatResponse } from '../../types/server-response.types'; import { SenderType } from '../../types/common.types'; export declare const MessageParsers: { text: (message: TextResponse, sender: SenderType) => TextMessage; image: (message: ImageResponse, sender: SenderType) => ImageMessage; accordion: (message: AccordionResponse, sender: SenderType) => AccordionMessage; carousel: (message: CarouselResponse, sender: SenderType) => CarouselMessage; quickReply: (message: QuickReplyResponse, sender: SenderType) => QuickReplyMessage; fileDownload: (message: FileDownloadResponse, sender: SenderType) => FileDownloadMessage; video: (message: VideoResponse, sender: SenderType) => VideoMessage; rating: (message: RatingResponse, sender: SenderType) => RatingMessage; csat: (message: CsatResponse, sender: SenderType) => CsatMessage; }; export type MessageParsersType = typeof MessageParsers; export type MessageParsersKeys = keyof MessageParsersType; export type MessageParamTypesMap = { [K in MessageParsersKeys]: Parameters[0]; }; export type MessageParsersReturnTypes = { [K in keyof typeof MessageParsers]: ReturnType<(typeof MessageParsers)[K]>; }; export type MessageParamTypeFromString = MessageParamTypesMap[T];