import { b2Vec2, b2XForm } from "../../Common/Math";
import { b2AABB } from "../b2AABB";
import { b2Segment } from "../b2Segment";
import { b2Shape } from "./b2Shape";
import { b2StaticEdgeChain } from "./b2StaticEdgeChain";
import { b2StaticEdgeChainDef } from "./b2StaticEdgeChainDef";
export declare class b2StaticEdgeShape extends b2Shape {
    TestSegment(transform: b2XForm, lambda: number[], // float pointer
    normal: b2Vec2, // pointer
    segment: b2Segment, maxLambda: number): boolean;
    ComputeAABB(aabb: b2AABB, transform: b2XForm): void;
    ComputeSweptAABB(aabb: b2AABB, transform1: b2XForm, transform2: b2XForm): void;
    GetVertex1(): b2Vec2;
    GetVertex2(): b2Vec2;
    GetLength(): number;
    GetNormalVector(): b2Vec2;
    GetDirectionVector(): b2Vec2;
    GetParentChain(): b2StaticEdgeChain;
    GetFirstVertex(xf: b2XForm): b2Vec2;
    Support(xf: b2XForm, dX: number, dY: number): b2Vec2;
    constructor(v1: b2Vec2, v2: b2Vec2, edgeDef: b2StaticEdgeChainDef);
    SetPrevEdge(edge: b2StaticEdgeShape, core: b2Vec2, cornerDir: b2Vec2): void;
    SetNextEdge(edge: b2StaticEdgeShape, core: b2Vec2, cornerDir: b2Vec2): void;
    UpdateSweepRadius(center: b2Vec2): void;
    m_v1: b2Vec2;
    m_v2: b2Vec2;
    m_coreV1: b2Vec2;
    m_coreV2: b2Vec2;
    m_length: number;
    m_normal: b2Vec2;
    m_direction: b2Vec2;
    m_cornerDir1: b2Vec2;
    m_cornerDir2: b2Vec2;
    m_chain: b2StaticEdgeChain;
    m_nextEdge: b2StaticEdgeShape;
    m_prevEdge: b2StaticEdgeShape;
}
//# sourceMappingURL=b2StaticEdgeShape.d.ts.map