@nipe-solutions/react-spring-bottom-sheet
Version:
Accessible and composable bottom sheets for React
21 lines (20 loc) • 953 B
TypeScript
import type { PointerEventHandler } from 'react';
import type { SheetController, SheetState } from '../controller/types.js';
import type { ResolvedLayout } from '../layout/types.js';
export interface UseSheetInteractionsOptions {
content: HTMLElement | null;
controller: SheetController;
state: SheetState;
layout: ResolvedLayout | null;
dismissible: boolean;
onDismiss(): void;
onSnapPointChange(id: string): void;
onPositionChange(position: number): void;
}
export interface SheetInteractionHandlers {
onPointerDown: PointerEventHandler<HTMLElement>;
onPointerMove: PointerEventHandler<HTMLElement>;
onPointerUp: PointerEventHandler<HTMLElement>;
onPointerCancel: PointerEventHandler<HTMLElement>;
}
export declare function useSheetInteractions({ content, controller, state, layout, dismissible, onDismiss, onSnapPointChange, onPositionChange, }: UseSheetInteractionsOptions): SheetInteractionHandlers;