# coding: utf-8

"""
    Seeq REST API

    No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)  # noqa: E501

    OpenAPI spec version: 66.119.1-v202603241138-CD
    
    Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

from __future__ import annotations

from typing import Any, ClassVar, Dict, List, Optional, Set, TYPE_CHECKING

if TYPE_CHECKING:
    from . import *  # noqa: F401,F403


class LicenseStatusOutputV1(object):
    swagger_types: ClassVar[Dict[str, str]] = ...
    attribute_map: ClassVar[Dict[str, str]] = ...

    _additional_features: Optional[List[LicensedFeatureStatusOutputV1]]
    _company_name: Optional[str]
    _configuration: Optional[Dict[str, Any]]
    _contract_number: Optional[str]
    _days_to_expiration: Optional[int]
    _hostname: Optional[str]
    _level: Optional[str]
    _user_count: Optional[int]
    _user_limit_restrict: Optional[int]
    _user_limit_warn: Optional[int]
    _valid_through: Optional[str]
    _validity: Optional[str]


    def __init__(
        self,
        additional_features: Optional[List[LicensedFeatureStatusOutputV1]] = None,
        company_name: Optional[str] = None,
        configuration: Optional[Dict[str, Any]] = None,
        contract_number: Optional[str] = None,
        days_to_expiration: Optional[int] = None,
        hostname: Optional[str] = None,
        level: Optional[str] = None,
        user_count: Optional[int] = None,
        user_limit_restrict: Optional[int] = None,
        user_limit_warn: Optional[int] = None,
        valid_through: Optional[str] = None,
        validity: Optional[str] = None,
    ) -> None: ...

    @property
    def additional_features(self) -> Optional[List[LicensedFeatureStatusOutputV1]]: ...

    @additional_features.setter
    def additional_features(self, additional_features: Optional[List[LicensedFeatureStatusOutputV1]]) -> None: ...

    @property
    def company_name(self) -> Optional[str]: ...

    @company_name.setter
    def company_name(self, company_name: Optional[str]) -> None: ...

    @property
    def configuration(self) -> Optional[Dict[str, Any]]: ...

    @configuration.setter
    def configuration(self, configuration: Optional[Dict[str, Any]]) -> None: ...

    @property
    def contract_number(self) -> Optional[str]: ...

    @contract_number.setter
    def contract_number(self, contract_number: Optional[str]) -> None: ...

    @property
    def days_to_expiration(self) -> Optional[int]: ...

    @days_to_expiration.setter
    def days_to_expiration(self, days_to_expiration: Optional[int]) -> None: ...

    @property
    def hostname(self) -> Optional[str]: ...

    @hostname.setter
    def hostname(self, hostname: Optional[str]) -> None: ...

    @property
    def level(self) -> Optional[str]: ...

    @level.setter
    def level(self, level: Optional[str]) -> None: ...

    @property
    def user_count(self) -> Optional[int]: ...

    @user_count.setter
    def user_count(self, user_count: Optional[int]) -> None: ...

    @property
    def user_limit_restrict(self) -> Optional[int]: ...

    @user_limit_restrict.setter
    def user_limit_restrict(self, user_limit_restrict: Optional[int]) -> None: ...

    @property
    def user_limit_warn(self) -> Optional[int]: ...

    @user_limit_warn.setter
    def user_limit_warn(self, user_limit_warn: Optional[int]) -> None: ...

    @property
    def valid_through(self) -> Optional[str]: ...

    @valid_through.setter
    def valid_through(self, valid_through: Optional[str]) -> None: ...

    @property
    def validity(self) -> Optional[str]: ...

    @validity.setter
    def validity(self, validity: Optional[str]) -> None: ...

    def to_dict(self) -> Dict[str, Any]: ...
    def to_str(self) -> str: ...
    def __repr__(self) -> str: ...
    def __eq__(self, other: object) -> bool: ...
    def __ne__(self, other: object) -> bool: ...
