// 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 'equipment_list_dto.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#adding-getters-and-methods-to-our-models');

EquipmentListDto _$EquipmentListDtoFromJson(Map<String, dynamic> json) {
  return _EquipmentListDto.fromJson(json);
}

/// @nodoc
mixin _$EquipmentListDto {
  int get id => throw _privateConstructorUsedError;
  @JsonKey(name: 'companies_id')
  int? get companiesId => throw _privateConstructorUsedError;
  @JsonKey(name: 'company_name')
  String? get companyName => throw _privateConstructorUsedError;
  @JsonKey(name: 'models_id')
  int? get modelsId => throw _privateConstructorUsedError;
  @JsonKey(name: 'model_name')
  String? get modelName => throw _privateConstructorUsedError;
  @JsonKey(name: 'vendor_name')
  String? get vendorName => throw _privateConstructorUsedError;
  @JsonKey(name: 'serial_number')
  String? get serialNumber => throw _privateConstructorUsedError;
  String? get barcode => throw _privateConstructorUsedError;
  @JsonKey(name: 'purchased_at')
  DateTime? get purchasedAt => throw _privateConstructorUsedError;
  @JsonKey(name: 'purchase_price')
  int? get purchasePrice => throw _privateConstructorUsedError;
  @JsonKey(name: 'warranty_number')
  String? get warrantyNumber => throw _privateConstructorUsedError;
  @JsonKey(name: 'warranty_started_at')
  DateTime? get warrantyStartedAt => throw _privateConstructorUsedError;
  @JsonKey(name: 'warranty_ended_at')
  DateTime? get warrantyEndedAt => throw _privateConstructorUsedError;
  String? get remark => throw _privateConstructorUsedError;
  @JsonKey(name: 'is_deleted')
  bool? get isDeleted => throw _privateConstructorUsedError;
  @JsonKey(name: 'registered_at')
  DateTime? get registeredAt => throw _privateConstructorUsedError;
  @JsonKey(name: 'updated_at')
  DateTime? get updatedAt => throw _privateConstructorUsedError;
  ModelDto? get model => throw _privateConstructorUsedError;

  /// Serializes this EquipmentListDto to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $EquipmentListDtoCopyWith<EquipmentListDto> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $EquipmentListDtoCopyWith<$Res> {
  factory $EquipmentListDtoCopyWith(
          EquipmentListDto value, $Res Function(EquipmentListDto) then) =
      _$EquipmentListDtoCopyWithImpl<$Res, EquipmentListDto>;
  @useResult
  $Res call(
      {int id,
      @JsonKey(name: 'companies_id') int? companiesId,
      @JsonKey(name: 'company_name') String? companyName,
      @JsonKey(name: 'models_id') int? modelsId,
      @JsonKey(name: 'model_name') String? modelName,
      @JsonKey(name: 'vendor_name') String? vendorName,
      @JsonKey(name: 'serial_number') String? serialNumber,
      String? barcode,
      @JsonKey(name: 'purchased_at') DateTime? purchasedAt,
      @JsonKey(name: 'purchase_price') int? purchasePrice,
      @JsonKey(name: 'warranty_number') String? warrantyNumber,
      @JsonKey(name: 'warranty_started_at') DateTime? warrantyStartedAt,
      @JsonKey(name: 'warranty_ended_at') DateTime? warrantyEndedAt,
      String? remark,
      @JsonKey(name: 'is_deleted') bool? isDeleted,
      @JsonKey(name: 'registered_at') DateTime? registeredAt,
      @JsonKey(name: 'updated_at') DateTime? updatedAt,
      ModelDto? model});

  $ModelDtoCopyWith<$Res>? get model;
}

