import { VRM } from "@davidcks/r3f-vrm";
import * as poseDetect from "@tensorflow-models/pose-detection";
import { BasePoseConversionManager } from "./BasePoseConversionManager";
import { Vector3 } from "three";
export declare class BodyPoseConversionManager extends BasePoseConversionManager {
    constructor(vrm: VRM);
    getPosePositions<T extends "raw" | "normalized">(blazePose: poseDetect.Pose, format: T): ReturnType<BodyPoseConversionManager["normalizePosePositions"]>;
    getRawPosePositions(blazePose: poseDetect.Pose): {
        __root: Vector3;
        hips: {
            position: [number, number, number];
        };
        spine: {
            position: [number, number, number];
        };
        chest: {
            position: [number, number, number];
        };
        upperChest: {
            position: [number, number, number];
        };
        neck: {
            position: [number, number, number];
        };
        leftShoulder: {
            position: [number, number, number];
        };
        rightShoulder: {
            position: [number, number, number];
        };
    };
    normalizePosePositions(bodyPose: ReturnType<BodyPoseConversionManager["getRawPosePositions"]>, root: Vector3): {
        hips: {
            position: [number, number, number];
        };
        spine: {
            position: [number, number, number];
        };
        chest: {
            position: [number, number, number];
        };
        upperChest: {
            position: [number, number, number];
        };
        neck: {
            position: [number, number, number];
        };
        leftShoulder: {
            position: [number, number, number];
        };
        rightShoulder: {
            position: [number, number, number];
        };
    };
}
//# sourceMappingURL=BodyPoseConversionManager.d.ts.map