# coding: utf-8

"""
Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
"""

from __future__ import annotations

from enum import Enum
from json import loads
from typing import Self


class Acl(str, Enum):
    """
    Access control list permissions.
    """

    """
    allowed enum values
    """
    ADDOBJECT = "addObject"
    ANALYTICS = "analytics"
    BROWSE = "browse"
    DELETEOBJECT = "deleteObject"
    DELETEINDEX = "deleteIndex"
    EDITSETTINGS = "editSettings"
    INFERENCE = "inference"
    LISTINDEXES = "listIndexes"
    LOGS = "logs"
    PERSONALIZATION = "personalization"
    RECOMMENDATION = "recommendation"
    SEARCH = "search"
    SEEUNRETRIEVABLEATTRIBUTES = "seeUnretrievableAttributes"
    SETTINGS = "settings"
    USAGE = "usage"

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