///
import { Controller } from '../controller';
import { EventEmitter } from 'events';
import { Tag } from '../tag';
import { Types } from '../enip/cip/data-types';
export declare class ControllerManager extends EventEmitter {
controllers: ManagedController[];
constructor();
addController(ipAddress: any, slot?: number, rpi?: number, connected?: boolean, retrySP?: number, opts?: {}): ManagedController;
getAllValues(): {};
}
export declare class ManagedController extends EventEmitter {
reconnect: boolean;
ipAddress: any;
slot: number;
opts: {};
rpi: number;
PLC: Controller | null;
tags: {
tagname: string;
program: string | null | undefined;
dataType: number;
arrayDims: number;
arraySize: number;
tag: Tag | null;
}[];
connected: boolean;
conncom: boolean;
retryTimeSP: number;
constructor(ipAddress: any, slot?: number, rpi?: number, connCom?: boolean, retrySP?: number, opts?: {});
connect(scanSize?: number): Promise;
addTagEvents(tag: any): void;
errorHandle(e: any): void;
addTag(tagname: any, program?: string | null, dataType?: Types, keepAlive?: number, arrayDims?: number, arraySize?: number): Tag | null;
disconnect(): Promise;
}