Skip to content

ships.Function.hasWeaponDamageStats

github-actions[bot] edited this page Aug 26, 2026 · 74 revisions

@elite-dangerous-almanac/core / ships / hasWeaponDamageStats

Function: hasWeaponDamageStats()

hasWeaponDamageStats<T>(module): module is T & WeaponDamageStats

Defined in: src/ships/module-capabilities.ts:259

Test for a concrete weapon/tool damage figure.

Type Parameters

T

T extends OutfittingModuleStats

Parameters

module

T | null | undefined

A catalogue result or custom sparse record, including null.

Returns

module is T & WeaponDamageStats

Whether damage is numeric, narrowing to WeaponDamageStats. Other firing fields stay optional because continuous-fire and ammunition-free weapons legitimately omit different stats.

Example

import type { OutfittingModule } from '@elite-dangerous-almanac/core/ships/modules';
declare const record: OutfittingModule | null;

import { hasWeaponDamageStats } from '@elite-dangerous-almanac/core/ships/module-capabilities';
import { weaponMetrics } from '@elite-dangerous-almanac/core/ships/weapons';

if (hasWeaponDamageStats(record)) weaponMetrics(record);

API

Guides
astro
Classes (1)
ProceduralSystem

Properties

Accessors

Methods

Interfaces (16)
Type Aliases (3)
Variables (11)
Functions (37)
Subpath modules (3)
commodities
Interfaces (1)
Type Aliases (1)
Variables (3)
Functions (3)
equipment
Interfaces (6)
Type Aliases (8)
Variables (3)
Functions (10)
Subpath modules (2)
i18n
Interfaces (1)
Type Aliases (1)
Functions (17)
materials
Enumerations (2)
Interfaces (2)
Type Aliases (2)
Variables (9)
Functions (9)
ships
Classes (3)
BuildMetrics

Methods

LoadoutEditError

Constructors

Properties

Methods

ShipLoadout

Accessors

Methods

Interfaces (125)
Type Aliases (44)
Variables (10)
Functions (85)
Subpath modules (8)

Clone this wiki locally