/// import EventEmitter from 'events'; import { ASTBase } from 'miniscript-core'; import { ChunkProviderLike } from '../types/chunk-provider'; import { Resource } from '../types/resource'; import { ResourceManagerLike } from '../types/resource-manager'; import { ResourceHandler } from './resource-provider'; export interface ResourceManagerOptions { resourceHandler: ResourceHandler; chunkProvider: ChunkProviderLike; } export interface ResourceLoadOrigin { target: string; ref: ASTBase | null; } export declare class ResourceManager extends EventEmitter implements ResourceManagerLike { private resourceHandler; private chunkProvider; private loadStates; private loadRequests; protected entryPointResource: Resource | null; protected resources: Map; protected injections: Map; protected relativePathMappings: Map; constructor(options: ResourceManagerOptions); getResourceHandler(): ResourceHandler; getChunkProvider(): ChunkProviderLike; protected createMapping(target: string, relativePath: string): Promise; protected createInjection(target: string, resLoadOrigin: ResourceLoadOrigin): Promise; protected createResource(target: string, resLoadOrigin: ResourceLoadOrigin): Promise; protected enrichResource(resource: Resource): Promise; protected loadResource(target: string, resLoadOrigin: ResourceLoadOrigin): Promise; isSuccess(): boolean; getEntryPointResource(): Resource | null; getResource(target: string): Resource | null; getInjection(target: string): string | null; getRelativePathMapping(target: string, relativePath: string): string | null; load(target: string): Promise; }