import { CommandInterface } from '../Commands' ; export abstract class Variable { protected _name : string = '' ; protected _value : string = '' ; protected _reference : number = 0 ; protected _namedVariables : number = 0 ; protected _numberOfChildren : number = 0 ; public abstract loadNew ( name , type , runtime , callback ) ; public abstract listChildren ( runtime , count , start , callback ) ; public abstract loads ( type ) ; public abstract typename ( ) ; public abstract extendedTypename ( ) ; public name ( ) { return this . _name ; } public value ( ) { return this . _value ; } public reference ( ) { return this . _reference ; } public namedVariables ( ) { return this . _namedVariables ; } public indexedVariables ( ) { return this . _numberOfChildren ; } public setReference ( ref ) { this . _reference = ref ; } }