import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:json_annotation/json_annotation.dart';

import 'media_image.dart';

part '../../../_generated/data/remote/models/area_sub_category.g.dart';

@JsonSerializable(fieldRename: FieldRename.snake)
class AreaSubCategory {
  final int id;
  final String name;
  final String subTitle;
  final String heroTitle;
  final String description;
  @JsonKey(defaultValue: MediaImage.empty)
  final MediaImage heroImage;
  final List<int> products;

  const AreaSubCategory({
    required this.id,
    required this.name,
    required this.subTitle,
    required this.heroTitle,
    required this.description,
    required this.heroImage,
    required this.products,
  });

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

  Map<String, dynamic> toJson() => _$AreaSubCategoryToJson(this);
}