@tgsnake/core
Version:
Pure Telegram MTProto library for nodejs
59 lines (58 loc) • 1.66 kB
TypeScript
import { Buffer } from '../platform.node.js';
import { ProxyInterface } from '../connection/connection.js';
import { TLObject } from '../raw/index.js';
import type { Client } from '../client/Client.js';
export declare class Results {
value: Promise<unknown>;
reject: {
(reason: any): any;
};
resolve: {
(value: any): any;
};
constructor();
}
export declare class Session {
START_TIMEOUT: number;
WAIT_TIMEOUT: number;
SLEEP_THRESHOLD: number;
MAX_RETRIES: number;
ACKS_THRESHOLD: number;
PING_INTERVAL: number;
private _dcId;
private _authKey;
private _testMode;
private _proxy?;
private _isMedia;
private _isCdn;
private _authKeyId;
private _connection;
private _pingTask;
private _client;
private _sessionId;
private _msgFactory;
private _msgId;
private _salt;
private _storedMsgId;
private _results;
private _isConnected;
private _pendingAcks;
private _task;
private _networkTask;
private _mutex;
constructor(client: Client, dcId: number, authKey: Buffer, testMode: boolean, proxy?: ProxyInterface, isMedia?: boolean, isCdn?: boolean);
private _handlePacket;
private _send;
private _pingWorker;
private _networkWorker;
retriesReconnect(retries?: number): Promise<any>;
stop(): Promise<void>;
restart(): void;
invoke(data: TLObject, retries?: number, timeout?: number, sleepThreshold?: number): Promise<TLObject>;
start(): Promise<void>;
initConnection(): Promise<TLObject | undefined>;
toJSON(): {
[key: string]: any;
};
toString(): string;
}