# coding: utf-8

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

from typing import List, Dict  # noqa: F401

from openapi_server.models.base_model_ import Model
from openapi_server import util


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

    Do not edit the class manually.
    """

    def __init__(self, train=None, test=None):  # noqa: E501
        """SplitDataOutput - a model defined in OpenAPI

        :param train: The train of this SplitDataOutput.  # noqa: E501
        :type train: List[List[float]]
        :param test: The test of this SplitDataOutput.  # noqa: E501
        :type test: List[List[float]]
        """
        self.openapi_types = {
            'train': List[List[float]],
            'test': List[List[float]]
        }

        self.attribute_map = {
            'train': 'train',
            'test': 'test'
        }

        self._train = train
        self._test = test

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

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

    @property
    def train(self):
        """Gets the train of this SplitDataOutput.


        :return: The train of this SplitDataOutput.
        :rtype: List[List[float]]
        """
        return self._train

    @train.setter
    def train(self, train):
        """Sets the train of this SplitDataOutput.


        :param train: The train of this SplitDataOutput.
        :type train: List[List[float]]
        """

        self._train = train

    @property
    def test(self):
        """Gets the test of this SplitDataOutput.


        :return: The test of this SplitDataOutput.
        :rtype: List[List[float]]
        """
        return self._test

    @test.setter
    def test(self, test):
        """Sets the test of this SplitDataOutput.


        :param test: The test of this SplitDataOutput.
        :type test: List[List[float]]
        """

        self._test = test
