mirrored_repositories/espresso-cash-public/packages/solana_mobile_wallet/example/lib
// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark

part of 'bloc.dart';

// **************************************************************************
// FreezedGenerator
// **************************************************************************

T _$identity<T>(T value) => value;

final _privateConstructorUsedError = UnsupportedError(
    'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods');

/// @nodoc
mixin _$MobileWalletState {
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() none,
    required TResult Function() sessionTerminated,
    required TResult Function(RemoteRequest request) remote,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? none,
    TResult? Function()? sessionTerminated,
    TResult? Function(RemoteRequest request)? remote,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? none,
    TResult Function()? sessionTerminated,
    TResult Function(RemoteRequest request)? remote,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(None value) none,
    required TResult Function(SessionTerminated value) sessionTerminated,
    required TResult Function(Remote value) remote,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(None value)? none,
    TResult? Function(SessionTerminated value)? sessionTerminated,
    TResult? Function(Remote value)? remote,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(None value)? none,
    TResult Function(SessionTerminated value)? sessionTerminated,
    TResult Function(Remote value)? remote,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $MobileWalletStateCopyWith<$Res> {
  factory $MobileWalletStateCopyWith(
          MobileWalletState value, $Res Function(MobileWalletState) then) =
      _$MobileWalletStateCopyWithImpl<$Res, MobileWalletState>;
}

/// @nodoc
class _$MobileWalletStateCopyWithImpl<$Res, $Val extends MobileWalletState>
    implements $MobileWalletStateCopyWith<$Res> {
  _$MobileWalletStateCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;
}

/// @nodoc
abstract class _$$NoneCopyWith<$Res> {
  factory _$$NoneCopyWith(_$None value, $Res Function(_$None) then) =
      __$$NoneCopyWithImpl<$Res>;
}

/// @nodoc
class __$$NoneCopyWithImpl<$Res>
    extends _$MobileWalletStateCopyWithImpl<$Res, _$None>
    implements _$$NoneCopyWith<$Res> {
  __$$NoneCopyWithImpl(_$None _value, $Res Function(_$None) _then)
      : super(_value, _then);
}

/// @nodoc

class _$None implements None {
  const _$None();

  @override
  String toString() {
    return 'MobileWalletState.none()';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType && other is _$None);
  }

  @override
  int get hashCode => runtimeType.hashCode;

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() none,
    required TResult Function() sessionTerminated,
    required TResult Function(RemoteRequest request) remote,
  }) {
    return none();
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? none,
    TResult? Function()? sessionTerminated,
    TResult? Function(RemoteRequest request)? remote,
  }) {
    return none?.call();
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? none,
    TResult Function()? sessionTerminated,
    TResult Function(RemoteRequest request)? remote,
    required TResult orElse(),
  }) {
    if (none != null) {
      return none();
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(None value) none,
    required TResult Function(SessionTerminated value) sessionTerminated,
    required TResult Function(Remote value) remote,
  }) {
    return none(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(None value)? none,
    TResult? Function(SessionTerminated value)? sessionTerminated,
    TResult? Function(Remote value)? remote,
  }) {
    return none?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(None value)? none,
    TResult Function(SessionTerminated value)? sessionTerminated,
    TResult Function(Remote value)? remote,
    required TResult orElse(),
  }) {
    if (none != null) {
      return none(this);
    }
    return orElse();
  }
}

abstract class None implements MobileWalletState {
  const factory None() = _$None;
}

/// @nodoc
abstract class _$$SessionTerminatedCopyWith<$Res> {
  factory _$$SessionTerminatedCopyWith(
          _$SessionTerminated value, $Res Function(_$SessionTerminated) then) =
      __$$SessionTerminatedCopyWithImpl<$Res>;
}

/// @nodoc
class __$$SessionTerminatedCopyWithImpl<$Res>
    extends _$MobileWalletStateCopyWithImpl<$Res, _$SessionTerminated>
    implements _$$SessionTerminatedCopyWith<$Res> {
  __$$SessionTerminatedCopyWithImpl(
      _$SessionTerminated _value, $Res Function(_$SessionTerminated) _then)
      : super(_value, _then);
}