/// @nodoc
class _$EquipmentListDtoCopyWithImpl<$Res, $Val extends EquipmentListDto>
    implements $EquipmentListDtoCopyWith<$Res> {
  _$EquipmentListDtoCopyWithImpl(this._value, this._then);

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

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? id = null,
    Object? companiesId = freezed,
    Object? companyName = freezed,
    Object? modelsId = freezed,
    Object? modelName = freezed,
    Object? vendorName = freezed,
    Object? serialNumber = freezed,
    Object? barcode = freezed,
    Object? purchasedAt = freezed,
    Object? purchasePrice = freezed,
    Object? warrantyNumber = freezed,
    Object? warrantyStartedAt = freezed,
    Object? warrantyEndedAt = freezed,
    Object? remark = freezed,
    Object? isDeleted = freezed,
    Object? registeredAt = freezed,
    Object? updatedAt = freezed,
    Object? model = freezed,
  }) {
    return _then(_value.copyWith(
      id: null == id
          ? _value.id
          : id // ignore: cast_nullable_to_non_nullable
              as int,
      companiesId: freezed == companiesId
          ? _value.companiesId
          : companiesId // ignore: cast_nullable_to_non_nullable
              as int?,
      companyName: freezed == companyName
          ? _value.companyName
          : companyName // ignore: cast_nullable_to_non_nullable
              as String?,
      modelsId: freezed == modelsId
          ? _value.modelsId
          : modelsId // ignore: cast_nullable_to_non_nullable
              as int?,
      modelName: freezed == modelName
          ? _value.modelName
          : modelName // ignore: cast_nullable_to_non_nullable
              as String?,
      vendorName: freezed == vendorName
          ? _value.vendorName
          : vendorName // ignore: cast_nullable_to_non_nullable
              as String?,
      serialNumber: freezed == serialNumber
          ? _value.serialNumber
          : serialNumber // ignore: cast_nullable_to_non_nullable
              as String?,
      barcode: freezed == barcode
          ? _value.barcode
          : barcode // ignore: cast_nullable_to_non_nullable
              as String?,
      purchasedAt: freezed == purchasedAt
          ? _value.purchasedAt
          : purchasedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      purchasePrice: freezed == purchasePrice
          ? _value.purchasePrice
          : purchasePrice // ignore: cast_nullable_to_non_nullable
              as int?,
      warrantyNumber: freezed == warrantyNumber
          ? _value.warrantyNumber
          : warrantyNumber // ignore: cast_nullable_to_non_nullable
              as String?,
      warrantyStartedAt: freezed == warrantyStartedAt
          ? _value.warrantyStartedAt
          : warrantyStartedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      warrantyEndedAt: freezed == warrantyEndedAt
          ? _value.warrantyEndedAt
          : warrantyEndedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      remark: freezed == remark
          ? _value.remark
          : remark // ignore: cast_nullable_to_non_nullable
              as String?,
      isDeleted: freezed == isDeleted
          ? _value.isDeleted
          : isDeleted // ignore: cast_nullable_to_non_nullable
              as bool?,
      registeredAt: freezed == registeredAt
          ? _value.registeredAt
          : registeredAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      updatedAt: freezed == updatedAt
          ? _value.updatedAt
          : updatedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      model: freezed == model
          ? _value.model
          : model // ignore: cast_nullable_to_non_nullable
              as ModelDto?,
    ) as $Val);
  }

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @override
  @pragma('vm:prefer-inline')
  $ModelDtoCopyWith<$Res>? get model {
    if (_value.model == null) {
      return null;
    }

    return $ModelDtoCopyWith<$Res>(_value.model!, (value) {
      return _then(_value.copyWith(model: value) as $Val);
    });
  }
}

/// @nodoc
abstract class _$$EquipmentListDtoImplCopyWith<$Res>
    implements $EquipmentListDtoCopyWith<$Res> {
  factory _$$EquipmentListDtoImplCopyWith(_$EquipmentListDtoImpl value,
          $Res Function(_$EquipmentListDtoImpl) then) =
      __$$EquipmentListDtoImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call(
      {int id,
      @JsonKey(name: 'companies_id') int? companiesId,
      @JsonKey(name: 'company_name') String? companyName,
      @JsonKey(name: 'models_id') int? modelsId,
      @JsonKey(name: 'model_name') String? modelName,
      @JsonKey(name: 'vendor_name') String? vendorName,
      @JsonKey(name: 'serial_number') String? serialNumber,
      String? barcode,
      @JsonKey(name: 'purchased_at') DateTime? purchasedAt,
      @JsonKey(name: 'purchase_price') int? purchasePrice,
      @JsonKey(name: 'warranty_number') String? warrantyNumber,
      @JsonKey(name: 'warranty_started_at') DateTime? warrantyStartedAt,
      @JsonKey(name: 'warranty_ended_at') DateTime? warrantyEndedAt,
      String? remark,
      @JsonKey(name: 'is_deleted') bool? isDeleted,
      @JsonKey(name: 'registered_at') DateTime? registeredAt,
      @JsonKey(name: 'updated_at') DateTime? updatedAt,
      ModelDto? model});

  @override
  $ModelDtoCopyWith<$Res>? get model;
}

