import { IAsset } from '@awayjs/core';
import { Image2D, DefaultStageFactory } from '@awayjs/stage';
import { IMaterial } from '@awayjs/renderer';
import { Graphics } from '@awayjs/graphics';
import { MethodMaterial } from '@awayjs/materials';
import { Timeline } from '../base/Timeline';
import { IFrameScript } from '../base/IFrameScript';
import { Billboard } from '../display/Billboard';
import { TextField } from '../display/TextField';
import { MovieClip } from '../display/MovieClip';
import { Sprite } from '../display/Sprite';
import { DisplayObjectContainer } from '../display/DisplayObjectContainer';
import { PrefabBase } from '../prefabs/PrefabBase';
import { ISceneGraphFactory } from './ISceneGraphFactory';
export declare class DefaultSceneGraphFactory extends DefaultStageFactory implements ISceneGraphFactory {
    readonly mapMatsForBitmaps: NumberMap<IMaterial>;
    readonly awaySymbols: NumberMap<IAsset>;
    createMovieClip(timeline?: Timeline, symbol?: any): MovieClip;
    createSprite(prefab?: PrefabBase, graphics?: Graphics, symbol?: any): Sprite;
    createDisplayObjectContainer(symbol?: any): DisplayObjectContainer;
    createTextField(symbol?: any): TextField;
    createBillboard(material: IMaterial, symbol?: any): Billboard;
    createMaterial(image?: Image2D, alpha?: number): MethodMaterial;
    createMaterial(color?: number, alpha?: number): MethodMaterial;
    createFrameScripts(scripts: IFrameScript[], frameIdx: number, objName: string, objID: number): IFrameScript[];
    createChildInstanceForTimeline(timeline: Timeline, symbolID: number, sessionID: number): IAsset;
}
//# sourceMappingURL=DefaultSceneGraphFactory.d.ts.map