/// @nodoc

class _$SessionTerminated implements SessionTerminated {
  const _$SessionTerminated();

  @override
  String toString() {
    return 'MobileWalletState.sessionTerminated()';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType && other is _$SessionTerminated);
  }

  @override
  int get hashCode => runtimeType.hashCode;

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() none,
    required TResult Function() sessionTerminated,
    required TResult Function(RemoteRequest request) remote,
  }) {
    return sessionTerminated();
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? none,
    TResult? Function()? sessionTerminated,
    TResult? Function(RemoteRequest request)? remote,
  }) {
    return sessionTerminated?.call();
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? none,
    TResult Function()? sessionTerminated,
    TResult Function(RemoteRequest request)? remote,
    required TResult orElse(),
  }) {
    if (sessionTerminated != null) {
      return sessionTerminated();
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(None value) none,
    required TResult Function(SessionTerminated value) sessionTerminated,
    required TResult Function(Remote value) remote,
  }) {
    return sessionTerminated(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(None value)? none,
    TResult? Function(SessionTerminated value)? sessionTerminated,
    TResult? Function(Remote value)? remote,
  }) {
    return sessionTerminated?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(None value)? none,
    TResult Function(SessionTerminated value)? sessionTerminated,
    TResult Function(Remote value)? remote,
    required TResult orElse(),
  }) {
    if (sessionTerminated != null) {
      return sessionTerminated(this);
    }
    return orElse();
  }
}

abstract class SessionTerminated implements MobileWalletState {
  const factory SessionTerminated() = _$SessionTerminated;
}

/// @nodoc
abstract class _$$RemoteCopyWith<$Res> {
  factory _$$RemoteCopyWith(_$Remote value, $Res Function(_$Remote) then) =
      __$$RemoteCopyWithImpl<$Res>;
  @useResult
  $Res call({RemoteRequest request});

  $RemoteRequestCopyWith<$Res> get request;
}

/// @nodoc
class __$$RemoteCopyWithImpl<$Res>
    extends _$MobileWalletStateCopyWithImpl<$Res, _$Remote>
    implements _$$RemoteCopyWith<$Res> {
  __$$RemoteCopyWithImpl(_$Remote _value, $Res Function(_$Remote) _then)
      : super(_value, _then);

  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? request = null,
  }) {
    return _then(_$Remote(
      null == request
          ? _value.request
          : request // ignore: cast_nullable_to_non_nullable
              as RemoteRequest,
    ));
  }

  @override
  @pragma('vm:prefer-inline')
  $RemoteRequestCopyWith<$Res> get request {
    return $RemoteRequestCopyWith<$Res>(_value.request, (value) {
      return _then(_value.copyWith(request: value));
    });
  }
}

/// @nodoc

class _$Remote implements Remote {
  const _$Remote(this.request);

  @override
  final RemoteRequest request;

  @override
  String toString() {
    return 'MobileWalletState.remote(request: $request)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$Remote &&
            (identical(other.request, request) || other.request == request));
  }

  @override
  int get hashCode => Object.hash(runtimeType, request);

  @JsonKey(ignore: true)
  @override
  @pragma('vm:prefer-inline')
  _$$RemoteCopyWith<_$Remote> get copyWith =>
      __$$RemoteCopyWithImpl<_$Remote>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() none,
    required TResult Function() sessionTerminated,
    required TResult Function(RemoteRequest request) remote,
  }) {
    return remote(request);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? none,
    TResult? Function()? sessionTerminated,
    TResult? Function(RemoteRequest request)? remote,
  }) {
    return remote?.call(request);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? none,
    TResult Function()? sessionTerminated,
    TResult Function(RemoteRequest request)? remote,
    required TResult orElse(),
  }) {
    if (remote != null) {
      return remote(request);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(None value) none,
    required TResult Function(SessionTerminated value) sessionTerminated,
    required TResult Function(Remote value) remote,
  }) {
    return remote(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(None value)? none,
    TResult? Function(SessionTerminated value)? sessionTerminated,
    TResult? Function(Remote value)? remote,
  }) {
    return remote?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(None value)? none,
    TResult Function(SessionTerminated value)? sessionTerminated,
    TResult Function(Remote value)? remote,
    required TResult orElse(),
  }) {
    if (remote != null) {
      return remote(this);
    }
    return orElse();
  }
}

