import 'package:freezed_annotation/freezed_annotation.dart'; part 'pagination_model.freezed.dart'; part 'pagination_model.g.dart'; @freezed class Links with _$Links { const factory Links({ @JsonKey(name: "first") required String first, @JsonKey(name: "last") required String last, @JsonKey(name: "prev") required dynamic prev, @JsonKey(name: "next") required dynamic next, }) = _Links; factory Links.fromJson(Map json) => _$LinksFromJson(json); } @freezed class Meta with _$Meta { const factory Meta({ @JsonKey(name: "current_page") required int currentPage, @JsonKey(name: "from") required dynamic from, @JsonKey(name: "last_page") required int lastPage, @JsonKey(name: "links") required List links, @JsonKey(name: "path") String? path, @JsonKey(name: "per_page") required int perPage, @JsonKey(name: "to") required dynamic to, @JsonKey(name: "total") required int total, @JsonKey(name: "total_min_price") int? totalMinPrice, @JsonKey(name: "total_max_price") int? totalMaxPrice, }) = _Meta; factory Meta.fromJson(Map json) => _$MetaFromJson(json); } @freezed class Link with _$Link { const factory Link({ @JsonKey(name: "url") String? url, @JsonKey(name: "label") String? label, @JsonKey(name: "active") bool? active, }) = _Link; factory Link.fromJson(Map json) => _$LinkFromJson(json); }