import { b2Joint, b2PrismaticJointDef } from '../Joints';
import { b2Vec2 } from '../../Common/Math';
import { b2Jacobian } from './b2Jacobian';
import { b2TimeStep } from '../b2TimeStep';
export declare class b2PrismaticJoint extends b2Joint {
    GetAnchor1(): b2Vec2;
    GetAnchor2(): b2Vec2;
    GetReactionForce(): b2Vec2;
    GetReactionTorque(): number;
    GetJointTranslation(): number;
    GetJointSpeed(): number;
    IsLimitEnabled(): boolean;
    EnableLimit(flag: boolean): void;
    GetLowerLimit(): number;
    GetUpperLimit(): number;
    SetLimits(lower: number, upper: number): void;
    IsMotorEnabled(): boolean;
    EnableMotor(flag: boolean): void;
    SetMotorSpeed(speed: number): void;
    GetMotorSpeed(): number;
    SetMaxMotorForce(force: number): void;
    GetMotorForce(): number;
    constructor(def: b2PrismaticJointDef);
    InitVelocityConstraints(step: b2TimeStep): void;
    SolveVelocityConstraints(step: b2TimeStep): void;
    SolvePositionConstraints(): boolean;
    m_localAnchor1: b2Vec2;
    m_localAnchor2: b2Vec2;
    m_localXAxis1: b2Vec2;
    m_localYAxis1: b2Vec2;
    m_refAngle: number;
    m_linearJacobian: b2Jacobian;
    m_linearMass: number;
    m_force: number;
    m_angularMass: number;
    m_torque: number;
    m_motorJacobian: b2Jacobian;
    m_motorMass: number;
    m_motorForce: number;
    m_limitForce: number;
    m_limitPositionImpulse: number;
    m_lowerTranslation: number;
    m_upperTranslation: number;
    m_maxMotorForce: number;
    m_motorSpeed: number;
    m_enableLimit: boolean;
    m_enableMotor: boolean;
    m_limitState: number /** int */;
}
//# sourceMappingURL=b2PrismaticJoint.d.ts.map