import * as React from 'react'; import * as PropTypes from 'prop-types'; import type { JSXElement } from '@fluentui/utilities'; import type { IScrollContainerProps } from './ScrollContainer.types'; export interface IVisibleCallback { (scrollTop: number): void; } export interface IScrollContainer { observe(element: Element): void; unobserve(element: Element): void; registerVisibleCallback(callback: IVisibleCallback): void; } export interface IScrollContainerContext { scrollContainer: IScrollContainer; } /** * Use the `ScrollContainerContext` instead, as PropTypes legacy context types are deprecated in React 19. * @deprecated */ export declare const ScrollContainerContextTypes: { scrollContainer: PropTypes.Validator; }; export declare const ScrollContainerContext: React.Context; export declare class ScrollContainer extends React.Component> implements IScrollContainer { private _observer; private _root; private _callbacks; private _pendingElements; private _async; constructor(props: IScrollContainerProps); getChildContext(): IScrollContainerContext; observe(element: Element): void; unobserve(element: Element): void; registerVisibleCallback(callback: IVisibleCallback): void; render(): JSXElement; componentWillUnmount(): void; private _resolveRoot; private _onIntersection; private _init; private _onScroll; }