part of 'generated.dart';

class DeleteStaffAvailabilityStatsVariablesBuilder {
  String staffId;

  final FirebaseDataConnect _dataConnect;
  DeleteStaffAvailabilityStatsVariablesBuilder(this._dataConnect, {required  this.staffId,});
  Deserializer<DeleteStaffAvailabilityStatsData> dataDeserializer = (dynamic json)  => DeleteStaffAvailabilityStatsData.fromJson(jsonDecode(json));
  Serializer<DeleteStaffAvailabilityStatsVariables> varsSerializer = (DeleteStaffAvailabilityStatsVariables vars) => jsonEncode(vars.toJson());
  Future<OperationResult<DeleteStaffAvailabilityStatsData, DeleteStaffAvailabilityStatsVariables>> execute() {
    return ref().execute();
  }

  MutationRef<DeleteStaffAvailabilityStatsData, DeleteStaffAvailabilityStatsVariables> ref() {
    DeleteStaffAvailabilityStatsVariables vars= DeleteStaffAvailabilityStatsVariables(staffId: staffId,);
    return _dataConnect.mutation("deleteStaffAvailabilityStats", dataDeserializer, varsSerializer, vars);
  }
}

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

    final DeleteStaffAvailabilityStatsStaffAvailabilityStatsDelete otherTyped = other as DeleteStaffAvailabilityStatsStaffAvailabilityStatsDelete;
    return staffId == otherTyped.staffId;
    
  }
  @override
  int get hashCode => staffId.hashCode;
  

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

  DeleteStaffAvailabilityStatsStaffAvailabilityStatsDelete({
    required this.staffId,
  });
}

@immutable
class DeleteStaffAvailabilityStatsData {
  final DeleteStaffAvailabilityStatsStaffAvailabilityStatsDelete? staffAvailabilityStats_delete;
  DeleteStaffAvailabilityStatsData.fromJson(dynamic json):
  
  staffAvailabilityStats_delete = json['staffAvailabilityStats_delete'] == null ? null : DeleteStaffAvailabilityStatsStaffAvailabilityStatsDelete.fromJson(json['staffAvailabilityStats_delete']);
  @override
  bool operator ==(Object other) {
    if(identical(this, other)) {
      return true;
    }
    if(other.runtimeType != runtimeType) {
      return false;
    }

    final DeleteStaffAvailabilityStatsData otherTyped = other as DeleteStaffAvailabilityStatsData;
    return staffAvailabilityStats_delete == otherTyped.staffAvailabilityStats_delete;
    
  }
  @override
  int get hashCode => staffAvailabilityStats_delete.hashCode;
  

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = {};
    if (staffAvailabilityStats_delete != null) {
      json['staffAvailabilityStats_delete'] = staffAvailabilityStats_delete!.toJson();
    }
    return json;
  }

  DeleteStaffAvailabilityStatsData({
    this.staffAvailabilityStats_delete,
  });
}

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

    final DeleteStaffAvailabilityStatsVariables otherTyped = other as DeleteStaffAvailabilityStatsVariables;
    return staffId == otherTyped.staffId;
    
  }
  @override
  int get hashCode => staffId.hashCode;
  

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

  DeleteStaffAvailabilityStatsVariables({
    required this.staffId,
  });
}

