@nipe-solutions/react-spring-bottom-sheet
Version:
Accessible and composable bottom sheets for React
30 lines (29 loc) • 1.24 kB
TypeScript
import type { PointerEventHandler } from 'react';
import type { TransitionPhase } from '../controller/types.js';
import type { OpenChangeReason } from '../public-types.js';
export interface SheetContextValue {
open: boolean;
present: boolean;
transitionPhase: TransitionPhase;
modal: boolean;
dismissible: boolean;
titleId: string | undefined;
descriptionId: string | undefined;
requestOpenChange(open: boolean, reason: OpenChangeReason): void;
registerTitle(id: string): () => void;
registerDescription(id: string): () => void;
registerViewport(element: HTMLElement | null): void;
registerContent(element: HTMLElement | null): void;
registerBackdrop(element: HTMLElement | null): void;
interactionHandlers: {
onPointerDown: PointerEventHandler<HTMLElement>;
onPointerMove: PointerEventHandler<HTMLElement>;
onPointerUp: PointerEventHandler<HTMLElement>;
onPointerCancel: PointerEventHandler<HTMLElement>;
};
position: number;
surfaceProgress: number;
dragging: boolean;
}
export declare const SheetContext: import("react").Context<SheetContextValue | null>;
export declare function useSheetContext(component: string): SheetContextValue;