import { AppObject, AppObjectEntity } from "@vived/core";
import { Quaternion, Vector3 } from "@vived/core";
export interface SubMesh {
    meshPath: string;
    neutralPosition: Vector3;
    neutralRotation: Quaternion;
    neutralScale: Vector3;
    meshObject?: unknown;
}
export declare class Mesh extends AppObjectEntity {
    static readonly type = "MESH";
    static addIfMissing(appObj: AppObject): Mesh;
    static get(appObj: AppObject): Mesh | undefined;
    private subMeshLookup;
    get subMeshes(): SubMesh[];
    addSubMesh(subMesh: SubMesh): void;
    getSubMeshForPath(path: string): SubMesh | undefined;
    hasMeshPath: (path: string) => boolean;
    removeMeshPath(path: string): void;
    constructor(appObject: AppObject);
}
//# sourceMappingURL=Mesh.d.ts.map