import { VisibleTimelineClip, VisibleTimelineClipOptions } from "@techsquidtv/canvas-timeline-core"; //#region src/hooks/clips/useTimelineVisibleClips.d.ts /** * Options accepted by `useTimelineVisibleClips`. * * @remarks * * Use viewport dimensions and `overscanPixels` to trade precision for render * stability while scrolling. Pass renderer-aligned geometry when custom DOM or * canvas layers must line up with `CanvasRenderer`. * * @see {@link https://canvastimeline.com/demos/react-dom-timeline | React DOM timeline demo} */ type UseTimelineVisibleClipsOptions = VisibleTimelineClipOptions; /** * Returns viewport-intersecting timeline clips with clipped time/source ranges. * * @remarks * * This is the preferred hook for custom DOM clip renderers and custom canvas * layers that only need visible or near-visible clips. Each returned entry * includes the visible viewport rectangle plus clipped timeline/source ranges, * so thumbnail, waveform, and annotation renderers can avoid work for hidden * portions of long clips. * * @param options - Viewport, overscan, and optional renderer-aligned geometry settings. * @returns Visible clip entries in track order. * * @example * ```tsx * import { useTimelineVisibleClips } from '@techsquidtv/canvas-timeline-react'; * * export function VisibleClipList() { * const visibleClips = useTimelineVisibleClips({ overscanPixels: 160 }); * * return ( * * ); * } * ``` * * @see {@link useTimelineClipRects} * @see {@link https://canvastimeline.com/docs/renderer-customization | Canvas renderer customization} */ declare function useTimelineVisibleClips(options?: UseTimelineVisibleClipsOptions): VisibleTimelineClip[]; //#endregion export { UseTimelineVisibleClipsOptions, useTimelineVisibleClips }; //# sourceMappingURL=useTimelineVisibleClips.d.mts.map