import PauseTickerType from '../../types/PauseTickerType.cjs';
import CanvasBaseItemMemory from '../canvas/memory/CanvasBaseItemMemory.cjs';
import ContainerMemory from '../canvas/memory/ContainerMemory.cjs';
import { TickerHistoryForExport } from '../TickerHistory.cjs';
import TickersSequence from '../TickersSequence.cjs';
import 'pixi.js';
import '../../types/ContainerChild.cjs';
import '../../classes/canvas/CanvasBaseItem.cjs';
import '../../types/TickerIdType.cjs';
import '../TickerArgs.cjs';
import '../../types/PauseType.cjs';
import '../../types/RepeatType.cjs';

/**
 * Interface exported canvas
 */
interface ExportedCanvas {
    tickers: {
        [id: string]: TickerHistoryForExport<any>;
    };
    tickersSteps: {
        [alias: string]: {
            [tickerId: string]: TickersSequence;
        };
    };
    elements: {
        [alias: string]: CanvasBaseItemMemory;
    };
    stage: Partial<ContainerMemory>;
    elementAliasesOrder: string[];
    tickersOnPause: {
        [alias: string]: PauseTickerType;
    };
    tickersToCompleteOnStepEnd: {
        tikersIds: {
            id: string;
        }[];
        stepAlias: {
            id: string;
            alias: string;
        }[];
    };
}

export type { ExportedCanvas as default };
