/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { NgZone, OnDestroy } from '@angular/core';
import { Subject } from 'rxjs';
import * as i0 from "@angular/core";
type ScrollSyncEvent = {
    scrollLeft?: number;
    scrollTop?: number;
    sourceType: string;
};
type SourceType = 'treelist' | 'header' | 'timeline';
/**
 * @hidden
 */
export declare class ScrollSyncService implements OnDestroy {
    private ngZone;
    changes: Subject<ScrollSyncEvent>;
    private elements;
    private subscriptions;
    private syncingTimeline;
    private syncingTreeList;
    constructor(ngZone: NgZone);
    registerElement(el: any, sourceType: SourceType): void;
    ngOnDestroy(): void;
    syncScrollTop(sourceType: SourceType, targetType: SourceType): void;
    resetTimelineScrollLeft(): void;
    private scroll;
    static ɵfac: i0.ɵɵFactoryDeclaration<ScrollSyncService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ScrollSyncService>;
}
export {};
