import { APILinks } from '@vonage/server-client'; import { AnyMessageBody } from '../anyMessageBody.js'; import { Event } from '../event.js'; import { EventUser } from '../eventUser.js'; import '../messageASRBody.js'; import '../messageChannelBody.js'; import '../../enums/channelType.js'; import '../anyChannel.js'; import '../phoneNumberChannel.js'; import '../sipChannel.js'; import '../appChannel.js'; import '../websocketChannel.js'; import '../vbcChannel.js'; import '../messageAudioBody.js'; import '../../enums/eventMessageType.js'; import '../messageConversationBody.js'; import '../../enums/conversationState.js'; import '../messageCustomBody.js'; import '../messageEventBody.js'; import '../messageFileBody.js'; import '../messageImageBody.js'; import '../messageLegBody.js'; import '@vonage/messages'; import '@vonage/voice'; import '../../enums/legStatus.js'; import '../../enums/reasonMessages.js'; import '../messageLocationBody.js'; import '../messageMemberBody.js'; import '../member.js'; import '@vonage/users'; import '../../enums/memberState.js'; import '../audioSettings.js'; import '../parameters/updateMemberParameters.js'; import '../messageRTCAnswerBody.js'; import '../messageRTCIdBody.js'; import '../messageRecordBody.js'; import '../messageRecordIdBody.js'; import '../messageSIPDirectionBody.js'; import '../messageSIPBody.js'; import '../messageSIPHangupBody.js'; import '../messageSIPMachineBody.js'; import '../messageSIPStatusBody.js'; import '../messageSayBody.js'; import '../messageSayIdBody.js'; import '../messageStatusBody.js'; import '../messageTemplateBody.js'; import '../messageTextBody.js'; import '../messageVCardBody.js'; import '../messageVideoBody.js'; import '../../enums/eventsTypes.js'; type SnakeToCamelCase = Key extends `${infer FirstPart}_${infer FirstLetter}${infer LastPart}` ? `${FirstPart}${Uppercase}${SnakeToCamelCase}` : Key; type EventUserResponse = { display_name: string; } & Omit; type AnyMessageBodyResponse = { [P in keyof AnyMessageBody as SnakeToCamelCase

]: AnyMessageBody[P]; }; type EventResponse = { body: AnyMessageBodyResponse; _embedded: { from_user: EventUserResponse; from_member: { id: string; }; }; } & Omit & APILinks; export type { AnyMessageBodyResponse, EventResponse, EventUserResponse };