import { ShadowKeys } from './ShadowKeys';
export type ShadowsStates = {
    [ShadowKey in ShadowKeys]: boolean;
};
export declare class ShadowObserver {
    private intersectionObserver?;
    private scrollContainer;
    private onUpdateShadows;
    private sentinels;
    private requestCallbackId?;
    readonly shadowStates: ShadowsStates;
    constructor({ scrollContainer, onUpdateShadows, }: {
        onUpdateShadows: (eventData: ShadowsStates) => void;
        scrollContainer: HTMLElement;
    });
    private init;
    private onIntersect;
    dispose(): void;
}
export { ShadowKeys } from './ShadowKeys';
export { shadowObserverClassNames } from './shadowObserverClassNames';
