text: # Copyright 2021 The MLX Contributors
  #
  # SPDX-License-Identifier: Apache-2.0
  # coding: utf-8
  
  from __future__ import absolute_import
  from datetime import date, datetime  # noqa: F401
  
  from typing import List, Dict  # noqa: F401
  
  from swagger_server.models.base_model_ import Model
  from swagger_server.models.api_component import ApiComponent  # noqa: F401,E501
  from swagger_server import util
  
  
  class ApiListComponentsResponse(Model):
      """NOTE: This class is auto generated by the swagger code generator program.
  
      Do not edit the class manually.
      """
  
      def __init__(self, components: List[ApiComponent]=None, total_size: int=None, next_page_token: str=None):  # noqa: E501
          """ApiListComponentsResponse - a model defined in Swagger
  
          :param components: The components of this ApiListComponentsResponse.  # noqa: E501
          :type components: List[ApiComponent]
          :param total_size: The total_size of this ApiListComponentsResponse.  # noqa: E501
          :type total_size: int
          :param next_page_token: The next_page_token of this ApiListComponentsResponse.  # noqa: E501
          :type next_page_token: str
          """
          self.swagger_types = {
              'components': List[ApiComponent],
              'total_size': int,
              'next_page_token': str
          }
  
          self.attribute_map = {
              'components': 'components',
              'total_size': 'total_size',
              'next_page_token': 'next_page_token'
          }
  
          self._components = components
          self._total_size = total_size
          self._next_page_token = next_page_token
  
      @classmethod
      def from_dict(cls, dikt) -> 'ApiListComponentsResponse':
          """Returns the dict as a model
  
          :param dikt: A dict.
          :type: dict
          :return: The apiListComponentsResponse of this ApiListComponentsResponse.  # noqa: E501
          :rtype: ApiListComponentsResponse
          """
          return util.deserialize_model(dikt, cls)
  
      @property
      def components(self) -> List[ApiComponent]:
          """Gets the components of this ApiListComponentsResponse.
  
  
          :return: The components of this ApiListComponentsResponse.
          :rtype: List[ApiComponent]
          """
          return self._components
  
      @components.setter
      def components(self, components: List[ApiComponent]):
          """Sets the components of this ApiListComponentsResponse.
  
  
          :param components: The components of this ApiListComponentsResponse.
          :type components: List[ApiComponent]
          """
  
          self._components = components
  
      @property
      def total_size(self) -> int:
          """Gets the total_size of this ApiListComponentsResponse.
  
  
          :return: The total_size of this ApiListComponentsResponse.
          :rtype: int
          """
          return self._total_size
  
      @total_size.setter
      def total_size(self, total_size: int):
          """Sets the total_size of this ApiListComponentsResponse.
  
  
          :param total_size: The total_size of this ApiListComponentsResponse.
          :type total_size: int
          """
  
          self._total_size = total_size
  
      @property
      def next_page_token(self) -> str:
          """Gets the next_page_token of this ApiListComponentsResponse.
  
  
          :return: The next_page_token of this ApiListComponentsResponse.
          :rtype: str
          """
          return self._next_page_token
  
      @next_page_token.setter
      def next_page_token(self, next_page_token: str):
          """Sets the next_page_token of this ApiListComponentsResponse.
  
  
          :param next_page_token: The next_page_token of this ApiListComponentsResponse.
          :type next_page_token: str
          """
  
          self._next_page_token = next_page_token
  