import IdsInput from '../ids-input/ids-input'; import './ids-trigger-button'; import type IdsTriggerButton from './ids-trigger-button'; /** * IDS Trigger Field Component * @type {IdsTriggerField} * @inherits IdsInput * @part container * @part content-area - the content with trigger buttons and input element * @part field-container - element that wraps input field, trigger buttons, and inline errors (used for styling) * @part input - internal HTMLInputElement * @part popup - internal IdsPopup used for optional Autocomplete feature */ export default class IdsTriggerField extends IdsInput { #private; /** * Call the constructor and then initialize */ constructor(); /** * Get a list of element dependencies for this component * @returns {object} of elements */ get elements(): { content: Element | null | undefined; label: HTMLLabelElement | null | undefined; text: Element | null | undefined; }; /** * Custom Element `connectedCallback` implementation * @returns {void} */ connectedCallback(): void; /** * Detach all focus-related event listeners * @private */ disconnectEvents(): void; disconnectedCallback(): void; /** * Return the attributes we handle as getters/setters * @returns {Array} The attributes in an array */ static get attributes(): string[]; /** * Push color variant to the container element * @returns {void} */ onColorVariantRefresh(): void; /** * Creates the Template for rendering an IdsTriggerField's contents * @returns {string} containing the template */ template(): string; /** * @readonly * @returns {Array} containing references to slotted IdsTriggerButtons on this component */ get buttons(): IdsTriggerButton[]; /** * @param {boolean | string} value true if this trigger field's buttons should be made accessible using the tab key */ set tabbable(value: boolean | string); /** * @returns {boolean | string} true if this trigger field's buttons are accessible using the tab key */ get tabbable(): boolean | string; /** * Sets the disabled attribute * @param {boolean | string} value string value from the disabled attribute */ set disabled(value: boolean | string); get disabled(): boolean | string; /** * Sets the readonly attribute * @param {boolean} r string value from the read only attribute */ set readonly(r: boolean); get readonly(): boolean | string; /** * Sets the id internally and externally * @param {string} value id value */ set id(value: string); get id(): string; /** * Set format for date, time * @param {string} val date, time format */ set format(val: string | null); /** * Return format * @returns {string} return date format */ get format(): string | null; /** * Updates trigger buttons when the trigger field's fieldHeight property is updated * @param {string} val the new field height setting */ onFieldHeightChange(val: string): void; /** * Fire the trigger event and action. */ trigger(): void; /** * Focus the trigger button (used by dropdown when tab is pressed) */ focusTriggerButton(): void; /** * Target the field container for tooltip positioning to center tooltip on entire field * @returns {HTMLElement} The field container element for proper tooltip alignment */ onTooltipTargetDetection(): HTMLElement; }