import { EventEmitter } from '../../stencil-public-runtime'; import { ICustomGoogleAnalyticsConfig } from '@progleasing/grit-universal-analytics'; export declare class GritSlider { private sliderWidth; private thumbWidth; private deltaMaxMin; private deltaValueMin; private clickOffset; private currentDraggedElement; private isMobile; private pageX; private slider; private thumb; private labelContainer; private barFilled; private thumbLabelDistance; host: HTMLGritWcSliderElement; /** Stores the current position in px. */ nextPosition: number; /** Stores current percentage. */ percentage: number; /** * Array that contains a px value for each position of the slider */ values: any[]; dragging: boolean; /** Minimum value of the slider. */ min: number; /** Maximum value of the slider. */ max: number; /** Value of the slider. */ value: number; /** * Steps between possible values in the slider. * In case step is negative the default step will be 1. */ step: number; /** * Prefix of the label. Useful in case you want to show * a different currency, or unit. For example, `Month` or `£`. */ label: 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; /** * Event fired each time a change in the value * of the slider happens, returning the current value. */ update: EventEmitter; endMovement(): void; updatePosition(): void; componentDidLoad(): void; componentWillLoad(): void; onScroll(): void; onMouseDown(e: any): void; onMouseUp(): void; onMouseMove(e: any): void; onTouchDown(e: any): void; onTouchEnd(): void; onTouchMove(e: any): void; onTouchCancel(): void; private resizeAndPositionElementsOnWindowResize; connectedCallback(): void; disconnectedCallback(): void; private onThumbDown; private getCenterPositionY; private invertLabelContainer; /** * Sets barFilled, thumb and label container initial position. */ private getCurrentPosition; /** * Generate array of all positions in px. */ private getValuesPerPx; /** * Sets values for thumb, bar filled and labelContainer elements. */ private setElementValues; private positionLabelContainer; /** * When mouseup or touchend are emitted, this function will set the value to the nearest position. */ private calculatePosition; /** * When mousedown or touchstart is emitted, it checks which element is being toggled. * In case there is more than 1 slider elements, we can assure that only one will be affected. */ private checkElementId; /** Gets called when mousedown or touchstart is emitted. */ private startEvent; /** Gets called when mouseup or touchend is emitted. */ private endEvent; /** Gets called when mousemove or touchmove is emitted. */ private moveEvent; private pushGoogleAnalyticsEvent; private getLabelText; render(): any; }