import * as vscode from "vscode"; import { Output, GradleBuild, GradleConfig, GetDaemonsStatusReply, StopDaemonsReply, StopDaemonReply, GetProjectsReply } from "../proto/gradle_pb"; import { Logger } from "../logger"; import { GradleServer } from "../server"; import { RootProject } from "../rootProject/RootProject"; export declare class GradleClient implements vscode.Disposable { private readonly server; private readonly statusBarItem; private readonly clientLogger; private readonly connectDeadline; private grpcClient; private readonly _onDidConnect; private readonly _onDidConnectFail; readonly onDidConnect: vscode.Event; readonly onDidConnectFail: vscode.Event; private readonly waitForConnect; constructor(server: GradleServer, statusBarItem: vscode.StatusBarItem, clientLogger: Logger); private handleServerStop; handleServerStart: () => Thenable; handleClientReady: (err: Error | undefined) => Promise; private connectToServer; getBuild(rootProject: RootProject, gradleConfig: GradleConfig, showOutputColors?: boolean): Promise; getProjects(projectDir: string, gradleConfig: GradleConfig, projectName: string): Promise; runBuild(projectFolder: string, cancellationKey: string, args: ReadonlyArray, input?: string, javaDebugPort?: number, task?: vscode.Task, onOutput?: (output: Output) => void, showOutputColors?: boolean, title?: string, location?: vscode.ProgressLocation): Promise; cancelBuild(cancellationKey: string, task?: vscode.Task): Promise; cancelBuilds(): Promise; cancelProjects(cancellationKey: string): Promise; getDaemonsStatus(projectFolder: string, cancelToken: vscode.CancellationToken): Promise; stopDaemons(projectFolder: string): Promise; stopDaemon(pid: string): Promise; private handleRunBuildCancelled; private handleGetBuildCancelled; private handleConnectError; showRestartMessage(): Promise; close(): void; dispose(): void; }