/**
* 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 ID, type Update, type VideoChatActive, type VideoChatScheduled } from "../3_types.js";
import type { DownloadLiveStreamSegmentParams, JoinVideoChatParams, StartVideoChatParams } from "./0_params.js";
import type { UpdateProcessor } from "./0_update_processor.js";
import type { C as C_ } from "./1_types.js";
import type { FileManager } from "./2_file_manager.js";
interface C extends C_ {
fileManager: FileManager;
}
declare const videoChatManagerUpdates: readonly ["updateGroupCall"];
type VideoChatManagerUpdate = Api.Types[(typeof videoChatManagerUpdates)[number]];
export declare class VideoChatManager implements UpdateProcessor {
#private;
constructor(c: C);
startVideoChat(chatId: ID, params?: StartVideoChatParams): Promise;
scheduleVideoChat(chatId: ID, startAt: number, params?: StartVideoChatParams): Promise;
joinVideoChat(id: string, params: string, params_?: JoinVideoChatParams): Promise;
leaveVideoChat(id: string): Promise;
joinLiveStream(id: string): Promise;
getVideoChat(id: string): Promise;
canHandleUpdate(update: Api.Update): update is VideoChatManagerUpdate;
handleUpdate(update: VideoChatManagerUpdate): Promise;
getLiveStreamChannels(id: string): Promise;
downloadLiveStreamSegment(id: string, channel: number, scale: number, timestamp: number, params?: DownloadLiveStreamSegmentParams): Promise>;
}
export {};
//# sourceMappingURL=3_video_chat_manager.d.ts.map