import React from 'react'; import type { OverlayScrollbars } from 'overlayscrollbars'; import type { PartialOptions, EventListeners } from 'overlayscrollbars'; import type { ComponentPropsWithoutRef, ElementRef, ElementType, ForwardedRef, ReactElement } from 'react'; type OverlayScrollbarsComponentBaseProps = ComponentPropsWithoutRef & { /** Tag of the root element. */ element?: T; /** OverlayScrollbars options. */ options?: PartialOptions | false | null; /** OverlayScrollbars events. */ events?: EventListeners | false | null; /** Whether to defer the initialization to a point in time when the browser is idle. (or to the next frame if `window.requestIdleCallback` is not supported) */ defer?: boolean | IdleRequestOptions; }; export type OverlayScrollbarsComponentProps = OverlayScrollbarsComponentBaseProps & { ref?: ForwardedRef>; }; export interface OverlayScrollbarsComponentRef { /** Returns the OverlayScrollbars instance or null if not initialized. */ osInstance(): OverlayScrollbars | null; /** Returns the root element. */ getElement(): ElementRef | null; } declare const OverlayScrollbarsComponent: (props: OverlayScrollbarsComponentBaseProps, ref: React.ForwardedRef>) => ReactElement | null; declare const OverlayScrollbarsComponentForwardedRef: (props: OverlayScrollbarsComponentProps) => ReturnType; export { OverlayScrollbarsComponentForwardedRef as OverlayScrollbarsComponent };