import * as _angular_core from '@angular/core'; import { OnInit } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { TreeNode, TreeGenerator, TreeGroupingFn, CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select'; import { ALuCoreSelectApiDirective } from '@lucca-front/ng/core-select/api'; import { ILuDepartment } from '@lucca-front/ng/department'; import { Observable } from 'rxjs'; import { ILuApiItem } from '@lucca-front/ng/api'; declare class NoopTreeSelectDirective, V> implements TreeGenerator { #private; groupingFnInput: _angular_core.InputSignal>; groupingFn: _angular_core.WritableSignal>; constructor(); generateTrees(items: T[]): T[]; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵdir: _angular_core.ɵɵDirectiveDeclaration, "lu-simple-select[noopTreeSelect],lu-multi-select[noopTreeSelect]", never, { "groupingFnInput": { "alias": "noopTreeSelect"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare class LuCoreSelectDepartmentsDirective extends ALuCoreSelectApiDirective> implements OnInit, CoreSelectApiTotalCountProvider { protected httpClient: HttpClient; url: _angular_core.InputSignal; filters: _angular_core.InputSignal>; operationIds: _angular_core.InputSignal; uniqueOperationIds: _angular_core.InputSignal; appInstanceId: _angular_core.InputSignal; searchDelimiter: _angular_core.InputSignal; ngOnInit(): void; protected buildOptions(): Observable[]>; protected getOptionsPage(params: Record | null, page: number): Observable<{ items: TreeNode[]; isLastPage: boolean; }>; protected getOptions(params: Record | null): Observable[]>; trim(options: TreeNode[], clue: string): TreeNode[]; protected params$: Observable>; totalCount$: Observable; protected flattenTree(branch: TreeNode): T[]; protected optionKey: (option: TreeNode | T) => number; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵdir: _angular_core.ɵɵDirectiveDeclaration, "lu-simple-select[departments],lu-multi-select[departments]", ["luDepartments"], { "url": { "alias": "url"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "operationIds": { "alias": "operationIds"; "required": false; "isSignal": true; }; "uniqueOperationIds": { "alias": "uniqueOperationIds"; "required": false; "isSignal": true; }; "appInstanceId": { "alias": "appInstanceId"; "required": false; "isSignal": true; }; "searchDelimiter": { "alias": "searchDelimiter"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof NoopTreeSelectDirective; inputs: {}; outputs: {}; }]>; } interface LuCoreSelectLegalUnit extends ILuApiItem { countryId: number; } interface LuCoreSelectEstablishment extends ILuApiItem { code: string; legalUnitId: number; legalUnit: LuCoreSelectLegalUnit; } export { LuCoreSelectDepartmentsDirective, NoopTreeSelectDirective }; export type { LuCoreSelectEstablishment, LuCoreSelectLegalUnit };