import { Callback, Dispatch, IObserverHandle, Message } from "@hpcc-js/util"; import { OJSRuntime } from "./ojsRuntime"; import { OJSVariableMessageType } from "./util"; export interface IObserver { pending(): any; fulfilled(value: any): any; rejected(error: any): any; } export declare class OJSVariableMessage extends Message { variable: OJSVariable; type: OJSVariableMessageType; value: any; constructor(variable: OJSVariable, type: OJSVariableMessageType, value: any); get canConflate(): boolean; conflate(other: OJSVariableMessage): boolean; } export interface Value { type: OJSVariableMessageType; value: any; } export interface VariableValue { variable: OJSVariable; type: OJSVariableMessageType; value: any; } export declare class OJSVariable implements IObserver { protected _ojsRuntime: OJSRuntime; protected _module: any; protected _cell: any; protected _dispatcher: Dispatch; private _id; private _uid; private _inspector; private _latest; private _value; private _valueResolve; constructor(_ojsRuntime: OJSRuntime, _module: any, _cell: any, foreign?: boolean); watch(callback: Callback): IObserverHandle; pending(): void; fulfilled(value: any): void; rejected(error: any): void; private variable; id(): string; uid(): string; pos(): { start: number; end: number; }; value(): Promise; latestValue(): Value; } //# sourceMappingURL=ojsVariable.d.ts.map