// lib/services/gnss/gnss_connection.dart

import 'dart:typed_data';

import 'package:geolocator/geolocator.dart';

import 'gnss_device_service.dart';

enum GnssConnectionState { disconnected, connecting, connected, error }

abstract class GnssConnection {
  GnssConnectionType get type;

  /// NMEA sorok stream-je — mindkét implementáció ezt adja
  Stream<String> get nmeaLines;
  Stream<Position> get positionStream;

  /// Kapcsolat állapota
  Stream<GnssConnectionState> get connectionState;

  Future<void> connect(String address);
  Future<void> disconnect();

  void dispose();

  void sendData(Uint8List data);
}
