///
import { PacketIdMap } from '../net';
import { WriteStream } from 'fs';
/**
* Information about the local version of the assets.
*/
interface VersionInfo {
clientVersion: string;
assetVersion: string;
}
/**
* A static class used to download the latest game assets and packet ids.
*/
export declare class Updater {
/**
* Creates a path from the `base` path to the GameServerConnection.as file.
* @param base The parent dir which contains the decompiled client source.
*/
static makeGSCPath(base: string): string;
/**
* Checks if the remote client version matches the local client version.
* @returns `true` if the `localVersion` does **not** match the remote version,
* @param localVersion The local version of the client.
*/
static isClientOutdated(localVersion: string): Promise;
/**
* Checks if the remote asset version matches the local asset version.
* @returns `true` if the `localVersion` does **not** match the remote version,
* @param localVersion The local version of the asset.
*/
static areAssetsOutdated(localVersion: string): Promise;
/**
* Downloads the latest client.swf into a buffer.
*/
static getClient(version: string, stream?: WriteStream): Promise;
/**
* Downdloads the latest GroundTypes.json into a buffer.
*/
static getGroundTypes(stream?: WriteStream): Promise;
/**
* Downloads the latest Objects.json into a buffer.
*/
static getObjects(stream?: WriteStream): Promise;
/**
* Gets the remote client version.
*/
static getRemoteClientVersion(): Promise;
/**
* Gets the remote asset version.
*/
static getRemoteAssetVersion(): Promise;
/**
* Gets the remote version of both the client and the assets.
*/
static getRemoteVersions(): Promise;
/**
* Unpacks the client. Returns the path
* which the client was unpacked into.
* @param swfPath The path to the swf file to unpack. E.g. `C:\\clients\\latest-client.swf`.
*/
static unpackSwf(swfPath: string): Promise;
/**
* Extracts the packet information from the given source.
* @param source The text containing the packet ids to extract.
*/
static extractPacketInfo(source: string): PacketIdMap;
}
export {};