import { IDevice } from "lavva.exalushome/build/js/Services/Devices/IDevice";
import { ResponseResult } from "lavva.exalushome/build/js/Services/FieldChangeResult";
import { DiagnosticResult, DiagnosticErrorCode } from "./DiagnosticParams";
import { IDiagnosticService } from "./IDiagnosticService";
import { Status } from "lavva.exalushome/build/js/DataFrame";
export declare class DiagnosticService implements IDiagnosticService {
    private _connection;
    private _controllerConfigurationService;
    static readonly ServiceName: string;
    constructor();
    RunDiagnosticAsync(device: IDevice): Promise<DiagnosticResult | ResponseResult<DiagnosticErrorCode>>;
    RunDiagnosticAsync(deviceGuid: string): Promise<DiagnosticResult | ResponseResult<DiagnosticErrorCode>>;
    RepairDeviceAsync(diagnosticResult: DiagnosticResult): Promise<Status.OK | ResponseResult<DiagnosticErrorCode>>;
    GetServiceName(): string;
}
