UNPKG

@remotion/studio

Version:

APIs for interacting with the Remotion Studio

56 lines (55 loc) 2.24 kB
export declare const canScrollTimelineIntoDirection: () => { canScrollRight: boolean; canScrollLeft: boolean; }; export declare const getFrameWhileScrollingLeft: ({ durationInFrames, width, }: { durationInFrames: number; width: number; }) => number; export declare const isCursorInViewport: ({ frame, durationInFrames, }: { frame: number; durationInFrames: number; }) => boolean; export declare const ensureFrameIsInViewport: ({ direction, durationInFrames, frame, }: { direction: "center" | "fit-left" | "fit-right" | "page-left" | "page-right"; durationInFrames: number; frame: number; }) => void; export declare const scrollToTimelineXOffset: (scrollPos: number) => void; export declare const getScrollPositionForCursorOnLeftEdge: ({ nextFrame, durationInFrames, }: { nextFrame: number; durationInFrames: number; }) => number; export declare const getScrollPositionForCursorOnRightEdge: ({ nextFrame, durationInFrames, }: { nextFrame: number; durationInFrames: number; }) => number; export declare const getFrameIncrementFromWidth: (durationInFrames: number, width: number) => number; export declare const getFrameWhileScrollingRight: ({ durationInFrames, width, }: { durationInFrames: number; width: number; }) => number; export declare const getFrameFromX: ({ clientX, durationInFrames, width, extrapolate, }: { clientX: number; durationInFrames: number; width: number; extrapolate: "clamp" | "extend"; }) => number; /** * Horizontal position inside the scrollable timeline content (0 … scrollWidth) * for a viewport `clientX`, so pinch-anchoring matches the pointer (not a * rounded frame index). */ export declare const viewportClientXToScrollContentX: ({ clientX, scrollEl, }: { clientX: number; scrollEl: HTMLDivElement; }) => number; export declare const zoomAndPreserveCursor: ({ oldZoom, newZoom, currentFrame, currentDurationInFrames, anchorFrame, anchorContentX, }: { oldZoom: number; newZoom: number; currentFrame: number; currentDurationInFrames: number; anchorFrame: number | null; /** Prefer this over `anchorFrame` when not null (subpixel-accurate anchor). */ anchorContentX: number | null; }) => void;