# 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 import util


class TerminoloskiKandidat(Model):
    """NOTE: This class is auto generated by the swagger code generator program.

    Do not edit the class manually.
    """
    def __init__(self, kandidat: str=None, kanonicnaoblika: str=None, po_soznake: str=None, nosilnautez: float=None, podporneutezi: List[float]=None, pogostostpojavljanja: List[int]=None):  # noqa: E501
        """TerminoloskiKandidat - a model defined in Swagger

        :param kandidat: The kandidat of this TerminoloskiKandidat.  # noqa: E501
        :type kandidat: str
        :param kanonicnaoblika: The kanonicnaoblika of this TerminoloskiKandidat.  # noqa: E501
        :type kanonicnaoblika: str
        :param po_soznake: The po_soznake of this TerminoloskiKandidat.  # noqa: E501
        :type po_soznake: str
        :param nosilnautez: The nosilnautez of this TerminoloskiKandidat.  # noqa: E501
        :type nosilnautez: float
        :param podporneutezi: The podporneutezi of this TerminoloskiKandidat.  # noqa: E501
        :type podporneutezi: List[float]
        :param pogostostpojavljanja: The pogostostpojavljanja of this TerminoloskiKandidat.  # noqa: E501
        :type pogostostpojavljanja: List[int]
        """
        self.swagger_types = {
            'kandidat': str,
            'kanonicnaoblika': str,
            'po_soznake': str,
            'nosilnautez': float,
            'podporneutezi': List[float],
            'pogostostpojavljanja': List[int]
        }

        self.attribute_map = {
            'kandidat': 'kandidat',
            'kanonicnaoblika': 'kanonicnaoblika',
            'po_soznake': 'POSoznake',
            'nosilnautez': 'nosilnautez',
            'podporneutezi': 'podporneutezi',
            'pogostostpojavljanja': 'pogostostpojavljanja'
        }
        self._kandidat = kandidat
        self._kanonicnaoblika = kanonicnaoblika
        self._po_soznake = po_soznake
        self._nosilnautez = nosilnautez
        self._podporneutezi = podporneutezi
        self._pogostostpojavljanja = pogostostpojavljanja

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

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

    @property
    def kandidat(self) -> str:
        """Gets the kandidat of this TerminoloskiKandidat.


        :return: The kandidat of this TerminoloskiKandidat.
        :rtype: str
        """
        return self._kandidat

    @kandidat.setter
    def kandidat(self, kandidat: str):
        """Sets the kandidat of this TerminoloskiKandidat.


        :param kandidat: The kandidat of this TerminoloskiKandidat.
        :type kandidat: str
        """

        self._kandidat = kandidat

    @property
    def kanonicnaoblika(self) -> str:
        """Gets the kanonicnaoblika of this TerminoloskiKandidat.


        :return: The kanonicnaoblika of this TerminoloskiKandidat.
        :rtype: str
        """
        return self._kanonicnaoblika

    @kanonicnaoblika.setter
    def kanonicnaoblika(self, kanonicnaoblika: str):
        """Sets the kanonicnaoblika of this TerminoloskiKandidat.


        :param kanonicnaoblika: The kanonicnaoblika of this TerminoloskiKandidat.
        :type kanonicnaoblika: str
        """

        self._kanonicnaoblika = kanonicnaoblika

    @property
    def po_soznake(self) -> str:
        """Gets the po_soznake of this TerminoloskiKandidat.


        :return: The po_soznake of this TerminoloskiKandidat.
        :rtype: str
        """
        return self._po_soznake

    @po_soznake.setter
    def po_soznake(self, po_soznake: str):
        """Sets the po_soznake of this TerminoloskiKandidat.


        :param po_soznake: The po_soznake of this TerminoloskiKandidat.
        :type po_soznake: str
        """

        self._po_soznake = po_soznake

    @property
    def nosilnautez(self) -> float:
        """Gets the nosilnautez of this TerminoloskiKandidat.


        :return: The nosilnautez of this TerminoloskiKandidat.
        :rtype: float
        """
        return self._nosilnautez

    @nosilnautez.setter
    def nosilnautez(self, nosilnautez: float):
        """Sets the nosilnautez of this TerminoloskiKandidat.


        :param nosilnautez: The nosilnautez of this TerminoloskiKandidat.
        :type nosilnautez: float
        """

        self._nosilnautez = nosilnautez

    @property
    def podporneutezi(self) -> List[float]:
        """Gets the podporneutezi of this TerminoloskiKandidat.


        :return: The podporneutezi of this TerminoloskiKandidat.
        :rtype: List[float]
        """
        return self._podporneutezi

    @podporneutezi.setter
    def podporneutezi(self, podporneutezi: List[float]):
        """Sets the podporneutezi of this TerminoloskiKandidat.


        :param podporneutezi: The podporneutezi of this TerminoloskiKandidat.
        :type podporneutezi: List[float]
        """

        self._podporneutezi = podporneutezi

    @property
    def pogostostpojavljanja(self) -> List[int]:
        """Gets the pogostostpojavljanja of this TerminoloskiKandidat.


        :return: The pogostostpojavljanja of this TerminoloskiKandidat.
        :rtype: List[int]
        """
        return self._pogostostpojavljanja

    @pogostostpojavljanja.setter
    def pogostostpojavljanja(self, pogostostpojavljanja: List[int]):
        """Sets the pogostostpojavljanja of this TerminoloskiKandidat.


        :param pogostostpojavljanja: The pogostostpojavljanja of this TerminoloskiKandidat.
        :type pogostostpojavljanja: List[int]
        """

        self._pogostostpojavljanja = pogostostpojavljanja
