import { AViewerPluginEventMap, AViewerPluginSync, IAssetImporter, ILoader, ImportAddOptions, Importer, IObject3D, Loader, LoadingManager, ThreeViewer } from 'threepipe'; import { TilesGroup, TilesRenderer } from '3d-tiles-renderer'; export type TilesRendererGroup = TilesGroup & IObject3D; export interface TilesRendererPluginEventMap extends AViewerPluginEventMap { addTile: { group: TilesRendererGroup; }; removeTile: { group: TilesRendererGroup; }; } /** * TilesRendererPlugin is a plugin for loading and rendering OGC 3D Tiles using [3d-tiles-renderer](https://github.com/NASA-AMMOS/3DTilesRendererJS) package. * * Specification - https://www.ogc.org/standards/3dtiles/ */ export declare class TilesRendererPlugin extends AViewerPluginSync { static readonly PluginType: string; enabled: boolean; dependencies: never[]; static readonly DUMMY_EXT = "tileset"; objects: TilesRendererGroup[]; protected _importer: Importer; constructor(); load(url: string, options?: ImportAddOptions): Promise; loadCesiumIon(info: TilesImportOptions['CesiumIonAuthPlugin'], options?: ImportAddOptions): Promise; onAdded(viewer: ThreeViewer): void; onRemove(viewer: ThreeViewer): void; private _preRender; private _resize; private _cachedRefs?; private _objectExt; promptForURL(): Promise<(import('threepipe').ISerializedConfig & import('threepipe').ImportResultExtras) | (IObject3D | undefined, import('threepipe').IMaterial | import('threepipe').IMaterial[] | undefined> & import('threepipe').ImportResultExtras) | (import('threepipe').ITexture & import('threepipe').ImportResultExtras) | (import('threepipe').ICamera & import('threepipe').ImportResultExtras) | (import('threepipe').RootSceneImportResult & import('threepipe').ImportResultExtras) | (import('threepipe').IMaterial & import('threepipe').ImportResultExtras) | import('threepipe').ImportResult[] | TilesRendererGroup | undefined>; } export declare class TilesRendererLoader extends Loader implements ILoader { isTilesRendererLoader: boolean; ai?: IAssetImporter; importOptions?: ImportAddOptions; plugins: ((o: TilesImportOptions, group: TilesRendererGroup) => object | undefined)[]; constructor(manager: LoadingManager); protected _createTilesRenderer(url: string): TilesRenderer; load(url: string, onLoad: (data: unknown) => void, _onProgress?: (event: ProgressEvent) => void, _onError?: (err: unknown) => void): void; } export interface TilesImportOptions { /** * @default 1 */ errorTarget?: number; ImplicitTilingPlugin?: boolean; TilesFadePlugin?: boolean | { maximumFadeOutTiles?: number; fadeRootTiles?: boolean; fadeDuration?: number; }; CesiumIonAuthPlugin?: boolean | { apiToken: string; assetId?: string | null; autoRefreshToken?: boolean; }; plugins?: ((opts: TilesImportOptions, group: TilesRendererGroup) => object | undefined)[]; } declare module 'threepipe' { interface ImportAddOptions { tiles?: TilesImportOptions; } } //# sourceMappingURL=TilesRendererPlugin.d.ts.map