///
///
import { EdgeImpulseApi } from "../../sdk/studio/api";
import { EventEmitter } from 'tsee';
import * as models from '../../sdk/studio';
export declare class RunnerDownloader extends EventEmitter<{
'build-progress': (msg: string) => void;
}> {
static getDeploymentType(forceTarget: string | undefined): Promise;
private _projectId;
private _impulseId;
private _api;
private _modelType;
private _deploymentType;
private _forceEngine;
constructor(opts: {
projectId: number;
impulseId: number;
modelType: models.KerasModelVariantEnum;
api: EdgeImpulseApi;
deploymentType: string;
forceEngine: string | undefined;
});
getLastDeploymentVersion(): Promise;
downloadDeployment(): Promise;
private buildModel;
}
export declare class RunnerModelPath {
private _projectId;
private _impulseId;
private _modelType;
private _deploymentTarget;
private _forceEngine;
constructor(opts: {
projectId: number;
impulseId: number;
modelType: models.KerasModelVariantEnum;
deploymentType: string;
forceEngine: string | undefined;
});
getModelPath(version: number): string;
}
export declare function downloadModel(opts: {
projectId: number;
impulseId: number;
api: EdgeImpulseApi;
variant: models.KerasModelVariantEnum;
deploymentType: string;
forcedEngine: string | undefined;
}): Promise<{
modelFile: string;
modelPath: RunnerModelPath;
}>;
export declare function downloadFile(url: string, outputPath: string): Promise;
export declare function untarFile(tarPath: string, outDir: string): Promise;