interface ScrollToCursorOptions {
    behavior?: ScrollBehavior;
    block?: ScrollLogicalPosition;
    inline?: ScrollLogicalPosition;
    highlightDuration?: number;
}
export declare function createCursorRegistry(): {
    /**
     * Register a cursor element when it's created.
     *
     * @param clientId - The clientId of the cursor to register.
     * @param element  - The cursor element to register.
     */
    registerCursor(clientId: number, element: HTMLElement): void;
    /**
     * Unregister a cursor element when it's removed.
     *
     * @param clientId - The clientId of the cursor to unregister.
     */
    unregisterCursor(clientId: number): void;
    /**
     * Scroll to a cursor by clientId.
     *
     * @param clientId - The clientId of the cursor to scroll to.
     * @param options  - The options for the scroll.
     * @return true if cursor was found and scrolled to, false otherwise.
     */
    scrollToCursor(clientId: number, options?: ScrollToCursorOptions): boolean;
    /**
     * Clear the registry.
     */
    removeAll(): void;
};
export type CursorRegistry = ReturnType<typeof createCursorRegistry>;
export {};
//# sourceMappingURL=cursor-registry.d.ts.map