import { ProjectLinkerInterface, ProjectConfig, ProjectInfo, ErrorType } from "./definitions";
import { Observable, Subject, BehaviorSubject } from "rxjs";
import { TapAppGeneratorSchema } from "../../schema/appconfig";
export declare class SocketIOProjectLinker implements ProjectLinkerInterface {
    socket: SocketIOClient.Socket;
    _config: ProjectConfig;
    _config$: Subject<ProjectConfig>;
    _projectInfo: Subject<ProjectInfo>;
    errors: Subject<ErrorType>;
    events: Subject<any>;
    connected: BehaviorSubject<boolean>;
    constructor();
    hasConfig(): boolean;
    readonly projectInfoChange: Subject<ProjectInfo>;
    sync(): void;
    readonly config: ProjectConfig;
    readonly configChange: Observable<ProjectConfig>;
    setAppConfig(data: TapAppGeneratorSchema): void;
    applyConfig(): void;
    generate(): void;
    serve(port?: number): void;
}
