import 'package:freezed_annotation/freezed_annotation.dart'; part 'lookup_data.freezed.dart'; part 'lookup_data.g.dart'; @freezed class LookupData with _$LookupData { const factory LookupData({ @JsonKey(name: 'equipment_types') required List equipmentTypes, @JsonKey(name: 'equipment_statuses') required List equipmentStatuses, @JsonKey(name: 'license_types') required List licenseTypes, @JsonKey(name: 'manufacturers') required List manufacturers, @JsonKey(name: 'user_roles') required List userRoles, @JsonKey(name: 'company_statuses') required List companyStatuses, @JsonKey(name: 'warehouse_types') required List warehouseTypes, }) = _LookupData; factory LookupData.fromJson(Map json) => _$LookupDataFromJson(json); } @freezed class LookupItem with _$LookupItem { const factory LookupItem({ required String code, required String name, String? description, @JsonKey(name: 'display_order') int? displayOrder, @JsonKey(name: 'is_active') @Default(true) bool isActive, Map? metadata, }) = _LookupItem; factory LookupItem.fromJson(Map json) => _$LookupItemFromJson(json); }