/** * @deprecated Следует использовать утилиты из `@sima-land/ui-nucleons/test-utils`. */ export type IntersectionObserverEntryBase = Omit; /** * Возвращает новый объект, частично реализующий IntersectionObserverEntry. * @param base Базовая информация. * @return Объект. * @deprecated Следует использовать утилиты из `@sima-land/ui-nucleons/test-utils`. */ export declare function createFakeEntry(base: IntersectionObserverEntryBase): IntersectionObserverEntry; /** * Реализует интерфейс для управления состоянием пересечения элемента с область видимости. * @deprecated Следует использовать утилиты из `@sima-land/ui-nucleons/test-utils. */ export declare class IntersectionMock { _original: typeof IntersectionObserver; _observers: FakeIntersectionObserver[]; /** Конструктор. */ constructor(); /** * Подменяет глобальный конструктор IntersectionObserver. */ apply(): void; /** * Восстанавливает оригинальный глобальный конструктор IntersectionObserver. */ restore(): void; /** * Имитирует изменение состояния пересечения элемента с областью видимости. * @param entryArg Данные пересечения элемента. */ changeElementState(entryArg: IntersectionObserverEntryBase): void; /** * Записывает observer в список зарегистрированных. * @param observer Observer. */ _registerObserver(observer: FakeIntersectionObserver): void; /** * Удаляет observer из списка зарегистрированных. * @param observer Observer. */ _unregisterObserver(observer: FakeIntersectionObserver): void; } /** * Имитация IntersectionObserver. * @deprecated Следует использовать утилиты из `@sima-land/ui-nucleons/test-utils`. */ export declare class FakeIntersectionObserver implements IntersectionObserver { readonly root: Element | Document | null; readonly rootMargin: string; readonly scrollMargin: string; readonly thresholds: ReadonlyArray; _callback: IntersectionObserverCallback; _elements: Element[]; /** @inheritdoc */ constructor(callback: IntersectionObserverCallback, options?: IntersectionObserverInit); /** @inheritdoc */ observe(element: Element): void; /** @inheritdoc */ unobserve(element: Element): void; /** @inheritdoc */ disconnect(): void; /** @inheritdoc */ takeRecords(): never[]; /** * Запускает callback. * @param entry Данные пересечения элемента. */ _runCallback(entry: IntersectionObserverEntry): void; }