import 'package:json_annotation/json_annotation.dart';

import 'package:pshared/api/responses/base.dart';
import 'package:pshared/api/responses/token.dart';
import 'package:pshared/data/dto/permissions/data/permissions.dart';
import 'package:pshared/data/dto/permissions/description/description.dart';

part 'policies.g.dart';


@JsonSerializable(explicitToJson: true)
class PoliciesResponse extends BaseAuthorizedResponse {
  final PermissionsDescriptionDTO descriptions;
  final PermissionsDataDTO permissions;

  const PoliciesResponse({required this.descriptions, required this.permissions, required super.accessToken});

  factory PoliciesResponse.fromJson(Map<String, dynamic> json) => _$PoliciesResponseFromJson(json);
  @override
  Map<String, dynamic> toJson() => _$PoliciesResponseToJson(this);
}