UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

19 lines (18 loc) 1.18 kB
import { Object3D } from 'three'; import { CoreObjectType, ObjectContent } from '../../geometry/ObjectContent'; import { BaseLoaderLoadOptions, CoreBaseLoader } from '../_Base'; import type { BaseGeoLoaderOutput, OnSuccess, OnProgress, OnError } from './Common'; export declare abstract class BaseGeoLoader<O extends BaseGeoLoaderOutput> { abstract load: (url: string, onSuccess: OnSuccess<O>, onProgress?: OnProgress, onError?: OnError) => void; } export declare abstract class BaseLoaderHandler<O extends BaseGeoLoaderOutput, OC extends ObjectContent<CoreObjectType>> extends CoreBaseLoader<string> { protected _loader: BaseGeoLoader<O> | undefined; reset(): void; load(options: BaseLoaderLoadOptions): Promise<OC[] | undefined>; protected _errorMessage(url: string, event: ErrorEvent): string; protected abstract _getLoader(options: BaseLoaderLoadOptions): Promise<BaseGeoLoader<O>>; protected abstract _onLoadSuccess(o: O): OC[] | Promise<OC[]>; } export declare abstract class BaseObject3DLoaderHandler<O extends BaseGeoLoaderOutput> extends BaseLoaderHandler<O, Object3D> { protected _onLoadSuccess(o: O): Object3D[] | Promise<Object3D[]>; }