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


class CloudapiKvmx86CreateBlankResultInt(_base.BaseAPIResultInt):
    pass


class CloudapiKvmx86CreateBlankProtocol(_base.BasePostAPIFunctionProtocol):
    def create_blank(
        self,
        *,
        cpu_count: int,
        name: str,
        ram_size_mb: int,
        rg_id: int,
        boot_disk_size_gb: None | int = None,
        chipset: _nested.Chipset = _nested.Chipset.i440fx,
        data_disks: None | list[_nested.DiskAPIParamsNM] = None,
        description: None | str = None,
        driver: _nested.Driver = _nested.Driver.KVM_X86,
        interfaces: None | list[_nested.InterfaceAPIParamsNM] = None,
        preferred_cpu_cores: None | list[int] = None,
        sep_id: None | int = None,
        sep_pool_name: None | str = None,
        without_boot_disk: bool = False,
        boot_loader_type: _nested.BootLoaderType = (
            _nested.BootLoaderType.unknown
        ),
        boot_mode: _nested.BootMode = _nested.BootMode.bios,
        network_interface_naming: _nested.NetIfaceNamingTemplate = (
            _nested.NetIfaceNamingTemplate.ens
        ),
        hot_resize: bool = False,
        zone_id: None | int = None,
    ) -> CloudapiKvmx86CreateBlankResultInt:
        ...
