///
import { ReadStream } from 'fs';
import { IRegistryInfo } from '../models/IRegistryInfo';
import { ICaptainDefinition } from '../models/ICaptainDefinition';
import { IVersionInfo } from '../models/IVersionInfo';
import { IAppDef } from '../models/AppDef';
import IBuildLogs from '../models/IBuildLogs';
export interface CaproverApiParams {
baseUrl: string;
password?: string;
debug?: boolean;
}
export declare class CaproverApi {
private authToken;
private http;
constructor({ baseUrl, password, debug, }: CaproverApiParams);
callApi(path: string, method: 'GET' | 'POST', data: any): Promise;
destroy(): void;
setAuthToken(authToken: string): void;
isLoggedIn(): boolean;
getAuthToken(password: string): Promise;
getCaptainInfo(): Promise;
updateRootDomain(rootDomain: string): Promise;
enableRootSsl(emailAddress: string): Promise;
forceSsl(isEnabled: boolean): Promise;
getAllApps(): Promise;
fetchBuildLogs(appName: string): Promise;
uploadAppData(appName: string, file: ReadStream, gitHash: string): Promise;
uploadCaptainDefinitionContent(appName: string, captainDefinition: ICaptainDefinition, gitHash: string, detached: boolean): Promise;
updateConfigAndSave(appName: string, appDefinition: IAppDef): Promise;
registerNewApp(appName: string, hasPersistentData: boolean): Promise;
deleteApp(appName: string): Promise;
enableSslForBaseDomain(appName: string): Promise;
attachNewCustomDomainToApp(appName: string, customDomain: string): Promise;
enableSslForCustomDomain(appName: string, customDomain: string): Promise;
removeCustomDomain(appName: string, customDomain: string): Promise;
getLoadBalancerInfo(): Promise;
getNetDataInfo(): Promise;
updateNetDataInfo(netDataInfo: any): Promise;
changePass(oldPassword: string, newPassword: string): Promise;
getVersionInfo(): Promise;
performUpdate(latestVersion: string): Promise;
getNginxConfig(): Promise;
setNginxConfig(customBase: string, customCaptain: string): Promise;
getUnusedImages(mostRecentLimit: number): Promise;
deleteImages(imageIds: string[]): Promise;
getDockerRegistries(): Promise;
enableSelfHostedDockerRegistry(): Promise;
disableSelfHostedDockerRegistry(): Promise;
addDockerRegistry(dockerRegistry: IRegistryInfo): Promise;
updateDockerRegistry(dockerRegistry: IRegistryInfo): Promise;
deleteDockerRegistry(registryId: string): Promise;
setDefaultPushDockerRegistry(registryId: string): Promise;
getAllNodes(): Promise;
addDockerNode(nodeType: string, privateKey: string, remoteNodeIpAddress: string, captainIpAddress: string): Promise;
}
//# sourceMappingURL=CaproverApi.d.ts.map