pub mod curve;
pub mod desktop;
pub mod duration;
pub mod effect;
pub mod error;
pub mod geometry;
pub mod id;
pub mod monitor;
pub mod overlay_plan;
pub mod procedural;
pub mod snapshot;
pub mod scene;
pub mod spec;
pub mod backend;
pub mod controller;
pub mod events;
pub mod fake;
pub mod handle;
pub mod timeline;
mod engine;
pub use backend::DesktopBackend;
pub use controller::{DesktopController, PreparedAnimation};
pub use curve::{
AnimationCurve, BuiltinEasing, Curve, Keyframe, KeyframeCurve, KeyframeInterp, MotionContext,
};
pub use duration::Duration;
pub use desktop::{DesktopInfo, IconGrid, resolve_grid_targets};
pub use effect::{Effect, IconFrame, ShaderPipeline, ShaderProgram};
pub mod effect_graph;
pub use effect_graph::{DrawSpec, DrawTopology, EffectExecution, EffectParameter, EffectPass, EffectTarget, ParameterKind, PassBlend};
pub use error::{CurveError, DesktopError};
pub use events::{
FinishReason, IconAnimationState, StartContext, StopMode, TickContext,
};
pub use geometry::Point;
pub use handle::{AnimationHandle, PreObservers};
pub use id::IconId;
pub use monitor::{MonitorInfo, Rect};
pub use overlay_plan::{
FinalCommitOutcome, IconBitmap, IconLabel, IconRenderPlan, OverlayRenderOptions,
SnapshotFrame, SnapshotIconGeometry,
};
pub use snapshot::IconSnapshot;
pub use scene::{Canvas, CapturedFrame, RenderSession, Scene, SceneIcon, SceneRenderer};
pub use spec::{AnimationOptions, AnimationPreset, FolderFlagOp, IconAnimationSpec};
pub use timeline::{PlaybackHandle, PlaybackOutcome, TimelineCloseMode, TimelineSession, TimelineState};