import { Observable } from 'rxjs';
import { VariableValue } from '../../../communication';
export interface RemoteVariableProtocol {
    connected: Observable<void>;
    variableStatesChanged: Observable<VariableValue[]>;
    variableValuesChanged: Observable<VariableValue[]>;
    virtualDeviceAlarmsChanged: Observable<any>;
    tryOpenVariables(variableNames: string[], appId: string): Observable<void>;
    tryStopVariables(variableNames: string[], appId: string): Observable<void>;
    writeVariable(variableName: string, value: any): Observable<void>;
    writeVariableWordByBit(variableName: string, index: number, value: number): Observable<void>;
    subscribeVariableStates(variableNames: string[]): Observable<void>;
    unsubscribeVariableStates(variableNames: string[]): Observable<void>;
    subscribeVirtualDeviceAlarms(appId: string): any;
    unsubscribeVirtualDeviceAlarms(appId: string): any;
}
