export const b2BodyType: any;
export class b2BodyDef {
    type: any;
    position: b2Vec2;
    angle: number;
    linearVelocity: b2Vec2;
    angularVelocity: number;
    linearDamping: number;
    angularDamping: number;
    allowSleep: boolean;
    awake: boolean;
    fixedRotation: boolean;
    bullet: boolean;
    enabled: boolean;
    userData: any;
    gravityScale: number;
}
export class b2Body {
    constructor(bd: any, world: any);
    m_type: any;
    m_islandFlag: boolean;
    m_awakeFlag: boolean;
    m_autoSleepFlag: any;
    m_bulletFlag: any;
    m_fixedRotationFlag: any;
    m_enabledFlag: any;
    m_toiFlag: boolean;
    m_islandIndex: number;
    m_xf: b2Transform;
    m_xf0: b2Transform;
    m_sweep: b2Sweep;
    m_linearVelocity: b2Vec2;
    m_angularVelocity: any;
    m_force: b2Vec2;
    m_torque: number;
    m_prev: any;
    m_next: any;
    m_fixtureList: any;
    m_fixtureCount: number;
    m_jointList: any;
    m_contactList: any;
    m_mass: number;
    m_invMass: number;
    m_I: number;
    m_invI: number;
    m_linearDamping: any;
    m_angularDamping: any;
    m_gravityScale: any;
    m_sleepTime: number;
    m_userData: any;
    m_controllerList: any;
    m_controllerCount: number;
    m_world: any;
    CreateFixture(a: any, b?: number): any;
    CreateFixtureDef(def: any): any;
    CreateFixtureShapeDensity(shape: any, density?: number): any;
    DestroyFixture(fixture: any): void;
    SetTransformVec(position: any, angle: any): void;
    SetTransformXY(x: any, y: any, angle: any): void;
    SetTransform(xf: any): void;
    GetTransform(): b2Transform;
    GetPosition(): b2Vec2;
    SetPosition(position: any): void;
    SetPositionXY(x: any, y: any): void;
    GetAngle(): number;
    SetAngle(angle: any): void;
    GetWorldCenter(): b2Vec2;
    GetLocalCenter(): b2Vec2;
    SetLinearVelocity(v: any): void;
    GetLinearVelocity(): b2Vec2;
    SetAngularVelocity(w: any): void;
    GetAngularVelocity(): any;
    GetDefinition(bd: any): any;
    ApplyForce(force: any, point: any, wake?: boolean): void;
    ApplyForceToCenter(force: any, wake?: boolean): void;
    ApplyTorque(torque: any, wake?: boolean): void;
    ApplyLinearImpulse(impulse: any, point: any, wake?: boolean): void;
    ApplyLinearImpulseToCenter(impulse: any, wake?: boolean): void;
    ApplyAngularImpulse(impulse: any, wake?: boolean): void;
    GetMass(): number;
    GetInertia(): number;
    GetMassData(data: any): any;
    SetMassData(massData: any): void;
    ResetMassData(): void;
    GetWorldPoint(localPoint: any, out: any): any;
    GetWorldVector(localVector: any, out: any): any;
    GetLocalPoint(worldPoint: any, out: any): any;
    GetLocalVector(worldVector: any, out: any): any;
    GetLinearVelocityFromWorldPoint(worldPoint: any, out: any): any;
    GetLinearVelocityFromLocalPoint(localPoint: any, out: any): any;
    GetLinearDamping(): any;
    SetLinearDamping(linearDamping: any): void;
    GetAngularDamping(): any;
    SetAngularDamping(angularDamping: any): void;
    GetGravityScale(): any;
    SetGravityScale(scale: any): void;
    SetType(type: any): void;
    GetType(): any;
    SetBullet(flag: any): void;
    IsBullet(): any;
    SetSleepingAllowed(flag: any): void;
    IsSleepingAllowed(): any;
    SetAwake(flag: any): void;
    IsAwake(): boolean;
    SetEnabled(flag: any): void;
    IsEnabled(): any;
    SetFixedRotation(flag: any): void;
    IsFixedRotation(): any;
    GetFixtureList(): any;
    GetJointList(): any;
    GetContactList(): any;
    GetNext(): any;
    GetUserData(): any;
    SetUserData(data: any): void;
    GetWorld(): any;
    Dump(log: any): void;
    SynchronizeFixtures(): void;
    SynchronizeTransform(): void;
    ShouldCollide(other: any): boolean;
    ShouldCollideConnected(other: any): boolean;
    Advance(alpha: any): void;
    GetControllerList(): any;
    GetControllerCount(): number;
}
export namespace b2Body {
    const CreateFixtureShapeDensity_s_def: b2FixtureDef;
    const SetMassData_s_oldCenter: b2Vec2;
    const ResetMassData_s_localCenter: b2Vec2;
    const ResetMassData_s_oldCenter: b2Vec2;
    const ResetMassData_s_massData: b2MassData;
    const SynchronizeFixtures_s_xf1: b2Transform;
}
import { b2Vec2 } from "../common/b2_math.js";
import { b2Transform } from "../common/b2_math.js";
import { b2Sweep } from "../common/b2_math.js";
import { b2FixtureDef } from "./b2_fixture.js";
import { b2MassData } from "../collision/b2_shape.js";
