multiselect
context(step: Step.State)
fun <T> Terminal.multiselect(title: String, options: () -> List<Option<T>>, option: CLIOption<List<T>?>? = null, keyOptions: Map<String, KeyOption> = emptyMap(), defaultCursor: Int? = null, defaultOptions: List<T> = emptyList(), details: (data: T, index: Int) -> Widget?? = null, onHover: suspend (option: Option<T>, index: Int) -> Unit? = null, pageSize: Int = 10, maxPages: Int = 20, returnable: Boolean = true): List<T>
fun <T> Terminal.multiselect(title: String, options: () -> List<Option<T>>, option: CLIOption<List<T>?>? = null, keyOptions: Map<String, KeyOption> = emptyMap(), defaultCursor: Int? = null, defaultOptions: List<T> = emptyList(), details: (data: T, index: Int) -> Widget?? = null, onHover: suspend (option: Option<T>, index: Int) -> Unit? = null, pageSize: Int = 10, maxPages: Int = 20, returnable: Boolean = true): List<T>
context(step: Step.State)
fun <T> Terminal.multiselect(title: String, options: List<Option<T>>, option: CLIOption<List<T>?>? = null, keyOptions: Map<String, KeyOption> = emptyMap(), defaultCursor: Int? = null, defaultOptions: List<T> = emptyList(), details: (data: T, index: Int) -> Widget?? = null, onHover: suspend (option: Option<T>, index: Int) -> Unit? = null, pageSize: Int = 10, maxPages: Int = 20, returnable: Boolean = true): List<T>
fun <T> Terminal.multiselect(title: String, options: List<Option<T>>, option: CLIOption<List<T>?>? = null, keyOptions: Map<String, KeyOption> = emptyMap(), defaultCursor: Int? = null, defaultOptions: List<T> = emptyList(), details: (data: T, index: Int) -> Widget?? = null, onHover: suspend (option: Option<T>, index: Int) -> Unit? = null, pageSize: Int = 10, maxPages: Int = 20, returnable: Boolean = true): List<T>