/**
* 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 FileSource, type ID, type Sticker, type Update } from "../3_types.js";
import type { EndSecretChatParams, SendSecretAnimationParams, SendSecretAudioParams, SendSecretContactParams, SendSecretDocumentParams, SendSecretLocationParams, SendSecretMessageParams, SendSecretPhotoParams, SendSecretStickerParams, SendSecretVenueParams, SendSecretVideoNoteParams, SendSecretVideoParams, SendSecretVoiceParams } 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 secretChatManagerUpdates: readonly ["updateEncryption", "updateNewEncryptedMessage", "updateEncryptedChatTyping"];
type SecretChatManagerUpdate = Api.Types[(typeof secretChatManagerUpdates)[number]];
export declare class SecretChatManager implements UpdateProcessor {
#private;
constructor(c: C);
loadSecretChats(): Promise;
requestSecretChat(chatId: ID): Promise;
acceptSecretChat(id: number): Promise;
endSecretChat(id: number, params?: EndSecretChatParams): Promise;
sendSecretMessage(id: number, text: string, params?: SendSecretMessageParams): Promise;
sendSecretLocation(id: number, latitude: number, longitude: number, params?: SendSecretLocationParams): Promise;
sendSecretVenue(id: number, latitude: number, longitude: number, title: string, address: string, params?: SendSecretVenueParams): Promise;
sendSecretContact(id: number, firstName: string, phoneNumber: string, params?: SendSecretContactParams): Promise;
sendSecretDocument(id: number, document: FileSource, params?: SendSecretDocumentParams): Promise;
sendSecretVideo(id: number, video: FileSource, params?: SendSecretVideoParams): Promise;
sendSecretVideoNote(id: number, videoNote: FileSource, params?: SendSecretVideoNoteParams): Promise;
sendSecretAudio(id: number, audio: FileSource, params?: SendSecretAudioParams): Promise;
sendSecretVoice(id: number, voice: FileSource, params?: SendSecretVoiceParams): Promise;
sendSecretAnimation(id: number, animation: FileSource, params?: SendSecretAnimationParams): Promise;
sendSecretScreenshotNotification(id: number, messageIds: string[]): Promise;
sendSecretPhoto(id: number, photo: FileSource, params?: SendSecretPhotoParams): Promise;
sendSecretSticker(id: number, sticker: Sticker, params?: SendSecretStickerParams): Promise;
sendSecretTypingAction(id: number): Promise;
sendSecretCancelTypingAction(id: number): Promise;
canHandleUpdate(update: Api.Update): update is SecretChatManagerUpdate;
handleUpdate(update: SecretChatManagerUpdate): Promise;
}
export {};
//# sourceMappingURL=3_secret_chat_manager.d.ts.map