/**
 * Creeps are your units. Creeps can move, harvest energy, construct structures, attack another creeps, and perform other actions. Each creep consists of up to 50 body parts with the following possible types:
 */ interface Creep extends RoomObject { readonly prototype : Creep ; /**
     * An array describing the creep’s body. Each element contains the following properties:
     * type: string
     * body part constant
     * hits: number
     * The remaining amount of hit points of this body part.
     */ body : BodyPartDefinition [ ] ; /**
     * An object with the creep's cargo contents:
     * energy: number
     * The current amount of energy the creep is carrying.
     */ carry : StoreDefinition ; /**
     * The total amount of resources the creep can carry.
     */ carryCapacity : number ; /**
     * The movement fatigue indicator. If it is greater than zero, the creep cannot move.
     */ fatigue : number ; /**
     * The current amount of hit points of the creep.
     */ hits : number ; /**
     * The maximum amount of hit points of the creep.
     */ hitsMax : number ; /**
     * A unique object identifier. You can use Game.getObjectById method to retrieve an object instance by its id.
     */ id : string ; /**
     * A shorthand to Memory.creeps[creep.name]. You can use it for quick access the creep’s specific memory data object.
     */ memory : any ; /**
     * Whether it is your creep or foe.
     */ my : boolean ; /**
     * Creep’s name. You can choose the name while creating a new creep, and it cannot be changed later. This name is a hash key to access the creep via the Game.creeps object.
     */ name : string ; /**
     * An object with the creep’s owner info
     */ owner : Owner ; /**
     * The link to the Room object. Always defined because creeps give visibility into the room they're in.
     */ room : Room ; /**
     * Whether this creep is still being spawned.
     */ spawning : boolean ; /**
     * The text message that the creep was saying at the last tick.
     */ saying : string ; /**
     * The remaining amount of game ticks after which the creep will die.
     */ ticksToLive : number ; returns attack ( target ) : number ; returns attackController ( target ) : number ; param target returns build ( target ) : number ; param methodName returns cancelOrder ( methodName ) : number ; param target returns claimController ( target ) : number ; param target dismantle ( target ) : number ; param resourceType param amount drop ( resourceType , amount ? ) : number ; param target returns generateSafeMode ( target ) : number ; param type getActiveBodyparts ( type ) : number ; param target harvest ( target ) : number ; param target heal ( target ) : number ; param direction move ( direction ) : number ; param path moveByPath ( path ) : number ; param x param y param opts moveTo ( x , y , opts ? ) : number ; param target param opts moveTo ( target , opts ? ) : number ; param enabled notifyWhenAttacked ( enabled ) : number ; param target pickup ( target ) : number ; param target rangedAttack ( target ) : number ; param target rangedHeal ( target ) : number ; /**
     * A ranged attack against all hostile creeps or structures within 3 squares range. Needs the RANGED_ATTACK body part. The attack power depends on the range to each target. Friendly units are not affected.
     */ rangedMassAttack ( ) : number ; param target repair ( target ) : number ; param target return reserveController ( target ) : number ; param message param set say ( message , toPublic ? ) : number ; param target param text returns signController ( target , text ) : number ; /**
     * Kill the creep immediately.
     */ suicide ( ) : number ; param target param resourceType param amount transfer ( target , resourceType , amount ? ) : number ; param target upgradeController ( target ) : number ; param target param resourceType param amount withdraw ( target , resourceType , amount ? ) : number ; } interface CreepConstructor extends _Constructor < Creep > , _ConstructorById < Creep > { } declare const Creep ;