abstract class Remote implements MobileWalletState {
  const factory Remote(final RemoteRequest request) = _$Remote;

  RemoteRequest get request;
  @JsonKey(ignore: true)
  _$$RemoteCopyWith<_$Remote> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
mixin _$RemoteRequest {
  Object get request => throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(AuthorizeRequest request) authorizeDapp,
    required TResult Function(SignPayloadsRequest request) signPayloads,
    required TResult Function(SignAndSendTransactionsRequest request)
        signTransactionsForSending,
    required TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)
        sendTransactions,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeRequest request)? authorizeDapp,
    TResult? Function(SignPayloadsRequest request)? signPayloads,
    TResult? Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult? Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(AuthorizeRequest request)? authorizeDapp,
    TResult Function(SignPayloadsRequest request)? signPayloads,
    TResult Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(AuthorizeDapp value) authorizeDapp,
    required TResult Function(SignPayloads value) signPayloads,
    required TResult Function(SignTransactionsForSending value)
        signTransactionsForSending,
    required TResult Function(SendTransactions value) sendTransactions,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeDapp value)? authorizeDapp,
    TResult? Function(SignPayloads value)? signPayloads,
    TResult? Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult? Function(SendTransactions value)? sendTransactions,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(AuthorizeDapp value)? authorizeDapp,
    TResult Function(SignPayloads value)? signPayloads,
    TResult Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult Function(SendTransactions value)? sendTransactions,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $RemoteRequestCopyWith<$Res> {
  factory $RemoteRequestCopyWith(
          RemoteRequest value, $Res Function(RemoteRequest) then) =
      _$RemoteRequestCopyWithImpl<$Res, RemoteRequest>;
}

/// @nodoc
class _$RemoteRequestCopyWithImpl<$Res, $Val extends RemoteRequest>
    implements $RemoteRequestCopyWith<$Res> {
  _$RemoteRequestCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;
}

/// @nodoc
abstract class _$$AuthorizeDappCopyWith<$Res> {
  factory _$$AuthorizeDappCopyWith(
          _$AuthorizeDapp value, $Res Function(_$AuthorizeDapp) then) =
      __$$AuthorizeDappCopyWithImpl<$Res>;
  @useResult
  $Res call({AuthorizeRequest request});

  $AuthorizeRequestCopyWith<$Res> get request;
}

/// @nodoc
class __$$AuthorizeDappCopyWithImpl<$Res>
    extends _$RemoteRequestCopyWithImpl<$Res, _$AuthorizeDapp>
    implements _$$AuthorizeDappCopyWith<$Res> {
  __$$AuthorizeDappCopyWithImpl(
      _$AuthorizeDapp _value, $Res Function(_$AuthorizeDapp) _then)
      : super(_value, _then);

  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? request = null,
  }) {
    return _then(_$AuthorizeDapp(
      request: null == request
          ? _value.request
          : request // ignore: cast_nullable_to_non_nullable
              as AuthorizeRequest,
    ));
  }

  @override
  @pragma('vm:prefer-inline')
  $AuthorizeRequestCopyWith<$Res> get request {
    return $AuthorizeRequestCopyWith<$Res>(_value.request, (value) {
      return _then(_value.copyWith(request: value));
    });
  }
}

/// @nodoc

class _$AuthorizeDapp implements AuthorizeDapp {
  const _$AuthorizeDapp({required this.request});

  @override
  final AuthorizeRequest request;

