import { EventEmitter } from '../../stencil-public-runtime'; import { FIELD_HINT_OPTION, FIRE_ANALYTICS_TRIGGER } from '../../common/interfaces/ui'; import { ICustomGoogleAnalyticsConfig } from '@progleasing/grit-universal-analytics'; export declare class GritField { private inputRef; private textareaRef; private selectRef; private get control(); private labelRef; private controlInfixRef; private fieldMessagesRef; private errorMessages; private hintMessage; private prefixRef; private infixRef; private suffixRef; private prefixIconList; private suffixIconList; private _isDisabled; private _isHover; private _isTouched; private _isFocus; private _previousHintDisplay; private _previousErrorKey; private _resetForm; private errorKeys; private fieldMessageManager; host: HTMLGritWcFieldElement; _renderTrigger: number; /** Sets the field hint option. */ hintOption: FIELD_HINT_OPTION; /** Sets the field to show or not a validation icon. */ useValidationIcons: boolean; /** Uses this property to validate the field. */ errorKey: string; /** * It's the custom object to be passed into the `GoogleAnalytics.getInstance().pushCustomEvent()` function. */ analyticsCustomObj: ICustomGoogleAnalyticsConfig; /** * If it is set to false, no event will be pushed into Google Analytics. */ analyticsEnabled: boolean; /** * If it is set to true, no personally identifiable information will be pushed into Google Analytics. */ pii: boolean; /** When to fire Google Analitycs trigger. */ fireTriggerOption: FIRE_ANALYTICS_TRIGGER; /** * Analytics requires an event emitted when the error changes * @param newValue The new value of errorKey * @param oldValue The previous value of errorKey */ errorKeyWatchHandler(newValue: boolean, oldValue: boolean): void; gritErrorMessageUpdate: EventEmitter; componentDidLoad(): void; componentWillLoad(): void; /** * After the render, any elements we are manually controlling should be * handled here. */ componentDidRender(): void; handleReset(ev: any): void; triggerRender(): Promise; setTouched(touched: boolean): Promise; /** * changes padding and margins depending on the presence of suffix and prefix icons */ updateIcons(): Promise; /** * Force the field messages to re-render, useful when message content changes * by the host application * @param forceRerender force the animation to play again regardless of the field state */ updateMessages(forceRerender?: boolean): Promise; render(): any; private FIRE_ANALYTICS_TRIGGER; private handleGoogleAnalyticsEvents; private handleGoogleAnalyticsField; private onBlur; private isFloatLabel; private isError; private isErrorDisplay; private isFocus; private isHover; private isTouched; private isDisabled; private isHintDisplay; private handleControlInfixClick; private handleControlMouseEnter; private handleControlMouseLeave; private registerCustomHandlers; private renderValidationIcons; private ariaDisable; }