/**
 * Penetration depth + normal between two convex support providers at world pose.
 * Writes the unit separation normal (B→A) into `out` and returns the depth
 * (positive on overlap, 0 if separated — `out` untouched on 0).
 *
 * @param {Float64Array|number[]} out destination for the unit normal, length ≥ 3
 * @param {SupportProvider} A world-space support provider (e.g. PosedShape)
 * @param {SupportProvider} B world-space support provider (e.g. PosedShape)
 * @returns {number} penetration depth, or 0 if separated
 */
export function gjk_epa_penetration(out: Float64Array | number[], A: SupportProvider, B: SupportProvider): number;
/**
 * A convex shape exposing a world-space support mapping: `support(out, off, dx,
 * dy, dz)` writes the farthest point of the shape in direction `(dx, dy, dz)`
 * into `out[off..off+2]` (e.g. {@link PosedShape }).
 */
export type SupportProvider = {
    support: (arg0: Float64Array, arg1: number, arg2: number, arg3: number, arg4: number) => void;
};
//# sourceMappingURL=gjk_epa_penetration.d.ts.map