/// @nodoc
class __$$EquipmentListDtoImplCopyWithImpl<$Res>
    extends _$EquipmentListDtoCopyWithImpl<$Res, _$EquipmentListDtoImpl>
    implements _$$EquipmentListDtoImplCopyWith<$Res> {
  __$$EquipmentListDtoImplCopyWithImpl(_$EquipmentListDtoImpl _value,
      $Res Function(_$EquipmentListDtoImpl) _then)
      : super(_value, _then);

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? id = null,
    Object? companiesId = freezed,
    Object? companyName = freezed,
    Object? modelsId = freezed,
    Object? modelName = freezed,
    Object? vendorName = freezed,
    Object? serialNumber = freezed,
    Object? barcode = freezed,
    Object? purchasedAt = freezed,
    Object? purchasePrice = freezed,
    Object? warrantyNumber = freezed,
    Object? warrantyStartedAt = freezed,
    Object? warrantyEndedAt = freezed,
    Object? remark = freezed,
    Object? isDeleted = freezed,
    Object? registeredAt = freezed,
    Object? updatedAt = freezed,
    Object? model = freezed,
  }) {
    return _then(_$EquipmentListDtoImpl(
      id: null == id
          ? _value.id
          : id // ignore: cast_nullable_to_non_nullable
              as int,
      companiesId: freezed == companiesId
          ? _value.companiesId
          : companiesId // ignore: cast_nullable_to_non_nullable
              as int?,
      companyName: freezed == companyName
          ? _value.companyName
          : companyName // ignore: cast_nullable_to_non_nullable
              as String?,
      modelsId: freezed == modelsId
          ? _value.modelsId
          : modelsId // ignore: cast_nullable_to_non_nullable
              as int?,
      modelName: freezed == modelName
          ? _value.modelName
          : modelName // ignore: cast_nullable_to_non_nullable
              as String?,
      vendorName: freezed == vendorName
          ? _value.vendorName
          : vendorName // ignore: cast_nullable_to_non_nullable
              as String?,
      serialNumber: freezed == serialNumber
          ? _value.serialNumber
          : serialNumber // ignore: cast_nullable_to_non_nullable
              as String?,
      barcode: freezed == barcode
          ? _value.barcode
          : barcode // ignore: cast_nullable_to_non_nullable
              as String?,
      purchasedAt: freezed == purchasedAt
          ? _value.purchasedAt
          : purchasedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      purchasePrice: freezed == purchasePrice
          ? _value.purchasePrice
          : purchasePrice // ignore: cast_nullable_to_non_nullable
              as int?,
      warrantyNumber: freezed == warrantyNumber
          ? _value.warrantyNumber
          : warrantyNumber // ignore: cast_nullable_to_non_nullable
              as String?,
      warrantyStartedAt: freezed == warrantyStartedAt
          ? _value.warrantyStartedAt
          : warrantyStartedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      warrantyEndedAt: freezed == warrantyEndedAt
          ? _value.warrantyEndedAt
          : warrantyEndedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      remark: freezed == remark
          ? _value.remark
          : remark // ignore: cast_nullable_to_non_nullable
              as String?,
      isDeleted: freezed == isDeleted
          ? _value.isDeleted
          : isDeleted // ignore: cast_nullable_to_non_nullable
              as bool?,
      registeredAt: freezed == registeredAt
          ? _value.registeredAt
          : registeredAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      updatedAt: freezed == updatedAt
          ? _value.updatedAt
          : updatedAt // ignore: cast_nullable_to_non_nullable
              as DateTime?,
      model: freezed == model
          ? _value.model
          : model // ignore: cast_nullable_to_non_nullable
              as ModelDto?,
    ));
  }
}

