# This file was generated by liblab | https://liblab.com/

from __future__ import annotations
from .base import BaseModel
from typing import List
from typing import Any
from .AntropicTools import AntropicTools
from .OpenAiTools import OpenAiTools

GetToolsResponse1 = List[AntropicTools]


def returnGetToolsResponse1(input_data):
    return GetToolsResponse1(**input_data)


GetToolsResponse2 = List[OpenAiTools]


def returnGetToolsResponse2(input_data):
    return GetToolsResponse2(**input_data)


class GetToolsResponseGuard(BaseModel):
    required_lists: dict = {}
    optional_lists: dict = {}
    class_list: dict = {}

    @classmethod
    def return_one_of(cls, raw_input):
        return cls._one_of(
            cls.required_lists, cls.optional_lists, cls.class_list, raw_input
        )


GetToolsResponse = Any
