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

from typing import List
from .utils.json_map import JsonMap
from .base import BaseModel


@JsonMap({})
class OrgStructureToUpdateContainerData(BaseModel):
    """OrgStructureToUpdateContainerData

    :param name: name, defaults to None
    :type name: str, optional
    :param teams: teams
    :type teams: List[dict]
    :param external_id: external_id, defaults to None
    :type external_id: str, optional
    :param enable_roles: enable_roles, defaults to None
    :type enable_roles: bool, optional
    :param is_multiselect: is_multiselect, defaults to None
    :type is_multiselect: bool, optional
    """

    def __init__(
        self,
        teams: List[dict],
        name: str = None,
        external_id: str = None,
        enable_roles: bool = None,
        is_multiselect: bool = None,
    ):
        if name is not None:
            self.name = name
        self.teams = teams
        if external_id is not None:
            self.external_id = external_id
        if enable_roles is not None:
            self.enable_roles = enable_roles
        if is_multiselect is not None:
            self.is_multiselect = is_multiselect


@JsonMap({})
class OrgStructureToUpdateContainer(BaseModel):
    """OrgStructureToUpdateContainer

    :param data: data, defaults to None
    :type data: OrgStructureToUpdateContainerData, optional
    """

    def __init__(self, data: OrgStructureToUpdateContainerData = None):
        if data is not None:
            self.data = self._define_object(data, OrgStructureToUpdateContainerData)
