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

from __future__ import annotations
from .base import BaseModel
from typing import TYPE_CHECKING

if TYPE_CHECKING:
    from .FunctionParameters import FunctionParameters


class OpenAiFunctionDefinition(BaseModel):
    """
    OpenAI Function Definition
    """

    def __init__(
        self,
        name: str,
        description: str = None,
        parameters: FunctionParameters = None,
        **kwargs,
    ):
        """
        Initialize OpenAiFunctionDefinition
        Parameters:
        ----------
            name: str
            description: str
            parameters: FunctionParameters
        """
        self.name = name
        self.description = description
        self.parameters = parameters
