@:value({ cacheTimeOut : 30000 })new(cacheTimeOut:Int = 30000)
add(key:String, data:T):Void
exists(key:String):Bool
get(key:String):Null<T>
refreshTimeout(key:String):Void
remove(key:String):Void
reset():Void