import Base = require('sdk-base');
import { State } from '../const';
import { ApplicationRepresentation, ProcessRepresentation } from '../domain';
/**
 * Class ApplicationHandler
 */
export declare class ApplicationHandler extends Base {
    state: State;
    appRepresentation: ApplicationRepresentation & ProcessRepresentation;
    private nodejsStdout;
    private proc;
    readonly name: string;
    readonly appDir: string;
    readonly mode: string;
    readonly pid: any;
    startCount: number;
    constructor(applicationRepresentation: ApplicationRepresentation);
    /**
     * Start application through fork
     * @return {Promise<void>}
     */
    start(): Promise<void>;
    protected doFork(args: any): Promise<void>;
    /**
     * Stop application through kill
     * @return {Promise<void>}
     */
    stop(): Promise<void>;
    /**
     * Reload application through process message
     * @param processName
     * @return {Promise<void>}
     */
    reload(processName?: any): Promise<void>;
}
