import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested


class CloudapiVinsIpReserveResultStr(_base.BaseAPIResultStr):
    pass


class CloudapiVinsIpReserveProtocol(_base.BasePostAPIFunctionProtocol):
    def ip_reserve(
        self,
        *,
        vins_id: int,
        type: _nested.DHCPReservationType,
        ip_addr: str | None = None,
        mac: str | None = None,
        vm_id: int | None = None,
    ) -> CloudapiVinsIpReserveResultStr:
        ...
