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

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import typing
import yandex.cloud.cic.v1.common.lag_info_pb2

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class LagAllocationSettingsRequest(google.protobuf.message.Message):
    """Structure for create and update requests that describes LAG allocation settings"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LAG_SIZE_FIELD_NUMBER: builtins.int
    lag_size: builtins.int
    """Size of LAG.
    Must be from 1 to 10 inclusively.
    """
    def __init__(
        self,
        *,
        lag_size: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["lag", b"lag", "lag_size", b"lag_size"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["lag", b"lag", "lag_size", b"lag_size"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["lag", b"lag"]) -> typing.Literal["lag_size"] | None: ...

global___LagAllocationSettingsRequest = LagAllocationSettingsRequest

@typing.final
class LagAllocationSettings(google.protobuf.message.Message):
    """Structure that describes LAG allocation settings"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LAG_INFO_FIELD_NUMBER: builtins.int
    @property
    def lag_info(self) -> yandex.cloud.cic.v1.common.lag_info_pb2.LagInfo:
        """LagInfo"""

    def __init__(
        self,
        *,
        lag_info: yandex.cloud.cic.v1.common.lag_info_pb2.LagInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["lag_info", b"lag_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["lag_info", b"lag_info"]) -> None: ...

global___LagAllocationSettings = LagAllocationSettings
