/**
 * Turret - Child entity class for defensive turret systems
 * Turrets are child entities that attach to buildings/units for defense
 */
import { Child } from "./child.js";
/**
 * Turret class for defensive systems that attach to entities
 * Extends Child since turrets are child entities, not abilities
 */
export declare class Turret extends Child {
    get type(): string;
    readonly description: string;
    unlocked: boolean;
    readonly subtype: string;
    hexiteCost?: number;
    fluxCost?: number;
    buildTime?: number;
    hp?: number;
    internalId?: string;
    internalPath?: string;
    internalTags?: string[];
    internalSecondaryTags?: string[];
    apply?: () => void;
    unlocks?: string[];
    constructor(props?: Partial<Turret>);
    /** JSON.stringify() calls this automatically */
    toJSON(): Record<string, any>;
}
/**
 * Building Turret - Specialized turret for building defense
 */
export declare abstract class BuildingTurret extends Turret {
    constructor(props?: Partial<BuildingTurret>);
}
/**
 * Unit Turret - Specialized turret for unit add-ons (like Dreadnought modules)
 */
export declare abstract class UnitTurret extends Turret {
    constructor(props?: Partial<UnitTurret>);
}
//# sourceMappingURL=turret.d.ts.map