import { CdkDragDrop } from '@angular/cdk/drag-drop'; import { ElementRef, EventEmitter, TemplateRef } from '@angular/core'; import '@sebgroup/green-core/components/icon/icons/dot-grid-two.js'; import * as i0 from "@angular/core"; export interface SortableListItem { id: any; name: string; description?: string; selected?: boolean; hasCustomSuffix?: boolean; } export interface SortableListGroup { items: SortableListItem[]; title: string; description?: string; } export declare class NggSortableListComponent { groups: SortableListGroup[]; shouldDisplayCheckboxes: boolean; isReadOnly: boolean; isDraggable: boolean; description: string; suffixTemplate: TemplateRef | null; itemSelectionChanged: EventEmitter<{ changedItem: SortableListItem; groups: SortableListGroup[]; }>; itemOrderChanged: EventEmitter<{ previousIndex: [number, number]; currentIndex: [number, number]; groups: SortableListGroup[]; }>; sortableListGroups: ElementRef; focusedIndex: Record; /** * Toggles the selection of a checklist item and updates its position in the list. * * @param item - The checklist item to update. */ toggleSelection(item: SortableListItem): void; /** * Handles the onDragDrop event. * * @param event - The drag and drop event. */ onDragDrop(event: CdkDragDrop): void; /** * Handles moving items up or down using the alt + arrow up or alt + arrow down keys. * * @param groupIndex - The index of the group. * @param currentItemIndex - The current index of the item. * @param newItemIndex - The new index of the item. */ onAltArrowKeydown(groupIndex: number, currentItemIndex: number, newItemIndex: number, event: any): void; /** * Handles focus by arrow keydown event. * * @param groupIndex - The index of the group. * @param itemIndex - The index of the item. * @param event - The keyboard event. */ onArrowKeydown(groupIndex: number, itemIndex: number, event: Event): void; /** * Emits the item order changed event. * * @param previousIndex - The previous index of the item. * @param currentIndex - The current index of the item. */ private emitItemOrderChanged; /** * Emits the selected checklist item through an event. * * @param item - The checklist item to emit. */ private emitCheckListItem; /** * Focuses on a specific item in the sortable list. * * @param groupIndex - The index of the group. * @param itemIndex - The index of the item. */ private focusItem; /** * Checks if an item has focus. * * @param groupIndex - The index of the group. * @param itemIndex - The index of the item. */ itemHasFocus(groupIndex: number, itemIndex: number): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }