UNPKG

@tgsnake/core

Version:

Pure Telegram MTProto library for nodejs

69 lines (68 loc) 2.97 kB
import { Raw } from '../raw/index.js'; import { type SecretChat } from './SecretChat.js'; import { type Buffer } from '../platform.node.js'; type MaybePromise<T> = T | Promise<T>; export declare abstract class AbstractSession { protected abstract _ip: string; protected abstract _dcId: number; protected abstract _port: number; protected abstract _peers: Map<bigint, [ id: bigint, accessHash: bigint, type: string, username?: Array<string>, phoneNumber?: string ]>; protected abstract _secretChats: Map<number, SecretChat>; protected abstract _authKey: Buffer; protected abstract _testMode: boolean; protected abstract _apiId: number; protected abstract _userId: bigint; protected abstract _isBot: boolean; abstract setAddress(dcId: number, ip: string, port: number, testMode: boolean): MaybePromise<void>; abstract setAuthKey(authKey: Buffer, dcId: number): MaybePromise<void>; abstract setApiId(apiId: number): MaybePromise<void>; abstract setIsBot(isbot: boolean): MaybePromise<void>; abstract setUserId(userId: bigint): MaybePromise<void>; abstract get authKey(): Buffer; abstract get isBot(): boolean; abstract get testMode(): boolean; abstract get userId(): bigint; abstract get apiId(): number; abstract get dcId(): number; abstract get port(): number; abstract get ip(): string; abstract get peers(): Map<bigint, [ id: bigint, accessHash: bigint, type: string, username?: Array<string>, phoneNumber?: string ]>; abstract get secretChats(): Map<number, SecretChat>; abstract load(): MaybePromise<void>; abstract delete(): MaybePromise<void>; abstract save(): MaybePromise<void>; abstract move(session: AbstractSession): MaybePromise<void>; abstract updatePeers(peers: Array<[ id: bigint, accessHash: bigint, type: string, username?: Array<string>, phoneNumber?: string ]>): MaybePromise<void>; abstract updateSecretChats(chats: Array<SecretChat>): MaybePromise<void>; abstract getSecretChatById(id: number): MaybePromise<SecretChat | undefined>; abstract getPeerById(id: bigint): MaybePromise<Raw.InputPeerUser | Raw.InputPeerChat | Raw.InputPeerChannel | undefined>; abstract getPeerByUsername(username: string): MaybePromise<Raw.InputPeerUser | Raw.InputPeerChat | Raw.InputPeerChannel | undefined>; abstract getPeerByPhoneNumber(phoneNumber: string): MaybePromise<Raw.InputPeerUser | Raw.InputPeerChat | Raw.InputPeerChannel | undefined>; abstract removeSecretChatById(id: number): MaybePromise<boolean>; abstract updatePts(pts: number, date: number): MaybePromise<void>; abstract getPts(): Promise<[pts: number, date: number]>; abstract exportString(): string; abstract toJSON(): { [key: string]: any; }; abstract toString(): string; } export {};