import { EventEmitter_EE } from './EventEmitter';
import { Callback } from './types/Callback';
import { Dict } from './types/Dict';
import { IPort } from './types/global/IPort';
import { Unlisten } from './types/Unlisten';
export type AnyEmitterEvents = EventEmitter_EE<Dict<any[]>> & Dict<any[]>;
export declare class RemotePort {
    private _port;
    private _call_id;
    private _watch_id;
    private _ref_id;
    private _ref;
    private _watch_emitter;
    private _call_emitter;
    private _valid;
    constructor(port: IPort);
    exec(data: any): void;
    call(method: string, data: any, callback: Callback<any>): void;
    watch(method: string, data: any, callback: Callback<any>): Unlisten;
    ref(method: string, data: any): RemotePort;
    terminate(): void;
    close(): void;
    valid(): boolean;
}
