# 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 TemplateMode(str, Enum):
    """
    Mode of template instantiation.  scaffold: Create from pre-built preset     - Creates: namespace + bucket + collection + retriever     - Endpoint: POST /templates/scaffolds/{id}/instantiate     - All resources empty, ready for data  config: Copy resource configuration only     - Creates: empty resource with same settings     - Endpoint: POST /templates/{resource}/{id}/instantiate     - No data copied  clone: Copy resource with all data     - Creates: full copy including vectors/embeddings     - Endpoint: POST /namespaces/{id}/clone     - For config-only, use templates instead
    """

    """
    allowed enum values
    """
    SCAFFOLD = 'scaffold'
    CONFIG = 'config'
    CLONE = 'clone'

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


