# coding: utf-8

"""
    aind-sharepoint-service

     ## aind-sharepoint-service  Service to pull data from Sharepoint.  

    The version of the OpenAPI document: 0.0.4
    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 HeadpostType(str, Enum):
    """
    Enum class for HeadpostType
    """

    """
    allowed enum values
    """
    AI_STRAIGHT_HEADBAR = 'AI Straight Headbar'
    CAM_MINUS_STYLE_HEADFRAME_LEFT_PARENTHESIS_0160_MINUS_100_MINUS_10_REV_A_RIGHT_PARENTHESIS = 'CAM-style headframe (0160-100-10 Rev A)'
    MESOSCOPE_MINUS_STYLE_WELL_WITH_NGC_MINUS_STYLE_HEADFRAME_LEFT_PARENTHESIS_0160_MINUS_200_MINUS_20_SLASH_0160_MINUS_100_MINUS_10_RIGHT_PARENTHESIS = 'Mesoscope-style well with NGC-style headframe (0160-200-20/0160-100-10)'
    NEUROPIXEL_MINUS_STYLE_HEADFRAME_LEFT_PARENTHESIS_0160_MINUS_100_MINUS_10_SLASH_0160_MINUS_200_MINUS_36_RIGHT_PARENTHESIS = 'Neuropixel-style headframe (0160-100-10/0160-200-36)'
    NGC_MINUS_STYLE_HEADFRAME_COMMA__NO_WELL_LEFT_PARENTHESIS_0160_MINUS_100_MINUS_10_RIGHT_PARENTHESIS = 'NGC-style headframe, no well (0160-100-10)'
    SELECT_DOT_DOT_DOT = 'Select...'
    WHC_HASH_42_WITH_NEUROPIXEL_WELL_AND_WELL_CAP = 'WHC #42 with Neuropixel well and well cap'

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


