/// Public asset and world model types used by the Wolf3D engine.
///
/// Import this library when you need access to parsed levels, sprites, music,
/// frame buffers, geometry helpers, and version metadata without bringing in
/// the full engine runtime.
library;

export 'src/data/data_version.dart' show DataVersion;
export 'src/data_types/cardinal_direction.dart' show CardinalDirection;
export 'src/data_types/color_palette.dart' show ColorPalette;
export 'src/data_types/coordinate_2d.dart' show Coordinate2D;
export 'src/data_types/difficulty.dart' show Difficulty;
export 'src/data_types/enemy_animation.dart'
    show EnemyAnimation, EnemyAnimationMap;
export 'src/data_types/enemy_map_data.dart' show EnemyMapData;
export 'src/data_types/episode.dart' show Episode;
export 'src/data_types/frame_buffer.dart' show FrameBuffer;
export 'src/data_types/game_file.dart' show GameFile;
export 'src/data_types/game_version.dart' show GameVersion;
export 'src/data_types/image.dart' show VgaImage;
export 'src/data_types/map_objects.dart' show MapObject;
export 'src/data_types/sound.dart' show PcmSound, ImfMusic, ImfInstruction;
export 'src/data_types/sprite.dart' hide Matrix;
export 'src/data_types/sprite_frame_range.dart' show SpriteFrameRange;
export 'src/data_types/wolf_level.dart' show WolfLevel;
export 'src/data_types/wolfenstein_data.dart' show WolfensteinData;
// Registry public surface
export 'src/registry/asset_registry.dart' show AssetRegistry;
export 'src/registry/built_in/retail_asset_registry.dart'
    show RetailAssetRegistry;
export 'src/registry/built_in/shareware_asset_registry.dart'
    show SharewareAssetRegistry;
export 'src/registry/keys/entity_key.dart' show EntityKey;
export 'src/registry/keys/hud_key.dart' show HudKey;
export 'src/registry/keys/menu_pic_key.dart' show MenuPicKey;
export 'src/registry/keys/music_key.dart' show Music;
export 'src/registry/keys/sfx_key.dart' show SoundEffect;
export 'src/registry/modules/entity_asset_module.dart'
    show EntityAssetModule, EntityAssetDefinition;
export 'src/registry/modules/hud_module.dart' show HudModule, HudAssetRef;
export 'src/registry/modules/menu_pic_module.dart'
    show MenuPicModule, MenuPicRef;
export 'src/registry/modules/music_module.dart' show MusicModule, MusicRoute;
export 'src/registry/modules/sfx_module.dart' show SfxModule, SoundAssetRef;
export 'src/registry/registry_resolver.dart'
    show
        AssetRegistryResolver,
        BuiltInAssetRegistryResolver,
        RegistrySelectionContext;
