<reponame>rsnyman/versiongrid
# coding: utf-8

from __future__ import absolute_import
from datetime import date, datetime  # noqa: F401

from typing import List, Dict  # noqa: F401

from versiongrid.models.base_model_ import Model
from versiongrid.models.dependency import Dependency
from versiongrid.models.pagination import Pagination
from versiongrid import util

from versiongrid.models.dependency import Dependency  # noqa: E501
from versiongrid.models.pagination import Pagination  # noqa: E501

class DependencyList(Model):
    """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

    Do not edit the class manually.
    """

    def __init__(self, pagination=None, dependencies=None):  # noqa: E501
        """DependencyList - a model defined in OpenAPI

        :param pagination: The pagination of this DependencyList.  # noqa: E501
        :type pagination: Pagination
        :param dependencies: The dependencies of this DependencyList.  # noqa: E501
        :type dependencies: List[Dependency]
        """
        self.openapi_types = {
            'pagination': Pagination,
            'dependencies': List[Dependency]
        }

        self.attribute_map = {
            'pagination': 'pagination',
            'dependencies': 'dependencies'
        }

        self._pagination = pagination
        self._dependencies = dependencies

    @classmethod
    def from_dict(cls, dikt) -> 'DependencyList':
        """Returns the dict as a model

        :param dikt: A dict.
        :type: dict
        :return: The DependencyList of this DependencyList.  # noqa: E501
        :rtype: DependencyList
        """
        return util.deserialize_model(dikt, cls)

    @property
    def pagination(self):
        """Gets the pagination of this DependencyList.


        :return: The pagination of this DependencyList.
        :rtype: Pagination
        """
        return self._pagination

    @pagination.setter
    def pagination(self, pagination):
        """Sets the pagination of this DependencyList.


        :param pagination: The pagination of this DependencyList.
        :type pagination: Pagination
        """

        self._pagination = pagination

    @property
    def dependencies(self):
        """Gets the dependencies of this DependencyList.


        :return: The dependencies of this DependencyList.
        :rtype: List[Dependency]
        """
        return self._dependencies

    @dependencies.setter
    def dependencies(self, dependencies):
        """Sets the dependencies of this DependencyList.


        :param dependencies: The dependencies of this DependencyList.
        :type dependencies: List[Dependency]
        """

        self._dependencies = dependencies
