import { Material } from "../assets/material"; import { Process } from "../process"; import { ProcessManagerBase } from "./processManagerBase"; import { Texture2d } from "../rendering/renderContext"; import { Shader } from "../assets/shader"; import { Viewer } from "../viewer"; import { EventArgs } from "../events"; export declare class ShaderCollection { _items: Shader[]; private _owner; private _itemNames; get count(): number; constructor(owner: AssetManager); add(...value: Shader[]): void; addRange(values: Shader[]): void; insert(index: number, value: Shader): void; remove(value: Shader): boolean; clear(): void; get(name: string): Shader; has(name: string): boolean; } export declare class MaterialCollection { _items: Material[]; private _owner; private _itemNames; get count(): number; constructor(owner: AssetManager); add(...value: Material[]): void; addRange(values: Material[]): void; insert(index: number, value: Material): void; remove(value: Material): boolean; clear(): void; get(name: string): Material; has(name: string): boolean; } export declare class TextureCollection { _items: { name: string; texture: Texture2d; }[]; private _owner; private _itemNames; get count(): number; constructor(owner: AssetManager); add(name: string, value: Texture2d): void; insert(index: number, name: string, value: Texture2d): void; remove(value: Material): boolean; clear(): void; get(name: string): Texture2d; has(name: string): boolean; } export declare class AssetManager extends ProcessManagerBase { private _shaders; private _materials; private _textures; get shaders(): ShaderCollection; get materials(): MaterialCollection; get textures(): TextureCollection; get defaultShader(): Shader; get defaultMaterial(): Material; constructor(process: Process); protected onInit(viewer: Viewer, args: EventArgs): void; private loadDefaultShaders; }