/**
 * An object representing the room in which your units and structures are in. It can be used to look around, find paths, etc. Every object in the room contains its linked Room instance in the room property.
 */ interface Room { readonly prototype : Room ; /**
     * The Controller structure of this room, if present, otherwise undefined.
     */ controller : Controller | undefined ; /**
     * Total amount of energy available in all spawns and extensions in the room.
     */ energyAvailable : number ; /**
     * Total amount of energyCapacity of all spawns and extensions in the room.
     */ energyCapacityAvailable : number ; /**
     * A shorthand to Memory.rooms[room.name]. You can use it for quick access the room’s specific memory data object.
     */ memory : any ; /**
     * One of the following constants:
     * MODE_SIMULATION, MODE_SURVIVAL, MODE_WORLD, MODE_ARENA
     */ mode : string ; /**
     * The name of the room.
     */ name : string ; /**
     * The Storage structure of this room, if present, otherwise undefined.
     */ storage : StructureStorage | undefined ; /**
     * The Terminal structure of this room, if present, otherwise undefined.
     */ terminal : Terminal | undefined ; /**
     * The RoomVisual object for this room.
     */ visual : RoomVisual ; param x param y param structureType returns createConstructionSite ( x , y , structureType ) : number ; param pos param structureType returns createConstructionSite ( pos , structureType ) : number ; param x param y param name param color param secondaryColor createFlag ( x , y , name ? , color ? , secondaryColor ? ) : number ; param pos param name param color param secondaryColor createFlag ( pos , name ? , color ? , secondaryColor ? ) : number ; param type param opts returns find < T > ( type , opts ? ) : T [ ] ; param room returns findExitTo ( room ) : number ; param fromPos param toPos param opts returns findPath ( fromPos , toPos , opts ? ) : PathStep [ ] ; param x param y returns getPositionAt ( x , y ) : RoomPosition | null ; param x param y returns lookAt ( x , y ) : LookAtResult [ ] ; param target returns lookAt ( target ) : LookAtResult [ ] ; param top param left param bottom param right param asArray returns lookAtArea ( top , left , bottom , right , asArray ? ) : LookAtResultMatrix | LookAtResultWithPos [ ] ; param type param x param y returns lookForAt < T > ( type , x , y ) : T [ ] ; param type param target returns lookForAt < T > ( type , target ) : T [ ] ; param type param top param left param bottom param right returns lookForAtArea ( type , top , left , bottom , right , asArray ? ) : LookAtResultMatrix | LookAtResultWithPos [ ] ; } interface RoomConstructor { new ( id ) : Room ; serializePath ( path ) : string ; deserializePath ( path ) : PathStep [ ] ; } declare const Room ;