import { type JournalEvent } from "../../JournalEvent.ts";
import type { ID } from "../types/ID.ts";
import { type StationService } from "../types/StationService.ts";
import type { StationType } from "../types/StationType.ts";
/**
 * Written when landing at landing pad in a space station, output, or surface settlement.
 *
 * The "anonymous docking" protocol comes into effect if you're either Wanted (ie have a local bounty)
 * or have an ActiveFine.
 */
export interface Docked extends JournalEvent<"Docked"> {
    /** The name of the station. */
    StationName: string;
    MarketID?: ID;
    SystemAddress?: ID;
    /** The type of the station. Not set in older journals. */
    StationType?: StationType;
    /** The name of the start system. */
    StarSystem?: string;
    /** True if landing with breached cockpit. */
    CockpitBreach?: boolean;
    /** The station's controlling faction. */
    StationFaction?: {
        Name: string;
        FactionState?: string;
    };
    StationAllegiance?: string;
    /** The station's primary economy. */
    StationEconomy?: string;
    StationEconomy_Localised?: string;
    /** List of station economies. */
    StationEconomies?: Array<{
        Name: string;
        Name_Localised?: string;
        Proportion: number;
    }>;
    StationGovernment?: string;
    StationGovernment_Localised?: string;
    DistFromStarLS?: number;
    StationServices?: StationService[];
    /** True if docking when wanted locally. */
    Wanted?: boolean;
    /** True if any fine is active. */
    ActiveFine?: boolean;
    LandingPads?: {
        Small: number;
        Medium: number;
        Large: number;
    };
    Taxi?: boolean;
    Multicrew?: boolean;
    StationState?: string;
    Security?: string;
    Security_Localised?: string;
}
