@base-ui-components/react
Version:
Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.
45 lines (44 loc) • 1.72 kB
TypeScript
import * as React from 'react';
interface Size {
width: number;
height: number;
}
export declare function useScrollAreaRoot(params: useScrollAreaRoot.Parameters): {
getRootProps: (externalProps?: {}) => import("../../utils/types.js").WithBaseUIEvent<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
handlePointerDown: (event: React.PointerEvent) => void;
handlePointerMove: (event: React.PointerEvent) => void;
handlePointerUp: (event: React.PointerEvent) => void;
handleScroll: () => void;
cornerSize: Size;
setCornerSize: React.Dispatch<React.SetStateAction<Size>>;
thumbSize: Size;
setThumbSize: React.Dispatch<React.SetStateAction<Size>>;
touchModality: boolean;
cornerRef: React.RefObject<HTMLDivElement | null>;
scrolling: boolean;
setScrolling: React.Dispatch<React.SetStateAction<boolean>>;
hovering: boolean;
setHovering: React.Dispatch<React.SetStateAction<boolean>>;
viewportRef: React.RefObject<HTMLDivElement | null>;
scrollbarYRef: React.RefObject<HTMLDivElement | null>;
scrollbarXRef: React.RefObject<HTMLDivElement | null>;
thumbYRef: React.RefObject<HTMLDivElement | null>;
thumbXRef: React.RefObject<HTMLDivElement | null>;
rootId: string | undefined;
hiddenState: {
scrollbarYHidden: boolean;
scrollbarXHidden: boolean;
cornerHidden: boolean;
};
setHiddenState: React.Dispatch<React.SetStateAction<{
scrollbarYHidden: boolean;
scrollbarXHidden: boolean;
cornerHidden: boolean;
}>>;
};
export declare namespace useScrollAreaRoot {
interface Parameters {
dir: string | undefined;
}
}
export {};