import { ElementRef, EventEmitter, OnDestroy, OnInit } from "@angular/core"; import { FormControl } from "@angular/forms"; import { MatAutocompleteSelectedEvent } from "@angular/material/autocomplete"; import { MatChipInputEvent } from "@angular/material/chips"; import { EmployeeService } from "blg-akaun-ts-lib"; import { Observable } from "rxjs"; export declare class SalesAgentSearchComponent implements OnInit, OnDestroy { private employeeService; salesAgentControl: FormControl; selectionChange: EventEmitter; viewModelStore: any; ColumnViewActions: any; ColumnViewSelectors: any; label: string; private subs; separatorKeysCodes: number[]; filteredSalesAgents$: Observable; salesAgents: any[]; toppingsControl: FormControl; salesAgentInput: ElementRef; constructor(employeeService: EmployeeService); ngOnInit(): void; add(event: MatChipInputEvent): void; remove(salesAgent: string): void; selected(event: MatAutocompleteSelectedEvent): void; /** * Sales-agent (employee) autocomplete for the advanced-search chip list. * * Replaces the raw SELECT that went through SubQueryService: * * FROM bl_fi_mst_entity_hdr hdr * WHERE hdr.name ILIKE '%x%' * AND hdr.status = 'ACTIVE' * AND hdr.is_employee = true * LIMIT 10 * * EmployeeService points at entity/employees, and EntityController sets * is_employee = true from that path segment, so the is_employee scoping comes * from the endpoint. EntityUow.whereClauseCriteriaForSnapshot then applies * `search_word` via EntityUowHelper.generateSearchWordCondition and `status` via * EntityUowHelper.whereClauseHdr. The LIMIT 10 becomes the pagination limit. * * Behaviour note: with is_employee set, `search_word` ILIKEs employee_code, * job_title, department and the other employee columns alongside name, so the * autocomplete matches more than the old name-only filter. */ filterSalesAgent(search: string): void; optionClicked(event: Event, salesAgent: any): void; truncate(str: any, no_words: any): any; toggleSelection(salesAgent: any): void; onReset(): void; ngOnDestroy(): void; }