/// @nodoc
@JsonSerializable()
class _$EquipmentListDtoImpl implements _EquipmentListDto {
  const _$EquipmentListDtoImpl(
      {required this.id,
      @JsonKey(name: 'companies_id') this.companiesId,
      @JsonKey(name: 'company_name') this.companyName,
      @JsonKey(name: 'models_id') this.modelsId,
      @JsonKey(name: 'model_name') this.modelName,
      @JsonKey(name: 'vendor_name') this.vendorName,
      @JsonKey(name: 'serial_number') this.serialNumber,
      this.barcode,
      @JsonKey(name: 'purchased_at') this.purchasedAt,
      @JsonKey(name: 'purchase_price') this.purchasePrice,
      @JsonKey(name: 'warranty_number') this.warrantyNumber,
      @JsonKey(name: 'warranty_started_at') this.warrantyStartedAt,
      @JsonKey(name: 'warranty_ended_at') this.warrantyEndedAt,
      this.remark,
      @JsonKey(name: 'is_deleted') this.isDeleted,
      @JsonKey(name: 'registered_at') this.registeredAt,
      @JsonKey(name: 'updated_at') this.updatedAt,
      this.model});

  factory _$EquipmentListDtoImpl.fromJson(Map<String, dynamic> json) =>
      _$$EquipmentListDtoImplFromJson(json);

  @override
  final int id;
  @override
  @JsonKey(name: 'companies_id')
  final int? companiesId;
  @override
  @JsonKey(name: 'company_name')
  final String? companyName;
  @override
  @JsonKey(name: 'models_id')
  final int? modelsId;
  @override
  @JsonKey(name: 'model_name')
  final String? modelName;
  @override
  @JsonKey(name: 'vendor_name')
  final String? vendorName;
  @override
  @JsonKey(name: 'serial_number')
  final String? serialNumber;
  @override
  final String? barcode;
  @override
  @JsonKey(name: 'purchased_at')
  final DateTime? purchasedAt;
  @override
  @JsonKey(name: 'purchase_price')
  final int? purchasePrice;
  @override
  @JsonKey(name: 'warranty_number')
  final String? warrantyNumber;
  @override
  @JsonKey(name: 'warranty_started_at')
  final DateTime? warrantyStartedAt;
  @override
  @JsonKey(name: 'warranty_ended_at')
  final DateTime? warrantyEndedAt;
  @override
  final String? remark;
  @override
  @JsonKey(name: 'is_deleted')
  final bool? isDeleted;
  @override
  @JsonKey(name: 'registered_at')
  final DateTime? registeredAt;
  @override
  @JsonKey(name: 'updated_at')
  final DateTime? updatedAt;
  @override
  final ModelDto? model;

