/**
 * Mission - Co-op mission class for ZeroSpace missions
 * Ported from coop_mission.pkl with TypeScript mission definitions
 */
import { Entity } from "./entity.js";
export type CoopMissionType = "escort" | "survival" | "assault-defense";
/**
 * Base Co-op Mission class - extends Entity with mission-specific properties
 * Usage: new CoopMission("Critical Delivery", (mission) => { mission.missionType = "escort"; })
 */
export declare abstract class CoopMission extends Entity {
    get type(): string;
    uuid: string;
    name: string;
    _missionType: CoopMissionType;
    constructor(props?: Partial<CoopMission>);
    get missionType(): CoopMissionType;
    set missionType(value: CoopMissionType);
    get subtype(): CoopMissionType;
}
/**
 * Escort Mission - Protect or guide units to a destination
 */
export declare abstract class EscortMission extends CoopMission {
    get missionType(): CoopMissionType;
}
/**
 * Survival Mission - Defend against waves of enemies
 */
export declare abstract class SurvivalMission extends CoopMission {
    get missionType(): CoopMissionType;
}
/**
 * Assault-Defense Mission - Attack objectives while defending key positions
 */
export declare abstract class AssaultDefenseMission extends CoopMission {
    get missionType(): CoopMissionType;
}
//# sourceMappingURL=mission.d.ts.map