import { Container, type ContainerChild, type DestroyOptions } from 'pixi.js'; import type { FlashTimeline, FlashLayer, FlashMovieClipItem, SymbolDisplayData } from "./types/library-schema"; import { type FlashDisplayItem } from "./FlashDisplayItem"; type AnimateParams = { loop: boolean; reverse: boolean; fps: number; }; export type MovieClipLayer = { name: FlashLayer['name']; type: FlashLayer['layerType']; parent: FlashLayer['parentLayer']; elements: FlashDisplayItem[]; }; declare const MovieClip_base: { prototype: Container; mixin: typeof Container.mixin; prefixed: string | boolean; readonly EventEmitter: import("eventemitter3").EventEmitter.EventEmitterStatic; } & (abstract new (data: SymbolDisplayData, options?: import("pixi.js").ContainerOptions | undefined) => Container & Container & { displayData: SymbolDisplayData; instanceName: string; tpX?: number | undefined; tpY?: number | undefined; useTransformPoint: boolean; layerMask: MovieClipLayer; resetBlendMode(): void; centring(): void; centringX(): void; centringY(): void; anchorDefault(): void; anchorDefaultX(): void; anchorDefaultY(): void; getChildByInstanceName(instanceName: string): ControllerType; }); export default class MovieClip extends MovieClip_base { libData: FlashMovieClipItem; libName: string; timelineData: FlashTimeline; layersData: FlashLayer[]; currentFrameIndex: number; currentFrameName: string; layers: MovieClipLayer[]; animateParams: AnimateParams | undefined; elements: Record; constructor(data: FlashMovieClipItem, displayItemData: SymbolDisplayData); /** * For overriding: called on frame change before the frame is cleared and new elements are created */ protected exitFrame(): void; getElement(name: string): FlashDisplayItem | undefined; /** * Get children by name in the library. * Works only with elements from this extension. * * @param {string} name The element name from the library * @returns {array} An array of objects whose library name matches the given one */ getChildrenByLibName(name: string): FlashDisplayItem[]; /** * Go to the next frame of the clip. * @param {boolean} loop If the last frame is reached, whether to go back to the first frame. */ goToNextFrame(loop: boolean): void; /** * Calculate the next frame index. * @param {boolean} loop * @param {boolean} reverse * @param {number} delta * @returns {*} * @private */ private _getNextFrameIndex; /** * Go to the previous frame. * @param {boolean} loop If the first frame is reached, whether to go to the last frame. */ goToPreviousFrame(loop: boolean): void; /** * Go to a specific frame. * @param {number | string} frameId The frame number or name to go to. * @param {boolean} force Redraw the frame even if it is the current frame. */ goToFrame(frameId: number | string, force?: boolean): void; /** * Get the frame index by name. * @param {string} name The frame name. * @returns {number} The frame index, or -1 if the frame was not found. */ findFrameIndexByName(name: string): number; /** * Create the frame elements. * @param {number} frameId The frame index to create. */ private _constructFrame; /** * Add a masked layer to the layers. * @private */ _setMaskLayer(): void; /** * Add children for a new frame. * @param {object} currentFrameData The child data for the current frame. * @param {number} startAddPosition The starting position for adding children. * @returns {[]} * @private */ private _addNewChild; /** * Remove frame elements from a layer. * @param {number} layerIndex The layer index. * @private */ private _removeElements; destroy(options?: DestroyOptions): void; } export {}; //# sourceMappingURL=MovieClip.d.ts.map