import { Object3D } from 'three';
import { type TreeNode, WorldTree } from '../../tree/WorldTree.js';
import type { ConverterResultDelegate } from '../Speckle/SpeckleConverter.js';
export type ObjConverterNodeDelegate = ((object: Object3D, node: TreeNode) => Promise<void>) | null;
export declare class ObjConverter {
    protected lastAsyncPause: number;
    protected tree: WorldTree;
    protected readonly NodeConverterMapping: {
        [name: string]: ObjConverterNodeDelegate;
    };
    constructor(tree: WorldTree);
    asyncPause(): Promise<void>;
    traverse(objectURL: string, object: Object3D, callback: ConverterResultDelegate, node?: TreeNode | null): Promise<void>;
    private directNodeConverterExists;
    private convertToNode;
    private MeshToNode;
    private groupToNode;
}
