# coding: utf-8

"""
    Mixpeek API

    This is the Mixpeek API, providing access to various endpoints for data processing and retrieval.

    The version of the OpenAPI document: 1.3.0
    Contact: info@mixpeek.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


from __future__ import annotations
import json
from enum import Enum
from typing_extensions import Self


class DatePartUnit(str, Enum):
    """
    Date part extraction units.  Used to extract specific components from dates for grouping.  Values:     YEAR: Extract year (2024)     MONTH: Extract month (1-12)     WEEK: Extract week of year (1-53)     DAY: Extract day of month (1-31)     DAY_OF_WEEK: Extract day of week (1=Sunday, 7=Saturday)     DAY_OF_YEAR: Extract day of year (1-366)     HOUR: Extract hour (0-23)     MINUTE: Extract minute (0-59)     SECOND: Extract second (0-59)  Examples:     - Use DAY_OF_WEEK to analyze weekly patterns     - Use HOUR to find peak usage times
    """

    """
    allowed enum values
    """
    YEAR = 'year'
    MONTH = 'month'
    WEEK = 'week'
    DAY = 'day'
    DAYOFWEEK = 'dayOfWeek'
    DAYOFYEAR = 'dayOfYear'
    HOUR = 'hour'
    MINUTE = 'minute'
    SECOND = 'second'

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of DatePartUnit from a JSON string"""
        return cls(json.loads(json_str))


