/** * MTKruto - Cross-runtime JavaScript library for building Telegram clients * Copyright (C) 2023-2026 Roj * * This file is part of MTKruto. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see . */ import { Api } from "../2_tl.js"; import { type Location } from "./0_location.js"; import { type Animation } from "./1_animation.js"; import type { PeerGetter } from "./1_chat_p.js"; import { type Photo } from "./1_photo.js"; import { type Sticker, type StickerSetNameGetter } from "./1_sticker.js"; import { type Venue } from "./1_venue.js"; import { type Video } from "./1_video.js"; import { type LinkPreview } from "./5_link_preview.js"; /** @unlisted */ export interface PollMediaAnimation { type: "animation"; /** The animation. */ animation: Animation; } /** @unlisted */ export interface PollMediaPhoto { type: "photo"; /** The photo. */ photo: Photo; } /** @unlisted */ export interface PollMediaVideo { type: "video"; /** The video. */ video: Video; } /** @unlisted */ export interface PollMediaSticker { type: "sticker"; /** The sticker. */ sticker: Sticker; } /** @unlisted */ export interface PollMediaVenue { type: "venue"; /** The venue. */ venue: Venue; } /** @unlisted */ export interface PollMediaLink { type: "link"; /** The URL. */ url: string; /** The link preview. */ linkPreview: LinkPreview; } /** @unlisted */ export interface PollMediaLivePhoto { type: "livePhoto"; /** The photo. */ photo: Photo; /** The video version of the photo. */ video: Video; } /** @unlisted */ export interface PollMediaLocation { type: "location"; /** The location. */ location: Location; } /** Any type of poll option media. */ export type PollMedia = PollMediaAnimation | PollMediaPhoto | PollMediaVideo | PollMediaSticker | PollMediaLivePhoto | PollMediaLocation | PollMediaVenue | PollMediaLink; export declare function constructPollMedia(media: Api.MessageMedia, getStickerSetName: StickerSetNameGetter, getPeer: PeerGetter): Promise; //# sourceMappingURL=6_poll_media.d.ts.map