/// Web stub for save-game persistence: silently skips all I/O.
library;

import 'dart:typed_data';

import 'package:wolf_3d_dart/src/engine/save/save_game_persistence.dart';
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';

/// No-op implementation used on web, where dart:io is unavailable.
class DefaultSaveGamePersistence extends SaveGamePersistence {
  // ignore: avoid_unused_constructor_parameters
  DefaultSaveGamePersistence({String? directoryPath});

  @override
  Future<Uint8List?> load({
    required int slot,
    required GameVersion version,
  }) async => null;

  @override
  Future<bool> exists({
    required int slot,
    required GameVersion version,
  }) async => false;

  @override
  Future<void> save({
    required int slot,
    required GameVersion version,
    required Uint8List bytes,
  }) async {}
}
