# 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 Statistic(str, Enum):
    """
    Statistic
    """

    """
    allowed enum values
    """
    STAR = "*"
    SEARCH_OPERATIONS = "search_operations"
    TOTAL_SEARCH_OPERATIONS = "total_search_operations"
    TOTAL_SEARCH_REQUESTS = "total_search_requests"
    QUERIES_OPERATIONS = "queries_operations"
    MULTI_QUERIES_OPERATIONS = "multi_queries_operations"
    ACL_OPERATIONS = "acl_operations"
    TOTAL_ACL_OPERATIONS = "total_acl_operations"
    GET_API_KEYS_OPERATIONS = "get_api_keys_operations"
    GET_API_KEY_OPERATIONS = "get_api_key_operations"
    ADD_API_KEY_OPERATIONS = "add_api_key_operations"
    UPDATE_API_KEY_OPERATIONS = "update_api_key_operations"
    DELETE_API_KEY_OPERATIONS = "delete_api_key_operations"
    LIST_API_KEY_OPERATIONS = "list_api_key_operations"
    INDEXING_OPERATIONS = "indexing_operations"
    TOTAL_INDEXING_OPERATIONS = "total_indexing_operations"
    BROWSE_OPERATIONS = "browse_operations"
    CLEAR_INDEX_OPERATIONS = "clear_index_operations"
    COPY_MOVE_OPERATIONS = "copy_move_operations"
    DELETE_INDEX_OPERATIONS = "delete_index_operations"
    GET_LOG_OPERATIONS = "get_log_operations"
    GET_SETTINGS_OPERATIONS = "get_settings_operations"
    SET_SETTINGS_OPERATIONS = "set_settings_operations"
    LIST_INDICES_OPERATIONS = "list_indices_operations"
    WAIT_TASK_OPERATIONS = "wait_task_operations"
    RECORD_OPERATIONS = "record_operations"
    TOTAL_RECORDS_OPERATIONS = "total_records_operations"
    ADD_RECORD_OPERATIONS = "add_record_operations"
    BATCH_OPERATIONS = "batch_operations"
    DELETE_BY_QUERY_OPERATIONS = "delete_by_query_operations"
    DELETE_RECORD_OPERATIONS = "delete_record_operations"
    GET_RECORD_OPERATIONS = "get_record_operations"
    PARTIAL_UPDATE_RECORD_OPERATIONS = "partial_update_record_operations"
    UPDATE_RECORD_OPERATIONS = "update_record_operations"
    SYNONYM_OPERATIONS = "synonym_operations"
    TOTAL_SYNONYM_OPERATIONS = "total_synonym_operations"
    BATCH_SYNONYM_OPERATIONS = "batch_synonym_operations"
    CLEAR_SYNONYM_OPERATIONS = "clear_synonym_operations"
    DELETE_SYNONYM_OPERATIONS = "delete_synonym_operations"
    GET_SYNONYM_OPERATIONS = "get_synonym_operations"
    QUERY_SYNONYM_OPERATIONS = "query_synonym_operations"
    UPDATE_SYNONYM_OPERATIONS = "update_synonym_operations"
    RULE_OPERATIONS = "rule_operations"
    TOTAL_RULES_OPERATIONS = "total_rules_operations"
    BATCH_RULES_OPERATIONS = "batch_rules_operations"
    CLEAR_RULES_OPERATIONS = "clear_rules_operations"
    DELETE_RULES_OPERATIONS = "delete_rules_operations"
    GET_RULES_OPERATIONS = "get_rules_operations"
    SAVE_RULES_OPERATIONS = "save_rules_operations"
    SEARCH_RULES_OPERATIONS = "search_rules_operations"
    TOTAL_RECOMMEND_REQUESTS = "total_recommend_requests"
    TOTAL_WRITE_OPERATIONS = "total_write_operations"
    TOTAL_READ_OPERATIONS = "total_read_operations"
    TOTAL_OPERATIONS = "total_operations"
    QUERYSUGGESTIONS_TOTAL_SEARCH_OPERATIONS = (
        "querysuggestions_total_search_operations"
    )
    QUERYSUGGESTIONS_TOTAL_SEARCH_REQUESTS = "querysuggestions_total_search_requests"
    QUERYSUGGESTIONS_TOTAL_ACL_OPERATIONS = "querysuggestions_total_acl_operations"
    QUERYSUGGESTIONS_TOTAL_INDEXING_OPERATIONS = (
        "querysuggestions_total_indexing_operations"
    )
    QUERYSUGGESTIONS_TOTAL_RECORDS_OPERATIONS = (
        "querysuggestions_total_records_operations"
    )
    QUERYSUGGESTIONS_TOTAL_SYNONYM_OPERATIONS = (
        "querysuggestions_total_synonym_operations"
    )
    QUERYSUGGESTIONS_TOTAL_RULES_OPERATIONS = "querysuggestions_total_rules_operations"
    QUERYSUGGESTIONS_TOTAL_WRITE_OPERATIONS = "querysuggestions_total_write_operations"
    QUERYSUGGESTIONS_TOTAL_READ_OPERATIONS = "querysuggestions_total_read_operations"
    QUERYSUGGESTIONS_TOTAL_OPERATIONS = "querysuggestions_total_operations"
    AVG_PROCESSING_TIME = "avg_processing_time"
    ENUM_90P_PROCESSING_TIME = "90p_processing_time"
    ENUM_99P_PROCESSING_TIME = "99p_processing_time"
    QUERIES_ABOVE_LAST_MS_PROCESSING_TIME = "queries_above_last_ms_processing_time"
    RECORDS = "records"
    DATA_SIZE = "data_size"
    FILE_SIZE = "file_size"
    MAX_QPS = "max_qps"
    REGION_MAX_QPS = "region_max_qps"
    TOTAL_MAX_QPS = "total_max_qps"
    USED_SEARCH_CAPACITY = "used_search_capacity"
    AVG_USED_SEARCH_CAPACITY = "avg_used_search_capacity"
    REGION_USED_SEARCH_CAPACITY = "region_used_search_capacity"
    REGION_AVG_USED_SEARCH_CAPACITY = "region_avg_used_search_capacity"
    TOTAL_USED_SEARCH_CAPACITY = "total_used_search_capacity"
    TOTAL_AVG_USED_SEARCH_CAPACITY = "total_avg_used_search_capacity"
    DEGRADED_QUERIES_SSD_USED_QUERIES_IMPACTED = (
        "degraded_queries_ssd_used_queries_impacted"
    )
    DEGRADED_QUERIES_SSD_USED_SECONDS_IMPACTED = (
        "degraded_queries_ssd_used_seconds_impacted"
    )
    DEGRADED_QUERIES_MAX_CAPACITY_QUERIES_IMPACTED = (
        "degraded_queries_max_capacity_queries_impacted"
    )
    DEGRADED_QUERIES_MAX_CAPACITY_SECONDS_IMPACTED = (
        "degraded_queries_max_capacity_seconds_impacted"
    )

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