import { BinaryIO } from '../common/BinaryIO.js';
import type { ArxVector3, QuadrupleOf } from '../common/types.js';
import { type ArxTextureVertex } from './TextureVertex.js';
/**
 * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/graphics/data/FastSceneFormat.h#L136
 */
export type ArxPortalPolygon = {
    min: ArxVector3;
    max: ArxVector3;
    norm: ArxVector3;
    norm2: ArxVector3;
    vertices: QuadrupleOf<ArxTextureVertex>;
    center: ArxVector3;
};
export declare class PortalPolygon {
    static readFrom(binary: BinaryIO<ArrayBufferLike>): ArxPortalPolygon;
    static accumulateFrom(portalPolygon: ArxPortalPolygon, levelIdx: number): ArrayBuffer;
    static sizeOf(): number;
}