  @override
  String toString() {
    return 'RemoteRequest.authorizeDapp(request: $request)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$AuthorizeDapp &&
            (identical(other.request, request) || other.request == request));
  }

  @override
  int get hashCode => Object.hash(runtimeType, request);

  @JsonKey(ignore: true)
  @override
  @pragma('vm:prefer-inline')
  _$$AuthorizeDappCopyWith<_$AuthorizeDapp> get copyWith =>
      __$$AuthorizeDappCopyWithImpl<_$AuthorizeDapp>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(AuthorizeRequest request) authorizeDapp,
    required TResult Function(SignPayloadsRequest request) signPayloads,
    required TResult Function(SignAndSendTransactionsRequest request)
        signTransactionsForSending,
    required TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)
        sendTransactions,
  }) {
    return authorizeDapp(request);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeRequest request)? authorizeDapp,
    TResult? Function(SignPayloadsRequest request)? signPayloads,
    TResult? Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult? Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
  }) {
    return authorizeDapp?.call(request);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(AuthorizeRequest request)? authorizeDapp,
    TResult Function(SignPayloadsRequest request)? signPayloads,
    TResult Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
    required TResult orElse(),
  }) {
    if (authorizeDapp != null) {
      return authorizeDapp(request);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(AuthorizeDapp value) authorizeDapp,
    required TResult Function(SignPayloads value) signPayloads,
    required TResult Function(SignTransactionsForSending value)
        signTransactionsForSending,
    required TResult Function(SendTransactions value) sendTransactions,
  }) {
    return authorizeDapp(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeDapp value)? authorizeDapp,
    TResult? Function(SignPayloads value)? signPayloads,
    TResult? Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult? Function(SendTransactions value)? sendTransactions,
  }) {
    return authorizeDapp?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(AuthorizeDapp value)? authorizeDapp,
    TResult Function(SignPayloads value)? signPayloads,
    TResult Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult Function(SendTransactions value)? sendTransactions,
    required TResult orElse(),
  }) {
    if (authorizeDapp != null) {
      return authorizeDapp(this);
    }
    return orElse();
  }
}

abstract class AuthorizeDapp implements RemoteRequest {
  const factory AuthorizeDapp({required final AuthorizeRequest request}) =
      _$AuthorizeDapp;

  @override
  AuthorizeRequest get request;
  @JsonKey(ignore: true)
  _$$AuthorizeDappCopyWith<_$AuthorizeDapp> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$SignPayloadsCopyWith<$Res> {
  factory _$$SignPayloadsCopyWith(
          _$SignPayloads value, $Res Function(_$SignPayloads) then) =
      __$$SignPayloadsCopyWithImpl<$Res>;
  @useResult
  $Res call({SignPayloadsRequest request});

  $SignPayloadsRequestCopyWith<$Res> get request;
}

/// @nodoc
class __$$SignPayloadsCopyWithImpl<$Res>
    extends _$RemoteRequestCopyWithImpl<$Res, _$SignPayloads>
    implements _$$SignPayloadsCopyWith<$Res> {
  __$$SignPayloadsCopyWithImpl(
      _$SignPayloads _value, $Res Function(_$SignPayloads) _then)
      : super(_value, _then);

  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? request = null,
  }) {
    return _then(_$SignPayloads(
      request: null == request
          ? _value.request
          : request // ignore: cast_nullable_to_non_nullable
              as SignPayloadsRequest,
    ));
  }

  @override
  @pragma('vm:prefer-inline')
  $SignPayloadsRequestCopyWith<$Res> get request {
    return $SignPayloadsRequestCopyWith<$Res>(_value.request, (value) {
      return _then(_value.copyWith(request: value));
    });
  }
}

/// @nodoc

class _$SignPayloads implements SignPayloads {
  const _$SignPayloads({required this.request});

  @override
  final SignPayloadsRequest request;

