from dataclasses import dataclass, field from typing import Optional import marshmallow from marshmallow_dataclass import NewType @dataclass class AvailableDatesFilterParams: label: Optional[int] project: Optional[int] AnalyticsDate = NewType("AnalyticsDate", str, field=marshmallow.fields.DateTime) @dataclass class CampaignsAnalyticsDateRange: start_date: AnalyticsDate = field(metadata={"format": "%Y-%m-%d"}) end_date: AnalyticsDate = field(metadata={"format": "%Y-%m-%d"})