"""
@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 Solution(google.protobuf.message.Message):
    """A solution obtained by the solver."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class EntriesEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.int
        value: builtins.float
        def __init__(
            self,
            *,
            key: builtins.int = ...,
            value: builtins.float = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...

    ENTRIES_FIELD_NUMBER: builtins.int
    @property
    def entries(self) -> google.protobuf.internal.containers.ScalarMap[builtins.int, builtins.float]: ...
    def __init__(
        self,
        *,
        entries: collections.abc.Mapping[builtins.int, builtins.float] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["entries", b"entries"]) -> None: ...

global___Solution = Solution

@typing.final
class SolutionList(google.protobuf.message.Message):
    """List of solutions obtained by the solver.
    This message is for supporting solvers that return multiple solutions.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___SolutionList = SolutionList
