import { AnimationEvent } from '@angular/animations'; import * as i2 from '@angular/cdk/overlay'; import { ScrollStrategy, Overlay, RepositionScrollStrategy, ConnectedPosition, CdkOverlayOrigin } from '@angular/cdk/overlay'; import * as i0 from '@angular/core'; import { AfterContentInit, OnDestroy, EventEmitter, InjectionToken } from '@angular/core'; import * as i1$1 from '@sbb-esta/angular/core'; import { TypeRef } from '@sbb-esta/angular/core'; import { Observable } from 'rxjs'; import { SbbAutocompleteTrigger } from '@sbb-esta/angular/autocomplete'; import { SbbInput } from '@sbb-esta/angular/input'; import * as i1 from '@angular/cdk/portal'; import * as i4 from '@sbb-esta/angular/button'; import * as i3 from '@sbb-esta/angular/icon'; declare class SbbSearch implements AfterContentInit, OnDestroy { /** The autocomplete trigger optionally contained in the search element. */ _autocompleteTrigger?: SbbAutocompleteTrigger; /** The nested form control. */ _input: SbbInput; /** Identifier of search. */ id: string; /** * The indicator icon, which will be used in the button. * * e.g. svgIcon="magnifying-glass-small" */ svgIcon: string; /** Type of the search button. Defaults to "button" if not specified. */ type: string; /** aria-label for the search button. */ ariaLabel: string; /** aria-labelledby for the search button. */ ariaLabelledby: string; /** aria-describedby for the search button. */ ariaDescribedby: string; /** * Event emitted when either the ENTER key is pressed on the input field, * the search button is clicked or an autocomplete option is selected. */ search: EventEmitter; get disabled(): boolean; /** Whether the search is focused. */ get focused(): boolean; private _focused; private _destroyed; private _elementRef; private _injector; constructor(...args: unknown[]); ngAfterContentInit(): void; ngOnDestroy(): void; /** When the input inside receives focus, we update the focus state. */ _onFocus(): void; /** When the input inside loses focus, we update the focus state. */ _onBlur(): void; _keydown(event: TypeRef): void; /** Called whenever the current value should be emitted. */ _emitSearch(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** Injection token that determines the scroll handling while a select is open. */ declare const SBB_SEARCH_SCROLL_STRATEGY: InjectionToken<() => ScrollStrategy>; /** @docs-private */ declare function SBB_SEARCH_SCROLL_STRATEGY_PROVIDER_FACTORY(overlay: Overlay): () => RepositionScrollStrategy; /** @docs-private */ declare const SBB_SEARCH_SCROLL_STRATEGY_PROVIDER: { provide: InjectionToken<() => ScrollStrategy>; deps: (typeof Overlay)[]; useFactory: typeof SBB_SEARCH_SCROLL_STRATEGY_PROVIDER_FACTORY; }; declare class SbbHeaderSearch { private _breakpointObserver; private _changeDetectorRef; _labelSearch: string; /** Identifier of search. */ id: string; /** The label to be shown next to the indicator icon. */ label?: string; /** Type of the search button. Defaults to "button" if not specified. */ type: string; /** The contained search instance. */ _search: SbbSearch; /** The indicator icon from the contained sbb-search component. */ get svgIcon(): string; /** Whether or not the overlay panel is open. */ get panelOpen(): boolean; /** The id of the overlay panel. */ readonly panelId: string; _overlayPanelClass: string | string[]; /** * This position config ensures that the top "start" corner of the overlay * is aligned with with the top "start" of the origin by default (overlapping * the trigger completely). */ _positions: Observable; /** Strategy that will be used to handle scrolling while the select panel is open. */ _scrollStrategy: ScrollStrategy; /** The animation state, which indicates whether the overlay is open or not. */ _animationState: 'void' | 'open'; _overlayWidth: Observable; _overlayOrigin: CdkOverlayOrigin; /** Factory function used to create a scroll strategy for this select. */ private _scrollStrategyFactory; /** Whether or not the overlay panel is open. */ private _panelOpen; private _animationSubscription; constructor(...args: unknown[]); /** Toggles the overlay panel open or closed. */ toggle(): void; /** Opens the overlay panel. */ open(): void; /** Closes the overlay panel and focuses the host element. */ close(): void; /** Opens the overlay and prevents the click event from bubbling. */ _handleClick(event: TypeRef): void; /** * Called on overlay animation start. * If available and in a browser environment, opens the autocomplete with a delay * and updates the autocomplete size until the end of the overlay animation. */ _onAnimationStart(event: AnimationEvent): void; /** * Called at the end of the overlay animation. * Unsubscribes from the autocomplete animation subscription, if available. */ _onAnimationDone(event: AnimationEvent): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SbbSearchModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { SBB_SEARCH_SCROLL_STRATEGY, SBB_SEARCH_SCROLL_STRATEGY_PROVIDER, SBB_SEARCH_SCROLL_STRATEGY_PROVIDER_FACTORY, SbbHeaderSearch, SbbSearch, SbbSearchModule };