  @override
  String toString() {
    return 'RemoteRequest.signPayloads(request: $request)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$SignPayloads &&
            (identical(other.request, request) || other.request == request));
  }

  @override
  int get hashCode => Object.hash(runtimeType, request);

  @JsonKey(ignore: true)
  @override
  @pragma('vm:prefer-inline')
  _$$SignPayloadsCopyWith<_$SignPayloads> get copyWith =>
      __$$SignPayloadsCopyWithImpl<_$SignPayloads>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(AuthorizeRequest request) authorizeDapp,
    required TResult Function(SignPayloadsRequest request) signPayloads,
    required TResult Function(SignAndSendTransactionsRequest request)
        signTransactionsForSending,
    required TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)
        sendTransactions,
  }) {
    return signPayloads(request);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeRequest request)? authorizeDapp,
    TResult? Function(SignPayloadsRequest request)? signPayloads,
    TResult? Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult? Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
  }) {
    return signPayloads?.call(request);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(AuthorizeRequest request)? authorizeDapp,
    TResult Function(SignPayloadsRequest request)? signPayloads,
    TResult Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
    required TResult orElse(),
  }) {
    if (signPayloads != null) {
      return signPayloads(request);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(AuthorizeDapp value) authorizeDapp,
    required TResult Function(SignPayloads value) signPayloads,
    required TResult Function(SignTransactionsForSending value)
        signTransactionsForSending,
    required TResult Function(SendTransactions value) sendTransactions,
  }) {
    return signPayloads(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeDapp value)? authorizeDapp,
    TResult? Function(SignPayloads value)? signPayloads,
    TResult? Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult? Function(SendTransactions value)? sendTransactions,
  }) {
    return signPayloads?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(AuthorizeDapp value)? authorizeDapp,
    TResult Function(SignPayloads value)? signPayloads,
    TResult Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult Function(SendTransactions value)? sendTransactions,
    required TResult orElse(),
  }) {
    if (signPayloads != null) {
      return signPayloads(this);
    }
    return orElse();
  }
}

abstract class SignPayloads implements RemoteRequest {
  const factory SignPayloads({required final SignPayloadsRequest request}) =
      _$SignPayloads;

  @override
  SignPayloadsRequest get request;
  @JsonKey(ignore: true)
  _$$SignPayloadsCopyWith<_$SignPayloads> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$SignTransactionsForSendingCopyWith<$Res> {
  factory _$$SignTransactionsForSendingCopyWith(
          _$SignTransactionsForSending value,
          $Res Function(_$SignTransactionsForSending) then) =
      __$$SignTransactionsForSendingCopyWithImpl<$Res>;
  @useResult
  $Res call({SignAndSendTransactionsRequest request});

  $SignAndSendTransactionsRequestCopyWith<$Res> get request;
}

/// @nodoc
class __$$SignTransactionsForSendingCopyWithImpl<$Res>
    extends _$RemoteRequestCopyWithImpl<$Res, _$SignTransactionsForSending>
    implements _$$SignTransactionsForSendingCopyWith<$Res> {
  __$$SignTransactionsForSendingCopyWithImpl(
      _$SignTransactionsForSending _value,
      $Res Function(_$SignTransactionsForSending) _then)
      : super(_value, _then);

  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? request = null,
  }) {
    return _then(_$SignTransactionsForSending(
      request: null == request
          ? _value.request
          : request // ignore: cast_nullable_to_non_nullable
              as SignAndSendTransactionsRequest,
    ));
  }

  @override
  @pragma('vm:prefer-inline')
  $SignAndSendTransactionsRequestCopyWith<$Res> get request {
    return $SignAndSendTransactionsRequestCopyWith<$Res>(_value.request,
        (value) {
      return _then(_value.copyWith(request: value));
    });
  }
}

/// @nodoc

class _$SignTransactionsForSending implements SignTransactionsForSending {
  const _$SignTransactionsForSending({required this.request});

  @override
  final SignAndSendTransactionsRequest request;

  @override
  String toString() {
    return 'RemoteRequest.signTransactionsForSending(request: $request)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$SignTransactionsForSending &&
            (identical(other.request, request) || other.request == request));
  }

  @override
  int get hashCode => Object.hash(runtimeType, request);

  @JsonKey(ignore: true)
  @override
  @pragma('vm:prefer-inline')
  _$$SignTransactionsForSendingCopyWith<_$SignTransactionsForSending>
      get copyWith => __$$SignTransactionsForSendingCopyWithImpl<
          _$SignTransactionsForSending>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(AuthorizeRequest request) authorizeDapp,
    required TResult Function(SignPayloadsRequest request) signPayloads,
    required TResult Function(SignAndSendTransactionsRequest request)
        signTransactionsForSending,
    required TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)
        sendTransactions,
  }) {
    return signTransactionsForSending(request);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeRequest request)? authorizeDapp,
    TResult? Function(SignPayloadsRequest request)? signPayloads,
    TResult? Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult? Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
  }) {
    return signTransactionsForSending?.call(request);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(AuthorizeRequest request)? authorizeDapp,
    TResult Function(SignPayloadsRequest request)? signPayloads,
    TResult Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
    required TResult orElse(),
  }) {
    if (signTransactionsForSending != null) {
      return signTransactionsForSending(request);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(AuthorizeDapp value) authorizeDapp,
    required TResult Function(SignPayloads value) signPayloads,
    required TResult Function(SignTransactionsForSending value)
        signTransactionsForSending,
    required TResult Function(SendTransactions value) sendTransactions,
  }) {
    return signTransactionsForSending(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeDapp value)? authorizeDapp,
    TResult? Function(SignPayloads value)? signPayloads,
    TResult? Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult? Function(SendTransactions value)? sendTransactions,
  }) {
    return signTransactionsForSending?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(AuthorizeDapp value)? authorizeDapp,
    TResult Function(SignPayloads value)? signPayloads,
    TResult Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult Function(SendTransactions value)? sendTransactions,
    required TResult orElse(),
  }) {
    if (signTransactionsForSending != null) {
      return signTransactionsForSending(this);
    }
    return orElse();
  }
}

abstract class SignTransactionsForSending implements RemoteRequest {
  const factory SignTransactionsForSending(
          {required final SignAndSendTransactionsRequest request}) =
      _$SignTransactionsForSending;

  @override
  SignAndSendTransactionsRequest get request;
  @JsonKey(ignore: true)
  _$$SignTransactionsForSendingCopyWith<_$SignTransactionsForSending>
      get copyWith => throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$SendTransactionsCopyWith<$Res> {
  factory _$$SendTransactionsCopyWith(
          _$SendTransactions value, $Res Function(_$SendTransactions) then) =
      __$$SendTransactionsCopyWithImpl<$Res>;
  @useResult
  $Res call(
      {SignAndSendTransactionsRequest request,
      List<Uint8List> signatures,
      List<Uint8List> signedTransactions});

  $SignAndSendTransactionsRequestCopyWith<$Res> get request;
}

/// @nodoc
class __$$SendTransactionsCopyWithImpl<$Res>
    extends _$RemoteRequestCopyWithImpl<$Res, _$SendTransactions>
    implements _$$SendTransactionsCopyWith<$Res> {
  __$$SendTransactionsCopyWithImpl(
      _$SendTransactions _value, $Res Function(_$SendTransactions) _then)
      : super(_value, _then);

  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? request = null,
    Object? signatures = null,
    Object? signedTransactions = null,
  }) {
    return _then(_$SendTransactions(
      request: null == request
          ? _value.request
          : request // ignore: cast_nullable_to_non_nullable
              as SignAndSendTransactionsRequest,
      signatures: null == signatures
          ? _value._signatures
          : signatures // ignore: cast_nullable_to_non_nullable
              as List<Uint8List>,
      signedTransactions: null == signedTransactions
          ? _value._signedTransactions
          : signedTransactions // ignore: cast_nullable_to_non_nullable
              as List<Uint8List>,
    ));
  }

  @override
  @pragma('vm:prefer-inline')
  $SignAndSendTransactionsRequestCopyWith<$Res> get request {
    return $SignAndSendTransactionsRequestCopyWith<$Res>(_value.request,
        (value) {
      return _then(_value.copyWith(request: value));
    });
  }
}

/// @nodoc

