import { Action, RulesJson, ScriptableField } from './types/index'; import { BaseNode } from './BaseNode'; declare abstract class Scriptable extends BaseNode implements ScriptableField { protected _events: { [key: string]: any; }; private _rules; getRules(): import("./types/Json").Items; private getCompiledRule; private getCompiledEvent; getState(forRestore?: boolean): T & { _dependents?: { id: string; propertyName: string | undefined; }[] | undefined; allowedComponents?: undefined; columnClassNames?: undefined; columnCount?: undefined; gridClassNames?: undefined; ':type': string; repeatable?: boolean | undefined; minOccur?: number | undefined; maxOccur?: number | undefined; properties: { [key: string]: any; }; index: number; parent: undefined; qualifiedName: any; id: string; }; protected applyUpdates(updates: any): void; protected executeAllRules(context: any): void; private getExpressionScope; private executeEvent; executeRule(event: Action, context: any): void; executeExpression(expr: string): any; change(event: Action, context: any): void; executeAction(action: Action): void; } export default Scriptable;