  @override
  String toString() {
    return 'EquipmentListDto(id: $id, companiesId: $companiesId, companyName: $companyName, modelsId: $modelsId, modelName: $modelName, vendorName: $vendorName, serialNumber: $serialNumber, barcode: $barcode, purchasedAt: $purchasedAt, purchasePrice: $purchasePrice, warrantyNumber: $warrantyNumber, warrantyStartedAt: $warrantyStartedAt, warrantyEndedAt: $warrantyEndedAt, remark: $remark, isDeleted: $isDeleted, registeredAt: $registeredAt, updatedAt: $updatedAt, model: $model)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$EquipmentListDtoImpl &&
            (identical(other.id, id) || other.id == id) &&
            (identical(other.companiesId, companiesId) ||
                other.companiesId == companiesId) &&
            (identical(other.companyName, companyName) ||
                other.companyName == companyName) &&
            (identical(other.modelsId, modelsId) ||
                other.modelsId == modelsId) &&
            (identical(other.modelName, modelName) ||
                other.modelName == modelName) &&
            (identical(other.vendorName, vendorName) ||
                other.vendorName == vendorName) &&
            (identical(other.serialNumber, serialNumber) ||
                other.serialNumber == serialNumber) &&
            (identical(other.barcode, barcode) || other.barcode == barcode) &&
            (identical(other.purchasedAt, purchasedAt) ||
                other.purchasedAt == purchasedAt) &&
            (identical(other.purchasePrice, purchasePrice) ||
                other.purchasePrice == purchasePrice) &&
            (identical(other.warrantyNumber, warrantyNumber) ||
                other.warrantyNumber == warrantyNumber) &&
            (identical(other.warrantyStartedAt, warrantyStartedAt) ||
                other.warrantyStartedAt == warrantyStartedAt) &&
            (identical(other.warrantyEndedAt, warrantyEndedAt) ||
                other.warrantyEndedAt == warrantyEndedAt) &&
            (identical(other.remark, remark) || other.remark == remark) &&
            (identical(other.isDeleted, isDeleted) ||
                other.isDeleted == isDeleted) &&
            (identical(other.registeredAt, registeredAt) ||
                other.registeredAt == registeredAt) &&
            (identical(other.updatedAt, updatedAt) ||
                other.updatedAt == updatedAt) &&
            (identical(other.model, model) || other.model == model));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hash(
      runtimeType,
      id,
      companiesId,
      companyName,
      modelsId,
      modelName,
      vendorName,
      serialNumber,
      barcode,
      purchasedAt,
      purchasePrice,
      warrantyNumber,
      warrantyStartedAt,
      warrantyEndedAt,
      remark,
      isDeleted,
      registeredAt,
      updatedAt,
      model);

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$EquipmentListDtoImplCopyWith<_$EquipmentListDtoImpl> get copyWith =>
      __$$EquipmentListDtoImplCopyWithImpl<_$EquipmentListDtoImpl>(
          this, _$identity);

  @override
  Map<String, dynamic> toJson() {
    return _$$EquipmentListDtoImplToJson(
      this,
    );
  }
}

abstract class _EquipmentListDto implements EquipmentListDto {
  const factory _EquipmentListDto(
      {required final int id,
      @JsonKey(name: 'companies_id') final int? companiesId,
      @JsonKey(name: 'company_name') final String? companyName,
      @JsonKey(name: 'models_id') final int? modelsId,
      @JsonKey(name: 'model_name') final String? modelName,
      @JsonKey(name: 'vendor_name') final String? vendorName,
      @JsonKey(name: 'serial_number') final String? serialNumber,
      final String? barcode,
      @JsonKey(name: 'purchased_at') final DateTime? purchasedAt,
      @JsonKey(name: 'purchase_price') final int? purchasePrice,
      @JsonKey(name: 'warranty_number') final String? warrantyNumber,
      @JsonKey(name: 'warranty_started_at') final DateTime? warrantyStartedAt,
      @JsonKey(name: 'warranty_ended_at') final DateTime? warrantyEndedAt,
      final String? remark,
      @JsonKey(name: 'is_deleted') final bool? isDeleted,
      @JsonKey(name: 'registered_at') final DateTime? registeredAt,
      @JsonKey(name: 'updated_at') final DateTime? updatedAt,
      final ModelDto? model}) = _$EquipmentListDtoImpl;

  factory _EquipmentListDto.fromJson(Map<String, dynamic> json) =
      _$EquipmentListDtoImpl.fromJson;

  @override
  int get id;
  @override
  @JsonKey(name: 'companies_id')
  int? get companiesId;
  @override
  @JsonKey(name: 'company_name')
  String? get companyName;
  @override
  @JsonKey(name: 'models_id')
  int? get modelsId;
  @override
  @JsonKey(name: 'model_name')
  String? get modelName;
  @override
  @JsonKey(name: 'vendor_name')
  String? get vendorName;
  @override
  @JsonKey(name: 'serial_number')
  String? get serialNumber;
  @override
  String? get barcode;
  @override
  @JsonKey(name: 'purchased_at')
  DateTime? get purchasedAt;
  @override
  @JsonKey(name: 'purchase_price')
  int? get purchasePrice;
  @override
  @JsonKey(name: 'warranty_number')
  String? get warrantyNumber;
  @override
  @JsonKey(name: 'warranty_started_at')
  DateTime? get warrantyStartedAt;
  @override
  @JsonKey(name: 'warranty_ended_at')
  DateTime? get warrantyEndedAt;
  @override
  String? get remark;
  @override
  @JsonKey(name: 'is_deleted')
  bool? get isDeleted;
  @override
  @JsonKey(name: 'registered_at')
  DateTime? get registeredAt;
  @override
  @JsonKey(name: 'updated_at')
  DateTime? get updatedAt;
  @override
  ModelDto? get model;

