# 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.123.1-v202604020723-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 ModelFormulaCreatorRuleV1(object):
    swagger_types: ClassVar[Dict[str, str]] = ...
    attribute_map: ClassVar[Dict[str, str]] = ...

    _description: Optional[ModelRuleInputV1String]
    _formula: ModelRuleInputV1String
    _identity_id: Optional[ModelRuleInputV1UUID]
    _name: ModelRuleInputV1String
    _parameters: ModelRuleInputV1ListString
    _permission_string: Optional[ModelRuleInputV1String]
    _scoped_to: Optional[ModelRuleInputV1UUID]
    _variable_parameter_strings: Optional[ModelRuleInputV1ListString]
    _variable_parameters: Optional[ModelRuleInputV1ListString]


    def __init__(
        self,
        description: Optional[ModelRuleInputV1String] = None,
        formula: Optional[ModelRuleInputV1String] = None,
        identity_id: Optional[ModelRuleInputV1UUID] = None,
        name: Optional[ModelRuleInputV1String] = None,
        parameters: Optional[ModelRuleInputV1ListString] = None,
        permission_string: Optional[ModelRuleInputV1String] = None,
        scoped_to: Optional[ModelRuleInputV1UUID] = None,
        variable_parameter_strings: Optional[ModelRuleInputV1ListString] = None,
        variable_parameters: Optional[ModelRuleInputV1ListString] = None,
    ) -> None: ...

    @property
    def description(self) -> Optional[ModelRuleInputV1String]: ...

    @description.setter
    def description(self, description: Optional[ModelRuleInputV1String]) -> None: ...

    @property
    def formula(self) -> ModelRuleInputV1String: ...

    @formula.setter
    def formula(self, formula: ModelRuleInputV1String) -> None: ...

    @property
    def identity_id(self) -> Optional[ModelRuleInputV1UUID]: ...

    @identity_id.setter
    def identity_id(self, identity_id: Optional[ModelRuleInputV1UUID]) -> None: ...

    @property
    def name(self) -> ModelRuleInputV1String: ...

    @name.setter
    def name(self, name: ModelRuleInputV1String) -> None: ...

    @property
    def parameters(self) -> ModelRuleInputV1ListString: ...

    @parameters.setter
    def parameters(self, parameters: ModelRuleInputV1ListString) -> None: ...

    @property
    def permission_string(self) -> Optional[ModelRuleInputV1String]: ...

    @permission_string.setter
    def permission_string(self, permission_string: Optional[ModelRuleInputV1String]) -> None: ...

    @property
    def scoped_to(self) -> Optional[ModelRuleInputV1UUID]: ...

    @scoped_to.setter
    def scoped_to(self, scoped_to: Optional[ModelRuleInputV1UUID]) -> None: ...

    @property
    def variable_parameter_strings(self) -> Optional[ModelRuleInputV1ListString]: ...

    @variable_parameter_strings.setter
    def variable_parameter_strings(self, variable_parameter_strings: Optional[ModelRuleInputV1ListString]) -> None: ...

    @property
    def variable_parameters(self) -> Optional[ModelRuleInputV1ListString]: ...

    @variable_parameters.setter
    def variable_parameters(self, variable_parameters: Optional[ModelRuleInputV1ListString]) -> 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: ...
