/** * A type-safe way to define properties. * https://www.typescriptlang.org/docs/handbook/mixins.html#alternative-pattern * @param target Object on which to add or modify properties * @param mixin Object with additional properties * @example * class CreepMixin extends Creep { * hasBodyparts(type: BodyPartConstant) { * return this.body.some((b) => b.type == type) * } * } * applyMixin(Creep, CreepMixin) */ export declare function applyMixin(target: ProtoObject, mixin: ProtoObject): void; interface ProtoObject { prototype: T; } export {};