export function search(options?: { element?: HTMLElement; filterBy?: Selection; as?: Param; field?: string; type?: "contains" | "prefix" | "suffix" | "regexp"; from?: string; column?: string; label?: string; }): HTMLElement; /** * A HTML text search input. * @extends {Input} */ export class Search extends Input { /** * Create a new text search input. * @param {object} [options] Options object * @param {HTMLElement} [options.element] The parent DOM element in which to * place the search elements. If undefined, a new `div` element is created. * @param {Selection} [options.filterBy] A selection to filter the database * table indicated by the *from* option. * @param {Param} [options.as] The output param or selection. A selection * clause is added based on the current text search query. * @param {string} [options.field] The database column name to use within * generated selection clause predicates. Defaults to the *column* option. * @param {'contains' | 'prefix' | 'suffix' | 'regexp'} [options.type] The * type of text search query to perform. One of: * - `"contains"` (default): the query string may appear anywhere in the text * - `"prefix"`: the query string must appear at the start of the text * - `"suffix"`: the query string must appear at the end of the text * - `"regexp"`: the query string is a regular expression the text must match * @param {string} [options.from] The name of a database table to use as an * autocomplete data source for this widget. Used in conjunction with the * *column* option. * @param {string} [options.column] The name of a database column from which * to pull valid search results. The unique column values are used as search * autocomplete values. Used in conjunction with the *from* option. * @param {string} [options.label] A text label for this input. */ constructor({ element, filterBy, from, column, label, type, field, as }?: { element?: HTMLElement; filterBy?: Selection; as?: Param; field?: string; type?: "contains" | "prefix" | "suffix" | "regexp"; from?: string; column?: string; label?: string; }); id: string; type: "contains" | "prefix" | "suffix" | "regexp"; from: string; column: string; selection: Param; field: string; searchbox: HTMLInputElement; reset(): void; clause(value: any): import("@uwdata/mosaic-core").SelectionClause; publish(value: any): void; query(filter?: any[]): import("@uwdata/mosaic-sql").SelectQuery; queryResult(data: any): this; data: any; update(): this; datalist: HTMLDataListElement; } import type { Selection } from '@uwdata/mosaic-core'; import type { Param } from '@uwdata/mosaic-core'; import { Input } from './input.js'; //# sourceMappingURL=Search.d.ts.map