import Client from './Client'; import { FetchOptions } from 'ethpkg'; import { IRelease } from 'ethpkg'; import { PROCESS_EVENTS } from '../ProcessEvents'; import { StateListener } from '../StateListener'; export { PROCESS_EVENTS }; export interface FetchClientOptions { platform?: string; version?: string; onDownloadProgress?: (progress: number, release: IRelease) => void; listener?: StateListener; cachePath?: string; extract?: boolean; verify?: boolean; } export interface ClientManagerConfig { name: string; repository: string; filter?: { name: { includes?: Array; exclude?: Array; }; }; prefix?: string; binaryName?: string; unpack?: boolean; about?: { description?: string; }; cachePath?: string; } export declare class ClientManager { protected _config: ClientManagerConfig; private _packageManager; id: string; constructor(config: ClientManagerConfig); get name(): string; get binaryName(): string | undefined; get cachePath(): string; get prefix(): string | undefined; get description(): string | undefined; get repository(): string; get filter(): { name: { includes?: string[] | undefined; exclude?: string[] | undefined; }; } | undefined; get unpack(): boolean; private createFilter; getVersions(options?: FetchOptions): Promise>; resolve(query: string, listener: StateListener): Promise; private getPackage; getClient({ version, platform, onDownloadProgress, listener, cachePath, extract, verify }?: FetchClientOptions): Promise; getAllClients(): Promise>; private extractBinary; } //# sourceMappingURL=ClientManager.d.ts.map