export class b2MotorJointDef extends b2JointDef {
    constructor();
    linearOffset: b2Vec2;
    angularOffset: number;
    maxForce: number;
    maxTorque: number;
    correctionFactor: number;
    Initialize(bA: any, bB: any): void;
}
export class b2MotorJoint extends b2Joint {
    constructor(def: any);
    m_linearOffset: b2Vec2;
    m_angularOffset: number;
    m_linearImpulse: b2Vec2;
    m_angularImpulse: number;
    m_maxForce: any;
    m_maxTorque: any;
    m_correctionFactor: any;
    m_indexA: number;
    m_indexB: number;
    m_rA: b2Vec2;
    m_rB: b2Vec2;
    m_localCenterA: b2Vec2;
    m_localCenterB: b2Vec2;
    m_linearError: b2Vec2;
    m_angularError: number;
    m_invMassA: number;
    m_invMassB: number;
    m_invIA: number;
    m_invIB: number;
    m_linearMass: b2Mat22;
    m_angularMass: number;
    m_qA: b2Rot;
    m_qB: b2Rot;
    m_K: b2Mat22;
    GetAnchorA(out: any): any;
    GetAnchorB(out: any): any;
    GetReactionForce(inv_dt: any, out: any): any;
    GetReactionTorque(inv_dt: any): number;
    SetLinearOffset(linearOffset: any): void;
    GetLinearOffset(): b2Vec2;
    SetAngularOffset(angularOffset: any): void;
    GetAngularOffset(): number;
    SetMaxForce(force: any): void;
    GetMaxForce(): any;
    SetMaxTorque(torque: any): void;
    GetMaxTorque(): any;
    InitVelocityConstraints(data: any): void;
    SolveVelocityConstraints(data: any): void;
    SolvePositionConstraints(data: any): boolean;
    Dump(log: any): void;
}
export namespace b2MotorJoint {
    const SolveVelocityConstraints_s_Cdot_v2: b2Vec2;
    const SolveVelocityConstraints_s_impulse_v2: b2Vec2;
    const SolveVelocityConstraints_s_oldImpulse_v2: b2Vec2;
}
import { b2JointDef } from "./b2_joint.js";
import { b2Vec2 } from "../common/b2_math.js";
import { b2Joint } from "./b2_joint.js";
import { b2Mat22 } from "../common/b2_math.js";
import { b2Rot } from "../common/b2_math.js";
