import { ElementRef, EventEmitter, Renderer } from '@angular/core'; import { NgControl } from '@angular/forms'; import { Config } from '../../config/config'; import { BaseInput } from '../../util/base-input'; import { TimeoutDebouncer } from '../../util/debouncer'; import { Platform } from '../../platform/platform'; /** * @name Searchbar * @module ionic * @description * Manages the display of a Searchbar which can be used to search or filter items. * * @usage * ```html * * * ``` * * @demo /docs/demos/src/searchbar/ * @see {@link /docs/components#searchbar Searchbar Component Docs} */ export declare class Searchbar extends BaseInput { private _plt; _shouldBlur: boolean; _shouldAlignLeft: boolean; _isCancelVisible: boolean; _spellcheck: boolean; _autocomplete: string; _autocorrect: string; _isActive: boolean; _showCancelButton: boolean; _animated: boolean; _inputDebouncer: TimeoutDebouncer; /** * @input {string} Set the the cancel button text. Default: `"Cancel"`. */ cancelButtonText: string; /** * @input {boolean} If true, show the cancel button. Default `false`. */ showCancelButton: boolean; /** * @input {number} How long, in milliseconds, to wait to trigger the `ionInput` event after each keystroke. Default `250`. */ debounce: number; /** * @input {string} Set the input's placeholder. Default `"Search"`. */ placeholder: string; /** * @input {string} Set the input's autocomplete property. Values: `"on"`, `"off"`. Default `"off"`. */ autocomplete: string; /** * @input {string} Set the input's autocorrect property. Values: `"on"`, `"off"`. Default `"off"`. */ autocorrect: string; /** * @input {string|boolean} Set the input's spellcheck property. Values: `true`, `false`. Default `false`. */ spellcheck: string | boolean; /** * @input {string} Set the type of the input. Values: `"text"`, `"password"`, `"email"`, `"number"`, `"search"`, `"tel"`, `"url"`. Default `"search"`. */ type: string; /** * @input {boolean} If true, enable searchbar animation. Default `false`. */ animated: boolean; /** * @output {event} Emitted when the Searchbar input has changed, including when it's cleared. */ ionInput: EventEmitter; /** * @output {event} Emitted when the cancel button is clicked. */ ionCancel: EventEmitter; /** * @output {event} Emitted when the clear input button is clicked. */ ionClear: EventEmitter; constructor(config: Config, _plt: Platform, elementRef: ElementRef, renderer: Renderer, ngControl: NgControl); _searchbarInput: ElementRef; _searchbarIcon: ElementRef; _cancelButton: ElementRef; /** * @hidden * On Initialization check for attributes */ ngOnInit(): void; /** * @hidden */ _inputUpdated(): void; /** * @hidden * Positions the input search icon, placeholder, and the cancel button * based on the input value and if it is focused. (ios only) */ positionElements(): void; positionPlaceholder(): void; /** * @hidden * Show the iOS Cancel button on focus, hide it offscreen otherwise */ positionCancelButton(): void; /** * @hidden * Update the Searchbar input value when the input changes */ inputChanged(ev: any): void; /** * @hidden * Sets the Searchbar to focused and active on input focus. */ inputFocused(): void; /** * @hidden * Sets the Searchbar to not focused and checks if it should align left * based on whether there is a value in the searchbar or not. */ inputBlurred(): void; /** * @hidden * Clears the input field and triggers the control change. */ clearInput(ev: UIEvent): void; /** * @hidden * Clears the input field and tells the input to blur since * the clearInput function doesn't want the input to blur * then calls the custom cancel function if the user passed one in. */ cancelSearchbar(ev: UIEvent): void; setFocus(): void; }