import { EventEmitter } from "../../stencil-public-runtime"; export declare class GxIntersectionObserver { element: HTMLGxIntersectionObserverElement; private defaultThreshold; private observer; private rootElement; private rootMarginString; /** * Bottom margin around the root element */ readonly bottomMargin: string; /** * A CSS class to set as the gx-intersection-observer element class */ readonly cssClass: string; /** * Left margin around the root element */ readonly leftMargin: string; /** * Numeric values representing percentages of the target element which are visible. */ readonly threshold: string; /** * Top margin around the root element */ readonly topMargin: string; /** * Right margin around the root element */ readonly rightMargin: string; /** @Prop() Set the ID of the component that is used as the viewport, default is the browser. * */ readonly root: string; /** * Emitted whenever the control reaches a threshold specified by the threshold property * @param IntersectionObserverEntry : Details of intersection object. */ intersectionUpdate: EventEmitter; /** * Used to check that the passed value is a valid Device-independent-pixel (dip) value, and transform the dip to px value @example: "200dip", "50dip" * @param percentValue : Represent the given dip value * @returns When is a valid dip value returns the value converted to pixels, otherwise returns "0px" */ private checkValidDipValue; /** * Used to check that the passed value is a valid percentage. @example: "200%" * @param percentValue : Represent the given percentage value * @returns When is a valid percentage value returns the value, otherwise returns "0px" */ private checkValidPercentValue; /** * Transform the given dip value to pixels * @param dipValue : Represent the given dip value @example "10dip" * @returns Returns the given value converted to px @example "10px" */ private convertDipToPxValue; /** * Convert the given percentages string representing a threshold value in decimal value * @param threshold Threshold string representation @example: "10%" * @returns Decimal value between 0 and 1 @example: 0.1 */ private convertThresholdValueToNumber; /** * Create a valid Javascript IntersectionObserver API threshold options value * @param threshold Threshold string representation @example: "10%,30%,40%" * @returns Valid array of numbers in the range between 0 and 1 @example: [0.1, 0.3, 0.4] */ private parseThreshold; /** * Initialize intersection observer with its options and start observing */ private setIntersectionObserver; /** * Transform the given initial intersection-observer component properties into Javascript IntersectionObserver API options valid values */ private setIntersectionObserverOptionsFromProperties; /** * Check that the given string value is a valid percentage or device independent pixel (dip) value * @param position : Represent the given dip or px value */ private validatePosition; componentDidLoad(): void; disconnectedCallback(): void; render(): any; }