import { Observable } from 'rxjs';
import { VariableValue } from './variable-value';
import { VariableState } from './variable-state';
export interface VariableCommunicator {
    openVariable(variableName: string, appId: string): Observable<VariableValue>;
    openVariables(variableNames: Array<string>, appId: string): Observable<Array<VariableValue>>;
    write(variableName: string, value: any): Observable<VariableValue>;
    writeWordByBit(variableName: string, index: number, value: number): Observable<VariableValue>;
    subscribeVariableState(variableName: string): Observable<VariableState>;
    subscribeVariableStates(variableNames: Array<string>): Observable<Array<VariableState>>;
    subscribeUserDeviceAlarms(appId: string): any;
    dispose(): any;
}
