import * as _angular_core from '@angular/core'; import { TemplateRef, OnInit, AfterContentInit } from '@angular/core'; import * as i1 from '@angular/common'; import * as i2 from '@angular/forms'; import * as i3 from '@angular/router'; import * as i4 from '@angular/cdk/scrolling'; import * as i5 from '@cisstech/nge/pipes'; import * as i6 from 'ngx-pipes'; interface ListContext { item: T; items: T[]; /** The index of the current item in the iterable. */ index: number; /** True when the item is the first item in the iterable. */ first: boolean; /** True when the item is the last item in the iterable. */ last: boolean; /** True when the item has an even index in the iterable. */ even: boolean; /** True when the item has an odd index in the iterable. */ odd: boolean; } type ListTemplateSlots = 'row' | 'empty' | 'header' | 'noresult' | 'selection'; interface ListAction { color?: string; side?: 'start' | 'end'; icon?: string; text?: string; when?: (item: T) => boolean; action: (item: T) => void | Promise; } interface ListItemTag { /** * Data passed to articleTagIconTemplate as let-data if provided. */ data?: T; /** * The text to display in the tag. Also passed to articleTagIconTemplate as let-text if defined */ text: string; /** * Optionnal background color of the tag */ color?: string; } declare class ListItemArticleActionComponent { readonly actionTitle: _angular_core.InputSignal | null | undefined>; readonly clickable: _angular_core.InputSignal; protected onClick($event: Event): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class ListItemArticleComponent implements OnInit { readonly articleTitle: _angular_core.InputSignal | undefined>; readonly articleUrl: _angular_core.InputSignal; readonly articleBannerUrl: _angular_core.InputSignal; readonly articleBannerAlt: _angular_core.InputSignal; readonly articleIconUrl: _angular_core.InputSignal; readonly articleIconAlt: _angular_core.InputSignal; readonly articleDescription: _angular_core.InputSignal | undefined>; readonly articleTags: _angular_core.InputSignal[]>; readonly articleIconTemplate: _angular_core.InputSignal | undefined>; readonly articleTagIconTemplate: _angular_core.InputSignal | undefined>; private readonly didClick$; readonly didClick: _angular_core.OutputRef; private readonly didClickTag$; readonly didClickTag: _angular_core.OutputRef; private readonly didClickTitle$; readonly didClickTitle: _angular_core.OutputRef; private readonly didClickTagItem$; readonly didClickTagItem: _angular_core.OutputRef>; protected isClickable: boolean; protected isTagsClickable: boolean; protected isTitleClickable: boolean; ngOnInit(): void; protected onClickHost(): void; protected onClickTitle($event: Event): void; protected onClickTag($event: Event, tag: string): void; protected onClickTagItem($event: Event, tag: ListItemTag): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class ListTemplateComponent { readonly template: _angular_core.Signal | undefined>; readonly slot: _angular_core.InputSignal; readonly when: _angular_core.InputSignal<((context: T | ListContext) => boolean) | undefined>; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "ui-list-template", never, { "slot": { "alias": "slot"; "required": false; "isSignal": true; }; "when": { "alias": "when"; "required": false; "isSignal": true; }; }, {}, ["template"], never, true, never>; } declare class ListComponent implements AfterContentInit { private readonly changeDetectorRef; readonly templates: _angular_core.Signal[]>; readonly idField: _angular_core.InputSignal; readonly items: _angular_core.InputSignal; readonly trackBy: _angular_core.InputSignal; readonly selectable: _angular_core.InputSignal; readonly filter: _angular_core.InputSignal; readonly filterBy: _angular_core.InputSignal; readonly selections: _angular_core.ModelSignal; readonly containerClass: _angular_core.InputSignal; _selectionStates: Record; _noResultTemplate: TemplateRef | null; _emptyStateTemplate: TemplateRef | null; _empty: boolean; get hasSelection(): boolean; protected get classes(): { [x: string]: boolean; }; constructor(); ngAfterContentInit(): void; unselect(item: T): void; _template(context: T | ListContext, slot: ListTemplateSlots): TemplateRef | null; _isSelected(item: T): boolean; _toggleSelection(item: T): void; private equals; private checkSelections; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "ui-list", never, { "idField": { "alias": "idField"; "required": true; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "selections": { "alias": "selections"; "required": false; "isSignal": true; }; "containerClass": { "alias": "containerClass"; "required": false; "isSignal": true; }; }, { "selections": "selectionsChange"; }, ["templates"], never, true, never>; } declare class NgeUiListModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { ListComponent, ListItemArticleActionComponent, ListItemArticleComponent, ListTemplateComponent, NgeUiListModule }; export type { ListAction, ListContext, ListItemTag, ListTemplateSlots };