import lazyLoadAssets from './lazyLoadAssets'; export interface LazyLoadPluginConstructor { new (...args: any[]): T; prototype: T; initializer: (container: HTMLElement) => void; cleaner: (node: HTMLElement) => void; } export interface ActivateOnScrollOptions { activatedClass?: string; activatedClassTargetSelector?: string | null; initAttribute?: string; options?: IntersectionObserverInit; callback?: Function | null; removable?: boolean; fadeIn?: boolean; activateWithParent?: boolean; } /**! * ActivateOnScroll - Plugin to activate stuff when objects come in view * Also for lazy images * * Author: Bogdan Barbu * Team: Codingheads (codingheads.com) */ export default class activateOnScroll { #private; /** * default options for the Intersection observer */ static observerOptions: IntersectionObserverInit; static parent: lazyLoadAssets | null; static activateElement: (element: HTMLElement, { activatedClass, fadeIn, inPicture }?: { activatedClass?: string; fadeIn?: boolean; inPicture?: boolean; }) => void; static getSizesResizeObserver: () => ResizeObserver | null; constructor(element: HTMLElement, { activatedClass, activatedClassTargetSelector, initAttribute, options, callback, removable, fadeIn, activateWithParent, }?: ActivateOnScrollOptions); static initializer(container: HTMLElement): void; static cleaner(node: HTMLElement): void; static saveToGlobal(global?: Window & typeof globalThis): void; static addToJquery(): void; }