import { type HTMLAttributes, type RendererElement, type VNode } from 'vue'; import { type SearchAttribute } from './common'; import { type OUIAProps } from '../../helpers/ouia'; export { SearchInputKey, type SearchAttribute, type SearchInputProvide } from './common'; interface Props extends OUIAProps, /* @vue-ignore */ HTMLAttributes { /** Flag indicating if search input is disabled. */ disabled?: boolean; /** An accessible label for the search input. Defaults to the `searchInput` message. */ ariaLabel?: string; /** Placeholder text of the search input. */ placeholder?: string; /** A suggestion for autocompleting. */ hint?: string; /** Name attribute for the search input. */ name?: string; /** Type of the input */ type?: 'text' | 'date' | 'datetime-local' | 'email' | 'month' | 'number' | 'password' | 'search' | 'tel' | 'time' | 'url'; /** Additional attributes added to the search input element, such as its id. */ inputAttrs?: Record; /** Flag to always display the utilities. By default they are only displayed when the search input has a value. */ utilitiesDisplayed?: boolean; /** z-index of the advanced search form when appendTo is not inline. */ zIndex?: number; /** Label for the button which resets the advanced search form and clears the search input. Defaults to the `searchInputReset` message. */ resetButtonLabel?: string; /** Label for the button which calls the onSearch event handler. Defaults to the `searchInputSubmit` message. */ submitSearchButtonLabel?: string; /** Accessible label for the button which opens the advanced search form menu. Defaults to the `searchInputOpenMenu` message. */ openMenuButtonAriaLabel?: string; /** Accessible label for the button to navigate to previous result. Defaults to the `searchInputPrevious` message. */ previousNavigationButtonAriaLabel?: string; /** Flag indicating if the previous navigation button is disabled. */ previousNavigationButtonDisabled?: boolean; /** Accessible label for the button to navigate to next result. Defaults to the `searchInputNext` message. */ nextNavigationButtonAriaLabel?: string; /** Flag indicating if the next navigation button is disabled. */ nextNavigationButtonDisabled?: boolean; /** The number of search results returned. Either a total number of results, * or a string representing the current result over the total number of results. i.e. "1 / 5". */ resultsCount?: number | string; /** Screenreader text that will appear after resultsCount to give context for what that value represents to assistive technologies. Defaults to the `searchInputResults` message. */ resultsCountContext?: string; /** Array of attribute values used for dynamically generated advanced search. */ attributes?: string[] | SearchAttribute[]; /** Attribute label for strings unassociated with one of the provided listed attributes. Defaults to the `searchInputWords` message. */ wordsAttrLabel?: string; /** Makes the search input expandable/collapsible through a toggle button. */ expandable?: boolean; /** An accessible label for the expandable search input toggle. */ expandButtonAriaLabel?: string; /** Flag indicating animations should be enabled when the expandable search input expands and collapses. */ animations?: boolean; /** Delimiter in the query string for pairing attributes with search values. * Required whenever attributes are passed as props. */ advancedSearchDelimiter?: string; /** The container to append the advanced search menu to. Defaults to the element wrapping the search input; * "inline" renders the menu in the document flow instead of floating it. * If your menu is being cut off you can append it to an element higher up the DOM tree. * Some examples: * append-to="body" * append-to="#element-id" */ appendTo?: 'inline' | string | RendererElement | null; /** A callback for when the user clicks the clear button. */ onClear?: (event: Event) => void; /** A callback for when the user clicks to navigate to next result. */ onNextClick?: (event: Event) => void; /** A callback for when the user clicks to navigate to previous result. */ onPreviousClick?: (event: Event) => void; /** A callback for when the open advanced search button is clicked. */ onToggleAdvancedSearch?: (event: Event, isOpen?: boolean) => void; /** A callback for when the search button is clicked. */ onSearch?: (value: string, event: Event, attrValueMap: Record) => void; } declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: __VLS_WithSlots; /** Focuses the search input. */ focus(options?: FocusOptions): void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "update:modelValue": (value: string) => any; "update:expanded": (value: boolean) => any; "update:advancedSearchOpen": (value: boolean) => any; }, string, import("vue").PublicProps, Readonly & Readonly<{ "onUpdate:modelValue"?: ((value: string) => any) | undefined; "onUpdate:expanded"?: ((value: boolean) => any) | undefined; "onUpdate:advancedSearchOpen"?: ((value: boolean) => any) | undefined; }>, { type: "number" | "search" | "time" | "text" | "date" | "datetime-local" | "email" | "month" | "password" | "tel" | "url"; attributes: string[] | SearchAttribute[]; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, { [K: `attribute:${string}`]: (props?: Record) => VNode[]; /** Attribute label for strings unassociated with one of the provided listed attributes. */ 'words-attr-label'?: (props?: Record) => VNode[]; /** Additional elements added after the attributes in the advanced search form. */ 'form-additional-items'?: (props?: Record) => VNode[]; }>; type __VLS_WithSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=SearchInput.vue.d.ts.map