import { OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { IconService } from '../../../services/icons.service'; import { InputMetadata, InputOption } from '../../types'; import * as i0 from "@angular/core"; export declare class SelectSearchComponent implements OnChanges, OnDestroy { label: string; labelProperty: string; valueProperty: string; multiple: boolean; placeholder: string; /** * Input configuration object. * @type {InputMetadata} * @property control - The Angular FormControl for the select input. * @property label - The label for the select. * @property options - The available options for the select. * @property placeholder - The placeholder text. */ props: InputMetadata & { mode?: 'legacy' | 'strict'; }; icon: IconService; private changeDetector; private i18n; private modals; /** * Label visible sobre el selector (estilo val-form). Solo se muestra si viene * explícito por `props.label` o el input `label`; sin él, no se renderiza nada. */ get displayLabel(): string; /** Get resolved label with i18n fallback (título del modal). */ getLabel(): string; /** Get resolved placeholder with i18n fallback */ getPlaceholder(): string; /** Get close button text */ getCloseText(): string; /** Get no results text */ getNoResultsText(): string; /** Get items selected text */ getItemsSelectedText(count: number): string; searchTerm: string; filteredItems: InputOption[]; selectedItems: InputOption[]; displayValue: string; private previousOptions; private isProcessingChanges; private valueChangesSubscription?; ngOnInit(): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; ionViewWillEnter(): void; private subscribeToValueChanges; private areOptionsEqual; private initializeItems; private syncControlValueWithSelectedItems; private applyDefaultValue; /** * Abre el picker vía `ModalService.openAdaptive` (Regla #5: full-screen en * mobile, card flotante en desktop) en vez del `ion-modal` con breakpoints * que este componente tenía embebido antes — mismo bottom-sheet en * cualquier tamaño de pantalla, sin el tratamiento de card centrada que ya * usa el resto de los modales del factory. El filtrado, la selección y el * footer "Aplicar" (modo `multiple`) viven en `SelectSearchPickerModalComponent`. */ openPicker(): Promise; preventDefaultBehavior(event: MouseEvent): void; updateDisplayValue(): void; applyChanges(): void; reset(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }