{"version":3,"sources":["../../src/types/webhooks.ts"],"sourcesContent":["import { MessageUpdateStatus } from \"./messages\";\n\nexport enum ConnectionState {\n  OPEN = \"open\",\n  CONNECTING = \"connecting\",\n  CLOSED = \"close\",\n  REFUSED = \"refused\",\n}\n\nexport enum MessageType {\n  CONVERSATION = \"conversation\",\n  TEXT = \"textMessage\",\n  EPHEMERAL = \"ephemeralMessage\",\n  AUDIO = \"audioMessage\",\n  IMAGE = \"imageMessage\",\n  VIDEO = \"videoMessage\",\n  DOCUMENT = \"documentMessage\",\n  STICKER = \"stickerMessage\",\n  CONTACT = \"contactMessage\",\n  LOCATION = \"locationMessage\",\n  REACTION = \"reactionMessage\",\n  BUTTONS = \"buttonsMessage\",\n}\n\nexport interface DeviceListMetadata {\n  senderKeyHash: string;\n  senderTimestamp: string;\n  recipientKeyHash: string;\n  recipientTimestamp: string;\n}\n\nexport interface MessageContextInfo {\n  deviceListMetadata?: DeviceListMetadata | Record<string, unknown>;\n  deviceListMetadataVersion: number;\n  messageSecret: string;\n}\n\nexport interface DisappearingMode {\n  initiator: string;\n  trigger: string;\n  initiatedByMe: boolean;\n}\n\nexport interface ContextInfo {\n  expiration?: number;\n  ephemeralSettingTimestamp?: string;\n  disappearingMode?: DisappearingMode;\n  stanzaId?: string;\n  participant?: string;\n  quotedMessage?: {\n    conversation?: string;\n  };\n  statusSourceType?: string;\n  forwardingScore?: number;\n  isForwarded?: boolean;\n  pairedMediaType?: string;\n}\n\nexport interface ImageMessage {\n  url: string;\n  mimetype: string;\n  fileSha256: string;\n  fileLength: string;\n  height: number;\n  width: number;\n  mediaKey: string;\n  fileEncSha256: string;\n  directPath: string;\n  mediaKeyTimestamp: string;\n  jpegThumbnail: string;\n  contextInfo?: ContextInfo;\n  firstScanSidecar: string;\n  firstScanLength: number;\n  scansSidecar: string;\n  scanLengths: number[];\n  midQualityFileSha256: string;\n  imageSourceType: string;\n}\n\nexport interface AudioMessage {\n  url: string;\n  mimetype: string;\n  fileSha256: string;\n  fileLength: string;\n  seconds: number;\n  ptt: boolean;\n  mediaKey: string;\n  fileEncSha256: string;\n  directPath: string;\n  mediaKeyTimestamp: string;\n  waveform: string;\n}\n\nexport interface StickerMessage {\n  url: string;\n  width: number;\n  height: number;\n  isAvatar: boolean;\n  isLottie: boolean;\n  mediaKey: string;\n  mimetype: string;\n  directPath: string;\n  fileLength: string;\n  fileSha256: string;\n  isAnimated: boolean;\n  isAiSticker: boolean;\n  fileEncSha256: string;\n  stickerSentTs: string;\n  mediaKeyTimestamp: string;\n}\n\nexport interface VideoMessage {\n  url: string;\n  mimetype: string;\n  fileSha256: string;\n  fileLength: string;\n  seconds: number;\n  mediaKey: string;\n  height: number;\n  width: number;\n  fileEncSha256: string;\n  directPath: string;\n  mediaKeyTimestamp: string;\n  jpegThumbnail: string;\n  contextInfo?: ContextInfo;\n  streamingSidecar: string;\n  externalShareFullVideoDurationInSeconds: number;\n}\n\nexport interface ReactionMessage {\n  key: {\n    remoteJid: string;\n    fromMe: boolean;\n    id: string;\n  };\n  text: string;\n  senderTimestampMs: string;\n}\n\nexport interface DocumentMessage {\n  url: string;\n  mimetype: string;\n  fileSha256: string;\n  fileLength: string;\n  pageCount: number;\n  mediaKey: string;\n  fileName: string;\n  fileEncSha256: string;\n  directPath: string;\n  mediaKeyTimestamp: string;\n  contextInfo: ContextInfo;\n  caption: string;\n}\n\nexport interface ContactMessage {\n  displayName: string;\n  vcard: string;\n}\n\nexport interface ExtendedTextMessage {\n  text: string;\n  contextInfo?: ContextInfo;\n}\n\nexport type MessageContent = {\n  messageContextInfo?: MessageContextInfo;\n  conversation?: string;\n  extendedTextMessage?: ExtendedTextMessage;\n  imageMessage?: ImageMessage;\n  audioMessage?: AudioMessage;\n  stickerMessage?: StickerMessage;\n  ephemeralMessage?: EphemeralMessage;\n  videoMessage?: VideoMessage;\n  documentMessage?: DocumentMessage;\n  contactMessage?: ContactMessage;\n  locationMessage?: any;\n  reactionMessage?: ReactionMessage;\n  buttonsMessage?: any;\n};\n\nexport interface MessageUpdate {\n  status: MessageUpdateStatus;\n}\n\nexport interface ConnectionUpdatePayload {\n  instance: string;\n  wuid?: string;\n  profileName?: string;\n  profilePictureUrl?: string | null;\n  state: ConnectionState;\n  statusReason: number;\n}\n\nexport interface ContactPayload {\n  remoteJid: string;\n  pushName: string;\n  profilePicUrl: string | null;\n  instanceId: string;\n}\n\nexport interface EphemeralMessage {\n  message: MessageContent;\n}\n\nexport interface MessagePayload {\n  key: {\n    remoteJid: string;\n    fromMe: boolean;\n    id: string;\n    senderLid?: string;\n  };\n  pushName?: string;\n  message?: MessageContent;\n  messageType?: MessageType;\n  messageTimestamp?: number;\n  status?: string;\n  participant?: string;\n  contextInfo?: ContextInfo;\n  instanceId?: string;\n  source?: string;\n}\n\nexport interface WebhookData {\n  event: string;\n  instance: string;\n  data:\n    | MessagePayload\n    | ContactPayload\n    | ContactPayload[]\n    | ConnectionUpdatePayload;\n  sender: string;\n  date?: number;\n  instanceName?: string;\n  destination?: string;\n  date_time?: string;\n  server_url?: string;\n  apikey?: string;\n}\n\nexport interface Instance {\n  instanceName: string;\n  status: string;\n  qrcode?: string;\n}\n\nexport interface Message {\n  key: {\n    remoteJid: string;\n    fromMe: boolean;\n    id: string;\n  };\n  message: Record<string, unknown>;\n  messageTimestamp: number;\n  pushName?: string;\n}\n"],"mappings":";AAEO,IAAK,kBAAL,kBAAKA,qBAAL;AACL,EAAAA,iBAAA,UAAO;AACP,EAAAA,iBAAA,gBAAa;AACb,EAAAA,iBAAA,YAAS;AACT,EAAAA,iBAAA,aAAU;AAJA,SAAAA;AAAA,GAAA;AAOL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,kBAAe;AACf,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,eAAY;AACZ,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,cAAW;AACX,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,cAAW;AACX,EAAAA,aAAA,cAAW;AACX,EAAAA,aAAA,aAAU;AAZA,SAAAA;AAAA,GAAA;","names":["ConnectionState","MessageType"]}