/** * SkeletalBlender.ts * * Multi-clip animation blending: layer weights, * additive/override modes, crossfade, and pose mixing. * * @module animation */ export interface AnimPose { boneId: string; tx: number; ty: number; tz: number; sx: number; sy: number; sz: number; } export interface AnimLayer { id: string; poses: AnimPose[]; weight: number; mode: 'override' | 'additive'; mask?: Set; } export declare class SkeletalBlender { private layers; private blendedPoses; addLayer(layer: AnimLayer): void; removeLayer(id: string): void; setLayerWeight(id: string, weight: number): void; getLayerWeight(id: string): number; blend(): Map; crossfade(fromId: string, toId: string, t: number): void; private lerpPose; getLayerCount(): number; getBlendedPose(boneId: string): AnimPose | undefined; } //# sourceMappingURL=SkeletalBlender.d.ts.map