@@ -12,7 +12,7 @@ import {SignalLike, WritableSignalLike} from '../behaviors/signal-like/signal-li
1212import { ListItem } from '../behaviors/list/list' ;
1313
1414/** Represents the required inputs for a combobox. */
15- export type ComboboxInputs < T extends ListItem < V > , V > = {
15+ export interface ComboboxInputs < T extends ListItem < V > , V > {
1616 /** The controls for the popup associated with the combobox. */
1717 popupControls : SignalLike < ComboboxListboxControls < T , V > | ComboboxTreeControls < T , V > | undefined > ;
1818
@@ -30,10 +30,10 @@ export type ComboboxInputs<T extends ListItem<V>, V> = {
3030
3131 /** The value of the first matching item in the popup. */
3232 firstMatch : SignalLike < V | undefined > ;
33- } ;
33+ }
3434
3535/** An interface that allows combobox popups to expose the necessary controls for the combobox. */
36- export type ComboboxListboxControls < T extends ListItem < V > , V > = {
36+ export interface ComboboxListboxControls < T extends ListItem < V > , V > {
3737 /** A unique identifier for the popup. */
3838 id : ( ) => string ;
3939
@@ -78,9 +78,10 @@ export type ComboboxListboxControls<T extends ListItem<V>, V> = {
7878
7979 /** Sets the value of the combobox based on the selected item. */
8080 setValue : ( value : V | undefined ) => void ; // For re-setting the value if the popup was destroyed.
81- } ;
81+ }
8282
83- export type ComboboxTreeControls < T extends ListItem < V > , V > = ComboboxListboxControls < T , V > & {
83+ export interface ComboboxTreeControls < T extends ListItem < V > , V >
84+ extends ComboboxListboxControls < T , V > {
8485 /** Whether the currently active item in the popup is collapsible. */
8586 isItemCollapsible : ( ) => boolean ;
8687
@@ -98,7 +99,7 @@ export type ComboboxTreeControls<T extends ListItem<V>, V> = ComboboxListboxCont
9899
99100 /** Collapses all nodes in the tree. */
100101 collapseAll : ( ) => void ;
101- } ;
102+ }
102103
103104/** Controls the state of a combobox. */
104105export class ComboboxPattern < T extends ListItem < V > , V > {
0 commit comments