import { TraceContext } from "./otel/tracingHelpers.js";
import "./EF_FRAMEGEN.js";
import { TemporalMixinInterface, isEFTemporal } from "./elements/EFTemporal.js";
import { EFMedia } from "./elements/EFMedia.js";
import { ContainerInfo, getContainerInfoFromElement } from "./elements/ContainerInfo.js";
import { ElementPositionInfo, PositionInfoMixin, getPositionInfoFromElement } from "./elements/ElementPositionInfo.js";
import { RenderProgress, RenderToVideoOptions } from "./preview/renderTimegroupToVideo.types.js";
import { CanvasElementBounds, CanvasElementData, SelectionState } from "./canvas/api/types.js";
import { EFPanZoom, PanZoomTransform } from "./elements/EFPanZoom.js";
import { EFOverlayItem, OverlayItemPosition } from "./gui/EFOverlayItem.js";
import { EFOverlayLayer } from "./gui/EFOverlayLayer.js";
import { EFTransformHandles, TransformBounds } from "./gui/EFTransformHandles.js";
import { EFCanvas } from "./canvas/EFCanvas.js";
import { EFHierarchy } from "./gui/hierarchy/EFHierarchy.js";
import { EFTrimHandles, TrimChangeDetail, TrimValue } from "./gui/timeline/TrimHandles.js";
import { EFThumbnailStrip } from "./gui/timeline/tracks/EFThumbnailStrip.js";
import { EFAudio } from "./elements/EFAudio.js";
import { EFVideo } from "./elements/EFVideo.js";
import { EFCaptions, EFCaptionsActiveWord, EFCaptionsAfterActiveWord, EFCaptionsBeforeActiveWord, EFCaptionsSegment } from "./elements/EFCaptions.js";
import { EFTimelineRuler, calculateFrameIntervalMs, calculatePixelsPerFrame, quantizeToFrameTimeMs, shouldShowFrameMarkers } from "./gui/EFTimelineRuler.js";
import { EFTimeline } from "./gui/timeline/EFTimeline.js";
import { EFFilmstrip } from "./gui/EFFilmstrip.js";
import { EFFitScale, ScaleInput, ScaleOutput, computeFitScale } from "./gui/EFFitScale.js";
import { EFWorkbench } from "./gui/EFWorkbench.js";
import { EFTimegroup } from "./elements/EFTimegroup.js";
import { CloneFactory, CloneFactoryResult, getCloneFactory, registerCloneFactory, unregisterCloneFactory } from "./elements/cloneFactoryRegistry.js";
import { elementNeedsFitScale, needsFitScale } from "./gui/FitScaleHelpers.js";
import { EFImage } from "./elements/EFImage.js";
import { EFTextSegment } from "./elements/EFTextSegment.js";
import { EFText } from "./elements/EFText.js";
import { EFWaveform } from "./elements/EFWaveform.js";
import { EFConfiguration } from "./gui/EFConfiguration.js";
import { EFPreview } from "./gui/EFPreview.js";
import { HierarchyActions, HierarchyContext, HierarchyState, hierarchyContext } from "./gui/hierarchy/hierarchyContext.js";
import { EFAudioHierarchyItem, EFCaptionsActiveWordHierarchyItem, EFCaptionsHierarchyItem, EFHTMLHierarchyItem, EFHierarchyItem, EFImageHierarchyItem, EFTextHierarchyItem, EFTextSegmentHierarchyItem, EFTimegroupHierarchyItem, EFVideoHierarchyItem, EFWaveformHierarchyItem } from "./gui/hierarchy/EFHierarchyItem.js";
import { TreeActions, TreeContext, TreeItem, TreeState, collectAllIds, treeContext } from "./gui/tree/treeContext.js";
import { EFTreeItem } from "./gui/tree/EFTreeItem.js";
import { EFTree } from "./gui/tree/EFTree.js";
import { EFTogglePlay } from "./gui/EFTogglePlay.js";
import { EFPlay } from "./gui/EFPlay.js";
import { EFPause } from "./gui/EFPause.js";
import { EFToggleLoop } from "./gui/EFToggleLoop.js";
import { EFScrubber } from "./gui/EFScrubber.js";
import { EFTimeDisplay } from "./gui/EFTimeDisplay.js";
import { EFActiveRootTemporal } from "./gui/EFActiveRootTemporal.js";
import { DialChangeDetail, EFDial } from "./gui/EFDial.js";
import { EFControls } from "./gui/EFControls.js";
import { EFFocusOverlay } from "./gui/EFFocusOverlay.js";
import { getCornerPoint, getOppositeCorner, rotatePoint } from "./gui/transformUtils.js";
import { BoxBounds, EFResizableBox } from "./gui/EFResizableBox.js";
import { EFSurface } from "./elements/EFSurface.js";
import { EFCanvasItem } from "./canvas/EFCanvasItem.js";
import { CanvasAPI } from "./canvas/api/CanvasAPI.js";
import { SelectionModel } from "./canvas/selection/SelectionModel.js";
import { RenderInfo, RenderInfoSchema, getRenderInfo } from "./getRenderInfo.js";
import "./render/EFRenderAPI.js";
import { getRenderData } from "./render/getRenderData.js";
import { CanvasPreviewOptions, CanvasPreviewResult, CaptureOptions, ContentReadyMode } from "./preview/renderTimegroupToCanvas.types.js";
import { RenderElementOptions, renderElementToCanvas } from "./preview/renderElementToCanvas.js";
export { type BoxBounds, CanvasAPI, type CanvasElementBounds, type CanvasElementData, type CanvasPreviewOptions, type CanvasPreviewResult, type CaptureOptions, type CloneFactory, type CloneFactoryResult, type ContainerInfo, type ContentReadyMode, type DialChangeDetail, EFActiveRootTemporal, EFAudio, EFAudioHierarchyItem, EFCanvas, EFCanvasItem, EFCaptions, EFCaptionsActiveWord, EFCaptionsActiveWordHierarchyItem, EFCaptionsAfterActiveWord, EFCaptionsBeforeActiveWord, EFCaptionsHierarchyItem, EFCaptionsSegment, EFConfiguration, EFControls, EFDial, EFFilmstrip, EFFitScale, EFFocusOverlay, EFHTMLHierarchyItem, EFHierarchy, EFHierarchyItem, EFImage, EFImageHierarchyItem, type EFMedia, EFOverlayItem, EFOverlayLayer, EFPanZoom, EFPause, EFPlay, EFPreview, EFResizableBox, EFScrubber, EFSurface, EFText, EFTextHierarchyItem, EFTextSegment, EFTextSegmentHierarchyItem, EFThumbnailStrip, EFTimeDisplay, EFTimegroup, EFTimegroupHierarchyItem, EFTimeline, EFTimelineRuler, EFToggleLoop, EFTogglePlay, EFTransformHandles, EFTree, EFTreeItem, EFTrimHandles, EFVideo, EFVideoHierarchyItem, EFWaveform, EFWaveformHierarchyItem, EFWorkbench, type ElementPositionInfo, type HierarchyActions, type HierarchyContext, type HierarchyState, type OverlayItemPosition, type PanZoomTransform, PositionInfoMixin, type RenderElementOptions, type RenderInfo, RenderInfoSchema, type RenderProgress, type RenderToVideoOptions, type ScaleInput, type ScaleOutput, SelectionModel, type SelectionState, type TemporalMixinInterface, type TraceContext, type TransformBounds, type TreeActions, type TreeContext, type TreeItem, type TreeState, type TrimChangeDetail, type TrimValue, calculateFrameIntervalMs, calculatePixelsPerFrame, collectAllIds, computeFitScale, elementNeedsFitScale, getCloneFactory, getContainerInfoFromElement, getCornerPoint, getOppositeCorner, getPositionInfoFromElement, getRenderData, getRenderInfo, hierarchyContext, isEFTemporal, needsFitScale, quantizeToFrameTimeMs, registerCloneFactory, renderElementToCanvas, rotatePoint, shouldShowFrameMarkers, treeContext, unregisterCloneFactory };