import { AViewerPluginSync, Importer, ThreeViewer } from 'threepipe';
import { GaussianSplatMesh } from './index';
import { AnyOptions } from 'ts-browser-helpers';
import { SortWorkerManager } from './cpp-sorter/SortWorkerManager';
import { GaussianSplatGeometry } from './geometry/GaussianSplatGeometry';
export declare class ThreeGaussianSplatPlugin extends AViewerPluginSync<string> {
    static readonly PluginType: string;
    enabled: boolean;
    dependencies: never[];
    toJSON: any;
    constructor();
    splats: GaussianSplatMesh[];
    private _ready;
    onAdded(viewer: ThreeViewer): void;
    onRemove(viewer: ThreeViewer): void;
    private _activeCameraUpdate;
    private _geometryUpdate;
    private _sortWorkerManager;
    protected _importer: Importer<{
        onDispose: (mesh: GaussianSplatMesh) => void;
        onCreate: (mesh: GaussianSplatMesh) => void;
        transform(res: GaussianSplatMesh, _: AnyOptions): any;
        sortWorkerManager: SortWorkerManager;
        materialConstructor: (_: GaussianSplatGeometry) => import('threepipe').IMaterial | undefined;
        onGeometryLoad: (_: GaussianSplatGeometry) => void;
        load(url: string, onLoad?: (data: GaussianSplatMesh) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void;
        loadAsync(url: string, onProgress?: (event: ProgressEvent) => void): Promise<GaussianSplatMesh>;
        crossOrigin: string;
        withCredentials: boolean;
        path: string;
        resourcePath: string;
        manager: import('threepipe').LoadingManager;
        requestHeader: {
            [header: string]: string;
        };
        setCrossOrigin(crossOrigin: string): /*elided*/ any;
        setWithCredentials(value: boolean): /*elided*/ any;
        setPath(path: string): /*elided*/ any;
        setResourcePath(resourcePath: string): /*elided*/ any;
        setRequestHeader(requestHeader: {
            [header: string]: string;
        }): /*elided*/ any;
    }>;
}
//# sourceMappingURL=ThreeGaussianSplatPlugin.d.ts.map