import { PixiArmatureDisplay } from "./PixiArmatureDisplay";
import { PixiTextureAtlasData } from "./PixiTextureAtlasData";
import { Sprite, Texture } from "pixi.js";
import { Armature } from "../../dragonBones/armature/Armature";
import { Slot } from "../../dragonBones/armature/Slot";
import { SlotData } from "../../dragonBones/model/ArmatureData";
import { BaseFactory, BuildArmaturePackage } from "../../dragonBones/factory/BaseFactory";
import { DataParser } from "../../dragonBones/parser/DataParser";
/**
 * - The PixiJS factory.
 * @version DragonBones 3.0
 * @language en_US
 */
export declare class PixiFactory extends BaseFactory {
    private static _dragonBonesInstance;
    private static _factory;
    private static _clockHandler;
    static advanceTime(passedTime: number): void;
    static useSharedTicker: boolean;
    /**
     * - A global factory instance that can be used directly.
     * @version DragonBones 4.7
     * @language en_US
     */
    static get factory(): PixiFactory;
    /**
     * - A method to obtain a global factory instance (single case).
     * Compared with get factory, the advantage is that parameters can be passed.
     * @version DragonBones 4.7
     * @language en_US
     */
    static newInstance(useSharedTicker?: boolean): PixiFactory;
    /**
     * - Create a new factory instance.
     * @param dataParser - The data parser instance.
     * @param useSharedTicker - Whether to use the shared ticker.
     *
     * What it will do:
     * - Create a new DragonBones instance.
     * - Create new PixiArmatureDisplay instance.
     * - Link Ticker.shared to the _clockHandler.
     * -
     * @inheritDoc
     */
    constructor(dataParser?: DataParser | null, useSharedTicker?: boolean);
    protected _buildTextureAtlasData(textureAtlasData: PixiTextureAtlasData | null, textureAtlas: Texture | null): PixiTextureAtlasData;
    protected _buildArmature(dataPackage: BuildArmaturePackage): Armature;
    /**
     * Build a slot.
     * This method is used to create a slot for the armature.
     * it will used Pixi.Sprite and MeshSimple as the display object.
     * @param _dataPackage
     * @param slotData
     * @param armature
     * @returns
     */
    protected _buildSlot(_dataPackage: BuildArmaturePackage, slotData: SlotData, armature: Armature): Slot;
    /**
     * - Create a armature from cached DragonBonesData instances and TextureAtlasData instances, then use the {@link #clock} to update it.
     * The difference is that the armature created by {@link #buildArmature} is not WorldClock instance update.
     * @param armatureName - The armature data name.
     * @param dragonBonesName - The cached name of the DragonBonesData instance. (If not set, all DragonBonesData instances are retrieved, and when multiple DragonBonesData instances contain a the same name armature data, it may not be possible to accurately create a specific armature)
     * @param skinName - The skin name, you can set a different ArmatureData name to share it's skin data. (If not set, use the default skin data)
     * @returns The armature display container.
     * @see dragonBones.IArmatureProxy
     * @see dragonBones.BaseFactory#buildArmature
     * @version DragonBones 4.5
     * @example
     * <pre>
     *     let armatureDisplay = factory.buildArmatureDisplay("armatureName", "dragonBonesName");
     * </pre>
     * @language en_US
     */
    buildArmatureDisplay(armatureName: string, dragonBonesName?: string, skinName?: string | null, textureAtlasName?: string): PixiArmatureDisplay | null;
    /**
     * - Create the display object with the specified texture.
     * @param textureName - The texture data name.
     * @param textureAtlasName - The texture atlas data name (Of not set, all texture atlas data will be searched)
     * @version DragonBones 3.0
     * @language en_US
     */
    getTextureDisplay(textureName: string, textureAtlasName?: string | null): Sprite | null;
    /**
     * - A global sound event manager.
     * Sound events can be listened to uniformly from the manager.
     * @version DragonBones 4.5
     * @language en_US
     */
    get soundEventManager(): PixiArmatureDisplay;
}
