part of 'generated.dart';

class MarkActivityLogsAsReadVariablesBuilder {
  List<String> ids;

  final FirebaseDataConnect _dataConnect;
  MarkActivityLogsAsReadVariablesBuilder(this._dataConnect, {required  this.ids,});
  Deserializer<MarkActivityLogsAsReadData> dataDeserializer = (dynamic json)  => MarkActivityLogsAsReadData.fromJson(jsonDecode(json));
  Serializer<MarkActivityLogsAsReadVariables> varsSerializer = (MarkActivityLogsAsReadVariables vars) => jsonEncode(vars.toJson());
  Future<OperationResult<MarkActivityLogsAsReadData, MarkActivityLogsAsReadVariables>> execute() {
    return ref().execute();
  }

  MutationRef<MarkActivityLogsAsReadData, MarkActivityLogsAsReadVariables> ref() {
    MarkActivityLogsAsReadVariables vars= MarkActivityLogsAsReadVariables(ids: ids,);
    return _dataConnect.mutation("markActivityLogsAsRead", dataDeserializer, varsSerializer, vars);
  }
}

@immutable
class MarkActivityLogsAsReadData {
  final int activityLog_updateMany;
  MarkActivityLogsAsReadData.fromJson(dynamic json):
  
  activityLog_updateMany = nativeFromJson<int>(json['activityLog_updateMany']);
  @override
  bool operator ==(Object other) {
    if(identical(this, other)) {
      return true;
    }
    if(other.runtimeType != runtimeType) {
      return false;
    }

    final MarkActivityLogsAsReadData otherTyped = other as MarkActivityLogsAsReadData;
    return activityLog_updateMany == otherTyped.activityLog_updateMany;
    
  }
  @override
  int get hashCode => activityLog_updateMany.hashCode;
  

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = {};
    json['activityLog_updateMany'] = nativeToJson<int>(activityLog_updateMany);
    return json;
  }

  MarkActivityLogsAsReadData({
    required this.activityLog_updateMany,
  });
}

@immutable
class MarkActivityLogsAsReadVariables {
  final List<String> ids;
  @Deprecated('fromJson is deprecated for Variable classes as they are no longer required for deserialization.')
  MarkActivityLogsAsReadVariables.fromJson(Map<String, dynamic> json):
  
  ids = (json['ids'] as List<dynamic>)
        .map((e) => nativeFromJson<String>(e))
        .toList();
  @override
  bool operator ==(Object other) {
    if(identical(this, other)) {
      return true;
    }
    if(other.runtimeType != runtimeType) {
      return false;
    }

    final MarkActivityLogsAsReadVariables otherTyped = other as MarkActivityLogsAsReadVariables;
    return ids == otherTyped.ids;
    
  }
  @override
  int get hashCode => ids.hashCode;
  

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = {};
    json['ids'] = ids.map((e) => nativeToJson<String>(e)).toList();
    return json;
  }

  MarkActivityLogsAsReadVariables({
    required this.ids,
  });
}