class _$SendTransactions implements SendTransactions {
  const _$SendTransactions(
      {required this.request,
      required final List<Uint8List> signatures,
      required final List<Uint8List> signedTransactions})
      : _signatures = signatures,
        _signedTransactions = signedTransactions;

  @override
  final SignAndSendTransactionsRequest request;
  final List<Uint8List> _signatures;
  @override
  List<Uint8List> get signatures {
    if (_signatures is EqualUnmodifiableListView) return _signatures;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_signatures);
  }

  final List<Uint8List> _signedTransactions;
  @override
  List<Uint8List> get signedTransactions {
    if (_signedTransactions is EqualUnmodifiableListView)
      return _signedTransactions;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_signedTransactions);
  }

  @override
  String toString() {
    return 'RemoteRequest.sendTransactions(request: $request, signatures: $signatures, signedTransactions: $signedTransactions)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$SendTransactions &&
            (identical(other.request, request) || other.request == request) &&
            const DeepCollectionEquality()
                .equals(other._signatures, _signatures) &&
            const DeepCollectionEquality()
                .equals(other._signedTransactions, _signedTransactions));
  }

  @override
  int get hashCode => Object.hash(
      runtimeType,
      request,
      const DeepCollectionEquality().hash(_signatures),
      const DeepCollectionEquality().hash(_signedTransactions));

  @JsonKey(ignore: true)
  @override
  @pragma('vm:prefer-inline')
  _$$SendTransactionsCopyWith<_$SendTransactions> get copyWith =>
      __$$SendTransactionsCopyWithImpl<_$SendTransactions>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(AuthorizeRequest request) authorizeDapp,
    required TResult Function(SignPayloadsRequest request) signPayloads,
    required TResult Function(SignAndSendTransactionsRequest request)
        signTransactionsForSending,
    required TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)
        sendTransactions,
  }) {
    return sendTransactions(request, signatures, signedTransactions);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeRequest request)? authorizeDapp,
    TResult? Function(SignPayloadsRequest request)? signPayloads,
    TResult? Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult? Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
  }) {
    return sendTransactions?.call(request, signatures, signedTransactions);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(AuthorizeRequest request)? authorizeDapp,
    TResult Function(SignPayloadsRequest request)? signPayloads,
    TResult Function(SignAndSendTransactionsRequest request)?
        signTransactionsForSending,
    TResult Function(SignAndSendTransactionsRequest request,
            List<Uint8List> signatures, List<Uint8List> signedTransactions)?
        sendTransactions,
    required TResult orElse(),
  }) {
    if (sendTransactions != null) {
      return sendTransactions(request, signatures, signedTransactions);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(AuthorizeDapp value) authorizeDapp,
    required TResult Function(SignPayloads value) signPayloads,
    required TResult Function(SignTransactionsForSending value)
        signTransactionsForSending,
    required TResult Function(SendTransactions value) sendTransactions,
  }) {
    return sendTransactions(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(AuthorizeDapp value)? authorizeDapp,
    TResult? Function(SignPayloads value)? signPayloads,
    TResult? Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult? Function(SendTransactions value)? sendTransactions,
  }) {
    return sendTransactions?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(AuthorizeDapp value)? authorizeDapp,
    TResult Function(SignPayloads value)? signPayloads,
    TResult Function(SignTransactionsForSending value)?
        signTransactionsForSending,
    TResult Function(SendTransactions value)? sendTransactions,
    required TResult orElse(),
  }) {
    if (sendTransactions != null) {
      return sendTransactions(this);
    }
    return orElse();
  }
}

abstract class SendTransactions implements RemoteRequest {
  const factory SendTransactions(
      {required final SignAndSendTransactionsRequest request,
      required final List<Uint8List> signatures,
      required final List<Uint8List> signedTransactions}) = _$SendTransactions;

  @override
  SignAndSendTransactionsRequest get request;
  List<Uint8List> get signatures;
  List<Uint8List> get signedTransactions;
  @JsonKey(ignore: true)
  _$$SendTransactionsCopyWith<_$SendTransactions> get copyWith =>
      throw _privateConstructorUsedError;
}
