Path: blob/master/node_modules/@adiwajshing/baileys/lib/Utils/messages-media.d_1.ts
2593 views
/// <reference types="node" />1import { AxiosRequestConfig } from 'axios';2import type { Logger } from 'pino';3import { Readable, Transform } from 'stream';4import { URL } from 'url';5import { CommonSocketConfig, DownloadableMessage, MediaConnInfo, MediaType, WAMediaUpload, WAMediaUploadFunction, WAMessageContent } from '../Types';6export declare const hkdfInfoKey: (type: MediaType) => string;7/** generates all the keys required to encrypt/decrypt & sign a media message */8export declare function getMediaKeys(buffer: any, mediaType: MediaType): {9iv: Buffer;10cipherKey: Buffer;11macKey: Buffer;12};13export declare const extractImageThumb: (bufferOrFilePath: Readable | Buffer | string) => Promise<Buffer>;14export declare const generateProfilePicture: (mediaUpload: WAMediaUpload) => Promise<{15img: Buffer;16}>;17/** gets the SHA256 of the given media message */18export declare const mediaMessageSHA256B64: (message: WAMessageContent) => string;19export declare function getAudioDuration(buffer: Buffer | string | Readable): Promise<number>;20export declare const toReadable: (buffer: Buffer) => Readable;21export declare const toBuffer: (stream: Readable) => Promise<Buffer>;22export declare const getStream: (item: WAMediaUpload) => Promise<{23stream: Readable;24type: string;25}>;26/** generates a thumbnail for a given media, if required */27export declare function generateThumbnail(file: string, mediaType: 'video' | 'image', options: {28logger?: Logger;29}): Promise<string>;30export declare const getHttpStream: (url: string | URL, options?: AxiosRequestConfig & {31isStream?: true;32}) => Promise<Readable>;33export declare const encryptedStream: (media: WAMediaUpload, mediaType: MediaType, saveOriginalFileIfRequired?: boolean, logger?: Logger) => Promise<{34mediaKey: Buffer;35encWriteStream: Readable;36bodyPath: string;37mac: Buffer;38fileEncSha256: Buffer;39fileSha256: Buffer;40fileLength: number;41didSaveToTmpPath: boolean;42}>;43declare type MediaDownloadOptions = {44startByte?: number;45endByte?: number;46};47export declare const downloadContentFromMessage: ({ mediaKey, directPath, url }: DownloadableMessage, type: MediaType, { startByte, endByte }?: MediaDownloadOptions) => Promise<Transform>;48/**49* Decode a media message (video, image, document, audio) & return decrypted buffer50* @param message the media message you want to decode51*/52export declare function decryptMediaMessageBuffer(message: WAMessageContent): Promise<Readable>;53export declare function extensionForMediaMessage(message: WAMessageContent): string;54export declare const getWAUploadToServer: ({ customUploadHosts, fetchAgent, logger }: CommonSocketConfig<any>, refreshMediaConn: (force: boolean) => Promise<MediaConnInfo>) => WAMediaUploadFunction;55export {};565758