@base-ui/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.
40 lines • 1.77 kB
TypeScript
import * as React from 'react';
import type { Coords, HiddenState, OverflowEdges, ScrollAreaRoot, Size } from "./ScrollAreaRoot.js";
export interface ScrollAreaRootContext {
cornerSize: Size;
setCornerSize: React.Dispatch<React.SetStateAction<Size>>;
thumbSize: Size;
setThumbSize: React.Dispatch<React.SetStateAction<Size>>;
touchModality: boolean;
hovering: boolean;
setHovering: React.Dispatch<React.SetStateAction<boolean>>;
scrollingX: boolean;
setScrollingX: React.Dispatch<React.SetStateAction<boolean>>;
scrollingY: boolean;
setScrollingY: React.Dispatch<React.SetStateAction<boolean>>;
viewportRef: React.RefObject<HTMLDivElement | null>;
rootRef: React.RefObject<HTMLDivElement | null>;
scrollbarYRef: React.RefObject<HTMLDivElement | null>;
thumbYRef: React.RefObject<HTMLDivElement | null>;
scrollbarXRef: React.RefObject<HTMLDivElement | null>;
thumbXRef: React.RefObject<HTMLDivElement | null>;
cornerRef: React.RefObject<HTMLDivElement | null>;
handlePointerDown: (event: React.PointerEvent) => void;
handlePointerMove: (event: React.PointerEvent) => void;
handlePointerUp: (event: React.PointerEvent) => void;
handleScroll: (scrollPosition: Coords) => void;
rootId: string | undefined;
hiddenState: HiddenState;
setHiddenState: React.Dispatch<React.SetStateAction<HiddenState>>;
overflowEdges: OverflowEdges;
setOverflowEdges: React.Dispatch<React.SetStateAction<OverflowEdges>>;
viewportState: ScrollAreaRoot.State;
overflowEdgeThreshold: {
xStart: number;
xEnd: number;
yStart: number;
yEnd: number;
};
}
export declare const ScrollAreaRootContext: React.Context<ScrollAreaRootContext | undefined>;
export declare function useScrollAreaRootContext(): ScrollAreaRootContext;