  /// Create a copy of EquipmentListDto
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$EquipmentListDtoImplCopyWith<_$EquipmentListDtoImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

EquipmentListResponseDto _$EquipmentListResponseDtoFromJson(
    Map<String, dynamic> json) {
  return _EquipmentListResponseDto.fromJson(json);
}

/// @nodoc
mixin _$EquipmentListResponseDto {
  List<EquipmentListDto> get items => throw _privateConstructorUsedError;
  int get total => throw _privateConstructorUsedError;
  int get page => throw _privateConstructorUsedError;
  @JsonKey(name: 'per_page')
  int get perPage => throw _privateConstructorUsedError;
  @JsonKey(name: 'total_pages')
  int get totalPages => throw _privateConstructorUsedError;

  /// Serializes this EquipmentListResponseDto to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of EquipmentListResponseDto
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $EquipmentListResponseDtoCopyWith<EquipmentListResponseDto> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $EquipmentListResponseDtoCopyWith<$Res> {
  factory $EquipmentListResponseDtoCopyWith(EquipmentListResponseDto value,
          $Res Function(EquipmentListResponseDto) then) =
      _$EquipmentListResponseDtoCopyWithImpl<$Res, EquipmentListResponseDto>;
  @useResult
  $Res call(
      {List<EquipmentListDto> items,
      int total,
      int page,
      @JsonKey(name: 'per_page') int perPage,
      @JsonKey(name: 'total_pages') int totalPages});
}

/// @nodoc
class _$EquipmentListResponseDtoCopyWithImpl<$Res,
        $Val extends EquipmentListResponseDto>
    implements $EquipmentListResponseDtoCopyWith<$Res> {
  _$EquipmentListResponseDtoCopyWithImpl(this._value, this._then);

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

  /// Create a copy of EquipmentListResponseDto
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? items = null,
    Object? total = null,
    Object? page = null,
    Object? perPage = null,
    Object? totalPages = null,
  }) {
    return _then(_value.copyWith(
      items: null == items
          ? _value.items
          : items // ignore: cast_nullable_to_non_nullable
              as List<EquipmentListDto>,
      total: null == total
          ? _value.total
          : total // ignore: cast_nullable_to_non_nullable
              as int,
      page: null == page
          ? _value.page
          : page // ignore: cast_nullable_to_non_nullable
              as int,
      perPage: null == perPage
          ? _value.perPage
          : perPage // ignore: cast_nullable_to_non_nullable
              as int,
      totalPages: null == totalPages
          ? _value.totalPages
          : totalPages // ignore: cast_nullable_to_non_nullable
              as int,
    ) as $Val);
  }
}

/// @nodoc
abstract class _$$EquipmentListResponseDtoImplCopyWith<$Res>
    implements $EquipmentListResponseDtoCopyWith<$Res> {
  factory _$$EquipmentListResponseDtoImplCopyWith(
          _$EquipmentListResponseDtoImpl value,
          $Res Function(_$EquipmentListResponseDtoImpl) then) =
      __$$EquipmentListResponseDtoImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call(
      {List<EquipmentListDto> items,
      int total,
      int page,
      @JsonKey(name: 'per_page') int perPage,
      @JsonKey(name: 'total_pages') int totalPages});
}

