import type { KythiaConfig as IKythiaConfig, KythiaLogger } from '../types'; import type { Client } from 'discord.js'; interface EngineOptions { botClient: Client; licenseKey: string; botVersion: string; bootSalt: number; logger: KythiaLogger; version: string; config: IKythiaConfig; } export declare class KythiaEngine { private k; private l; private v; private c; private _botClient; private q; private nf; private nSub; private _lastPulseAt; private readonly MNF; private readonly MSUB; private hi; private fi; private _fh; private readonly _httpsAgent; private _lastFlushAt; private readonly _MIN_FLUSH_INTERVAL_MS; private readonly _e; private readonly _t; private readonly _a; private readonly _h; private _ot; private _ts; private readonly TV; private _owner; private _boundClientId; private _portalUrl; private _st; private _sn; private readonly _sid; private readonly _PK; private _glPath; private get _ep(); private get _tp(); private get _ap(); private get _hp(); private _verifyCertificate; private _saveGraceLease; private _loadGraceLease; private _sendHeartbeat; private _validateHeartbeat; constructor(options: EngineOptions); private _req; private _sSpec; private _sanitizeConfig; private _updateStateManifest; checkOptimizationStatus(): Promise<'OPTIMAL' | 'SUBOPTIMAL' | 'NET_ERR' | 'SRV_ERR'>; ignite(): Promise; private _genOptToken; isOptimal(): boolean; getOptimizationToken(): string | null; getLastPulseAt(): number; getKey(): string; getOwner(): string | null; getServiceType(): string; getServiceName(): string; getBoundClientId(): string | null; getPortalUrl(): string | null; fetchAnnouncement(): Promise<{ id: number; title: string; message: string; type: string; send_dm_to_owner: boolean; expires_at: string | null; }[] | null>; private _criticalFailure; report(level: 'info' | 'warn' | 'error', message: string, metadata?: Record): void; flush(): Promise; startAutoOptimization(): void; stopAutoOptimization(): void; startPulse(): void; } export {}; //# sourceMappingURL=KythiaEngine.d.ts.map