import { Object3D } from 'three/src/core/Object3D';
import { ModuleName } from '../../engine/poly/registers/modules/_BaseRegister';
import { PolyScene } from '../../engine/scene/PolyScene';
import { DRACOLoader } from '../../modules/three/examples/jsm/loaders/DRACOLoader';
import { GLTFLoader } from '../../modules/three/examples/jsm/loaders/GLTFLoader';
export declare class CoreLoaderGeometry {
    private url;
    private scene;
    readonly ext: string;
    private static _default_mat_mesh;
    private static _default_mat_point;
    private static _default_mat_line;
    constructor(url: string, scene: PolyScene);
    static get_extension(url: string): string;
    load(on_success: (objects: Object3D[]) => void, on_error: (error: string) => void): void;
    private load_auto;
    private on_load_success;
    private on_load_succes_drc;
    private on_load_succes_gltf;
    private on_load_succes_pdb;
    static module_names(ext: string): ModuleName[] | void;
    loader_for_ext(): Promise<DRACOLoader | import("../../modules/three/examples/jsm/loaders/FBXLoader").FBXLoader | GLTFLoader | import("../../modules/three/examples/jsm/loaders/OBJLoader2").OBJLoader2 | import("../../modules/three/examples/jsm/loaders/PDBLoader").PDBLoader | import("../../modules/three/examples/jsm/loaders/PLYLoader").PLYLoader | undefined>;
    loader_for_drc(): Promise<DRACOLoader | undefined>;
    loader_for_fbx(): Promise<import("../../modules/three/examples/jsm/loaders/FBXLoader").FBXLoader | undefined>;
    loader_for_gltf(): Promise<GLTFLoader | undefined>;
    private static gltf_loader;
    private static draco_loader;
    static loader_for_glb(scene: PolyScene): Promise<GLTFLoader | undefined>;
    loader_for_glb(): Promise<GLTFLoader | undefined>;
    loader_for_obj(): Promise<import("../../modules/three/examples/jsm/loaders/OBJLoader2").OBJLoader2 | undefined>;
    loader_for_pdb(): Promise<import("../../modules/three/examples/jsm/loaders/PDBLoader").PDBLoader | undefined>;
    loader_for_ply(): Promise<import("../../modules/three/examples/jsm/loaders/PLYLoader").PLYLoader | undefined>;
    private static MAX_CONCURRENT_LOADS_COUNT;
    private static CONCURRENT_LOADS_DELAY;
    private static in_progress_loads_count;
    private static _queue;
    private static _init_max_concurrent_loads_count;
    private static _init_concurrent_loads_delay;
    static override_max_concurrent_loads_count(count: number): void;
    private static increment_in_progress_loads_count;
    private static decrement_in_progress_loads_count;
    private static wait_for_max_concurrent_loads_queue_freed;
}
