export declare enum ShadowKeys {
    SHOW_LEFT_SHADOW = "showLeftShadow",
    SHOW_RIGHT_SHADOW = "showRightShadow"
}
export type ShadowsStates = {
    [ShadowKey in ShadowKeys]: boolean;
};
export declare const shadowObserverClassNames: {
    SENTINEL_LEFT: string;
    SENTINEL_RIGHT: string;
    SHADOW_CONTAINER: string;
};
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;
}
