define("ballooniesIxfComponentsWinlinesPort", ["componentmodelComponentApi", "slotModelApi", "clientkernelEventbusApi"],
    function(componentmodelComponentApi, slotModelApi, clientkernelEventbusApi) {
        "use strict";

        function $iterator(o) {
            if (o instanceof Array) return function() {
                return {
                    cur: 0,
                    arr: o,
                    hasNext: function() {
                        return this.cur < this.arr.length;
                    },
                    next: function() {
                        return this.arr[this.cur++];
                    }
                };
            };
            return typeof(o.iterator) == 'function' ? $bind(o, o.iterator) : o.iterator;
        };;
        var $fid = 0;

        function $bind(o, m) {
            if (m == null) return null;
            if (m.__id__ == null) m.__id__ = $fid++;
            var f;
            if (o.hx__closures__ == null) o.hx__closures__ = {};
            else f = o.hx__closures__[m.__id__];
            if (f == null) {
                f = function() {
                    return f.method.apply(f.scope, arguments);
                };
                f.scope = o;
                f.method = m;
                o.hx__closures__[m.__id__] = f;
            }
            return f;
        };
        var $_;
        var $estr = function() {
            return _hcmn_.js_Boot.__string_rec(this, '');
        };
        if (typeof ballooniesIxfComponentsWinlinesPort == 'undefined') {
            var ballooniesIxfComponentsWinlinesPort = {};
        };
        ballooniesIxfComponentsWinlinesPort.WinPayload = function(outcome, winPerScatter, isLowWin) {
            this.outcome = outcome;
            this.winPerScatter = winPerScatter;
            this.isLowWin = isLowWin;
        };
        ballooniesIxfComponentsWinlinesPort.WinPayload.__name__ = ["ballooniesIxfComponentsWinlinesPort", "WinPayload"];
        ballooniesIxfComponentsWinlinesPort.WinPayload.prototype.outcome = null;
        ballooniesIxfComponentsWinlinesPort.WinPayload.prototype.winPerScatter = null;
        ballooniesIxfComponentsWinlinesPort.WinPayload.prototype.isLowWin = null;
        ballooniesIxfComponentsWinlinesPort.WinPayload.prototype.__class__ = ballooniesIxfComponentsWinlinesPort.WinPayload;

        ballooniesIxfComponentsWinlinesPort.IWinLinesImplementationPort = function() {}
        ballooniesIxfComponentsWinlinesPort.IWinLinesImplementationPort.prototype = {

            getShowOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getMultiplierOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getShowWinOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getHideOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getWinLineCycleAnimated: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getMultipliersAnimated: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getIdleSymbolsPlay: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getShowLineAnimations: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getExplosionReadyToSpawn: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStartExplosionSpawn: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            setVisible: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStartIdleAnimation: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStopIdleAnimation: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            }
        };

        ballooniesIxfComponentsWinlinesPort.IWinLinesPort = function() {}
        ballooniesIxfComponentsWinlinesPort.IWinLinesPort.prototype = {

            getShowOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getMultiplierOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getShowWinOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getHideOutcome: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            setVisible: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getWinLineCycleAnimated: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getMultipliersAnimated: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getShowLineAnimations: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getExplosionReadyToSpawn: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStartExplosionSpawn: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStartIdleAnimation: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            getStopIdleAnimation: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            }
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort = function(bus) {
            this.win = new clientkernelEventbusApi.Topic("winlines:currentWinLine");
            this.stopIdleAnimation = new clientkernelEventbusApi.Topic("winlines:stopIdleAnimation");
            this.startIdleAnimation = new clientkernelEventbusApi.Topic("winlines:startIdleAnimation");
            this.explosionStartSpawn = new clientkernelEventbusApi.Topic("winlines:explosionStartSpawn");
            this.explosionReadyToSpawn = new clientkernelEventbusApi.Topic("winlines:explosionReadyToSpawn");
            this.showLineAnimation = new clientkernelEventbusApi.Topic("winlines:showLineAnimation");
            this.idleSymbolsPlay = new clientkernelEventbusApi.Topic("winlines:idleSymbolsPlay");
            this.multiplierAnimationReady = new clientkernelEventbusApi.Topic("winlines:multiplierAnimationReady");
            this.winAnimationReady = new clientkernelEventbusApi.Topic("winlines:winAnimationReady");
            this.visible = new clientkernelEventbusApi.Topic("winlines:setVisible");
            this.hideOutcome = new clientkernelEventbusApi.Topic("winlines:hideOutcome");
            this.multiplierOutcome = new clientkernelEventbusApi.Topic("winlines:multiplierOutcome");
            this.showOutcome = new clientkernelEventbusApi.Topic("winlines:showOutcome");
            this.showWinOutcome = new clientkernelEventbusApi.Topic("winlines:showWinOutcome");
            this.showWinOutcome.connect(bus);
            this.showOutcome.connect(bus);
            this.multiplierOutcome.connect(bus);
            this.hideOutcome.connect(bus);
            this.winAnimationReady.connect(bus);
            this.idleSymbolsPlay.connect(bus);
            this.showLineAnimation.connect(bus);
            this.explosionReadyToSpawn.connect(bus);
            this.explosionStartSpawn.connect(bus);
            this.startIdleAnimation.connect(bus);
            this.stopIdleAnimation.connect(bus);
            this.win.connect(bus);
            this.visible.connect(bus);
            this.multiplierAnimationReady.connect(bus);
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort = ck_implements(ballooniesIxfComponentsWinlinesPort.WinLinesPort, ballooniesIxfComponentsWinlinesPort.IWinLinesPort);
        ballooniesIxfComponentsWinlinesPort.WinLinesPort = ck_implements(ballooniesIxfComponentsWinlinesPort.WinLinesPort, ballooniesIxfComponentsWinlinesPort.IWinLinesImplementationPort);
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.__interfaces__ = [ballooniesIxfComponentsWinlinesPort.IWinLinesPort, ballooniesIxfComponentsWinlinesPort.IWinLinesImplementationPort];
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.__name__ = ["ballooniesIxfComponentsWinlinesPort", "WinLinesPort"];
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.showWinOutcome = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.showOutcome = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.multiplierOutcome = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.hideOutcome = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.visible = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.winAnimationReady = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.multiplierAnimationReady = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.idleSymbolsPlay = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.showLineAnimation = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.explosionReadyToSpawn = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.explosionStartSpawn = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.startIdleAnimation = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.stopIdleAnimation = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.win = null;
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getShowOutcome = function() {
            return this.showOutcome;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getMultiplierOutcome = function() {
            return this.multiplierOutcome;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getShowWinOutcome = function() {
            return this.showWinOutcome;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getHideOutcome = function() {
            return this.hideOutcome;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getWinLineCycleAnimated = function() {
            return this.winAnimationReady;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getMultipliersAnimated = function() {
            return this.multiplierAnimationReady;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getIdleSymbolsPlay = function() {
            return this.idleSymbolsPlay;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getShowLineAnimations = function() {
            return this.showLineAnimation;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getExplosionReadyToSpawn = function() {
            return this.explosionReadyToSpawn;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getStartExplosionSpawn = function() {
            return this.explosionStartSpawn;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getStartIdleAnimation = function() {
            return this.startIdleAnimation;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.getStopIdleAnimation = function() {
            return this.stopIdleAnimation;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.setVisible = function() {
            return this.visible;
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPort.prototype.__class__ = ballooniesIxfComponentsWinlinesPort.WinLinesPort;
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory = function() {};
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory = ck_implements(ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory, componentmodelComponentApi.IPortFactory);
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory.__interfaces__ = [componentmodelComponentApi.IPortFactory];
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory.__name__ = ["ballooniesIxfComponentsWinlinesPort", "WinLinesPortFactory"];
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory.prototype.provide = function(channel) {
            return new ballooniesIxfComponentsWinlinesPort.WinLinesPort(channel);
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory.prototype["use"] = function(channel) {
            return new ballooniesIxfComponentsWinlinesPort.WinLinesPort(channel);
        };
        ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory.prototype.__class__ = ballooniesIxfComponentsWinlinesPort.WinLinesPortFactory;
        return {
            exports: ballooniesIxfComponentsWinlinesPort
        };
    });
//# sourceURL=winLinesPort.js