"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class Monomial(google.protobuf.message.Message):
    """A monomial in a multivariate polynomial."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDS_FIELD_NUMBER: builtins.int
    COEFFICIENT_FIELD_NUMBER: builtins.int
    coefficient: builtins.float
    @property
    def ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    def __init__(
        self,
        *,
        ids: collections.abc.Iterable[builtins.int] | None = ...,
        coefficient: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["coefficient", b"coefficient", "ids", b"ids"]) -> None: ...

global___Monomial = Monomial

@typing.final
class Polynomial(google.protobuf.message.Message):
    """Multi­variate polynomial"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TERMS_FIELD_NUMBER: builtins.int
    @property
    def terms(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Monomial]: ...
    def __init__(
        self,
        *,
        terms: collections.abc.Iterable[global___Monomial] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["terms", b"terms"]) -> None: ...

global___Polynomial = Polynomial