/// @nodoc
class __$$EquipmentListResponseDtoImplCopyWithImpl<$Res>
    extends _$EquipmentListResponseDtoCopyWithImpl<$Res,
        _$EquipmentListResponseDtoImpl>
    implements _$$EquipmentListResponseDtoImplCopyWith<$Res> {
  __$$EquipmentListResponseDtoImplCopyWithImpl(
      _$EquipmentListResponseDtoImpl _value,
      $Res Function(_$EquipmentListResponseDtoImpl) _then)
      : super(_value, _then);

  /// Create a copy of EquipmentListResponseDto
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? items = null,
    Object? total = null,
    Object? page = null,
    Object? perPage = null,
    Object? totalPages = null,
  }) {
    return _then(_$EquipmentListResponseDtoImpl(
      items: null == items
          ? _value._items
          : items // ignore: cast_nullable_to_non_nullable
              as List<EquipmentListDto>,
      total: null == total
          ? _value.total
          : total // ignore: cast_nullable_to_non_nullable
              as int,
      page: null == page
          ? _value.page
          : page // ignore: cast_nullable_to_non_nullable
              as int,
      perPage: null == perPage
          ? _value.perPage
          : perPage // ignore: cast_nullable_to_non_nullable
              as int,
      totalPages: null == totalPages
          ? _value.totalPages
          : totalPages // ignore: cast_nullable_to_non_nullable
              as int,
    ));
  }
}

/// @nodoc
@JsonSerializable()
class _$EquipmentListResponseDtoImpl implements _EquipmentListResponseDto {
  const _$EquipmentListResponseDtoImpl(
      {required final List<EquipmentListDto> items,
      required this.total,
      required this.page,
      @JsonKey(name: 'per_page') required this.perPage,
      @JsonKey(name: 'total_pages') required this.totalPages})
      : _items = items;

  factory _$EquipmentListResponseDtoImpl.fromJson(Map<String, dynamic> json) =>
      _$$EquipmentListResponseDtoImplFromJson(json);

  final List<EquipmentListDto> _items;
  @override
  List<EquipmentListDto> get items {
    if (_items is EqualUnmodifiableListView) return _items;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_items);
  }

  @override
  final int total;
  @override
  final int page;
  @override
  @JsonKey(name: 'per_page')
  final int perPage;
  @override
  @JsonKey(name: 'total_pages')
  final int totalPages;

  @override
  String toString() {
    return 'EquipmentListResponseDto(items: $items, total: $total, page: $page, perPage: $perPage, totalPages: $totalPages)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$EquipmentListResponseDtoImpl &&
            const DeepCollectionEquality().equals(other._items, _items) &&
            (identical(other.total, total) || other.total == total) &&
            (identical(other.page, page) || other.page == page) &&
            (identical(other.perPage, perPage) || other.perPage == perPage) &&
            (identical(other.totalPages, totalPages) ||
                other.totalPages == totalPages));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hash(
      runtimeType,
      const DeepCollectionEquality().hash(_items),
      total,
      page,
      perPage,
      totalPages);

  /// Create a copy of EquipmentListResponseDto
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$EquipmentListResponseDtoImplCopyWith<_$EquipmentListResponseDtoImpl>
      get copyWith => __$$EquipmentListResponseDtoImplCopyWithImpl<
          _$EquipmentListResponseDtoImpl>(this, _$identity);

  @override
  Map<String, dynamic> toJson() {
    return _$$EquipmentListResponseDtoImplToJson(
      this,
    );
  }
}

abstract class _EquipmentListResponseDto implements EquipmentListResponseDto {
  const factory _EquipmentListResponseDto(
          {required final List<EquipmentListDto> items,
          required final int total,
          required final int page,
          @JsonKey(name: 'per_page') required final int perPage,
          @JsonKey(name: 'total_pages') required final int totalPages}) =
      _$EquipmentListResponseDtoImpl;

  factory _EquipmentListResponseDto.fromJson(Map<String, dynamic> json) =
      _$EquipmentListResponseDtoImpl.fromJson;

  @override
  List<EquipmentListDto> get items;
  @override
  int get total;
  @override
  int get page;
  @override
  @JsonKey(name: 'per_page')
  int get perPage;
  @override
  @JsonKey(name: 'total_pages')
  int get totalPages;

  /// Create a copy of EquipmentListResponseDto
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$EquipmentListResponseDtoImplCopyWith<_$EquipmentListResponseDtoImpl>
      get copyWith => throw _privateConstructorUsedError;
}
