import type { ClientMessage, ClientMessageNames } from "../types"; /** * Placeholder class for all the media types * * @group Media */ export declare class Media implements ClientMessage { /** * The id of the media */ id?: string; /** * The link of the media */ link?: string; get _type(): ClientMessageNames; /** * This method works as a placeholder so the documentation looks nice. * You shouldn't be using it directly ¯\\_(ツ)_/¯. * * @param file - File to be sent * @param isItAnID - If the file is an ID (true) or an URL (false) */ constructor(file: string, isItAnID?: boolean); _build(): string; } /** * Audio API component * * @group Media */ export declare class Audio extends Media { get _type(): "audio"; /** * Create an Audio object for the API * * @param audio - The audio file's link or id * @param isItAnID - Whether audio is an id (true) or a link (false) */ constructor(audio: string, isItAnID?: boolean); } /** * Document API component * * @group Media */ export declare class Document extends Media { /** * The file's caption */ caption?: string; /** * The file's filename */ filename?: string; get _type(): "document"; /** * Create a Document object for the API * * @param document - The document file's link or id * @param isItAnID - Whether document is an id (true) or a link (false) * @param caption - Describes the specified document media * @param filename - Describes the filename for the specific document */ constructor(document: string, isItAnID?: boolean, caption?: string, filename?: string); } /** * Image API component * * @group Media */ export declare class Image extends Media { /** * The file's caption */ caption?: string; get _type(): "image"; /** * Create a Image object for the API * * @param image - The image file's link or id * @param isItAnID - Whether image is an id (true) or a link (false) * @param caption - Describes the specified image media */ constructor(image: string, isItAnID?: boolean, caption?: string); } /** * Sticker API component * * @group Media */ export declare class Sticker extends Media { get _type(): "sticker"; /** * Create a Sticker object for the API * * @param sticker - The sticker file's link * @param isItAnID - Whether sticker is an id (true) or a link (false) */ constructor(sticker: string, isItAnID?: boolean); } /** * Video API component * * @group Media */ export declare class Video extends Media { /** * The file's caption */ caption?: string; get _type(): "video"; /** * Create a Video object for the API * * @param video - The video file's link * @param isItAnID - Whether video is an id (true) or a link (false) * @param caption - Describes the specified video media */ constructor(video: string, isItAnID?: boolean, caption?: string); } //# sourceMappingURL=media.d.ts.map