// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.12.0.

// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

import 'frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
part 'lib.freezed.dart';

@freezed
sealed class BridgeError with _$BridgeError implements FrbException {
  const BridgeError._();

  /// The caller submitted a malformed command DTO.
  const factory BridgeError.invalidCommand(String field0) =
      BridgeError_InvalidCommand;

  /// Hostname resolution failed. Distinct from `Connection` so the
  /// UI can show a meaningful "Server not found" message.
  const factory BridgeError.dnsFailed({
    /// The hostname (or `host:port`) the caller submitted.
    required String host,

    /// Reason from the platform resolver.
    required String reason,
  }) = BridgeError_DnsFailed;

  /// Connection layer failure (typed-mapped from CoreError).
  const factory BridgeError.connection(String field0) = BridgeError_Connection;

  /// Operation requires an active connection.
  const factory BridgeError.notConnected() = BridgeError_NotConnected;

  /// Already connected; DEC-006 forbids a second concurrent
  /// connection.
  const factory BridgeError.alreadyConnected() = BridgeError_AlreadyConnected;

  /// An unmapped error escaped the subsystem boundary. Production
  /// callers should never see this; if they do, it is a mapping
  /// bug here.
  const factory BridgeError.unmapped(String field0) = BridgeError_Unmapped;
}
