import { ITelegramClient } from '../../client.types.js'; import { InputMediaLike, InputPeerLike, MessageMedia, RawDocument, Photo } from '../../types/index.js'; /** * Upload a media to Telegram servers, without actually * sending a message anywhere. Useful when File ID is needed. * * The difference with {@link uploadFile} is that * the returned object will act like a message media * and contain fields like File ID. * * @param media Media to upload * @param params Upload parameters */ export declare function uploadMedia(client: ITelegramClient, media: InputMediaLike, params?: { /** * Peer to associate this media with. * * @default `self` */ peer?: InputPeerLike; /** * Upload progress callback * * @param uploaded Number of bytes uploaded * @param total Total file size */ progressCallback?: (uploaded: number, total: number) => void; }): Promise>;