define("pbWofExoticFarEastLogoComponentApi", ["componentmodelComponentApi", "gameLayoutApi", "clientkernelEventbusApi"],
    function(componentmodelComponentApi, gameLayoutApi, 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 pbWofExoticFarEastLogoComponentApi == 'undefined') {
            var pbWofExoticFarEastLogoComponentApi = {};
        };
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration = function() {};
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration = ck_implements(pbWofExoticFarEastLogoComponentApi.LogoDeclaration, componentmodelComponentApi.IComponentDeclaration);
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.__interfaces__ = [componentmodelComponentApi.IComponentDeclaration];
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.__name__ = ["pbWofExoticFarEastLogoComponentApi", "LogoDeclaration"];
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.prototype.getChildComponents = function() {
            return null;
        };
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.prototype.getReferredComponents = function() {
            return null;
        };
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.prototype.getImplementedPorts = function() {
            return [pbWofExoticFarEastLogoComponentApi.ILogolImplementationPort];
        };
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.prototype.getUsedPorts = function() {
            return [pbWofExoticFarEastLogoComponentApi.ILogoPort, gameLayoutApi.IGameLayoutPort];
        };
        pbWofExoticFarEastLogoComponentApi.LogoDeclaration.prototype.__class__ = pbWofExoticFarEastLogoComponentApi.LogoDeclaration;

        pbWofExoticFarEastLogoComponentApi.ILogoPort = function() {}
        pbWofExoticFarEastLogoComponentApi.ILogoPort.prototype = {

            setVisibility: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            startCountup: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            gotoLogoPosition: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            gotoCacheLinkPosition: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            }
        };

        pbWofExoticFarEastLogoComponentApi.ILogolImplementationPort = function() {}
        pbWofExoticFarEastLogoComponentApi.ILogolImplementationPort.prototype = {

            setVisibility: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            startCountup: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            gotoCacheLinkPosition: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            },
            gotoLogoPosition: function() {
                return {
                    arguments: [],
                    returns: "*"
                };
            }
        };
        pbWofExoticFarEastLogoComponentApi.LogoFactory = function() {};
        pbWofExoticFarEastLogoComponentApi.LogoFactory = ck_implements(pbWofExoticFarEastLogoComponentApi.LogoFactory, componentmodelComponentApi.IPortFactory);
        pbWofExoticFarEastLogoComponentApi.LogoFactory.__interfaces__ = [componentmodelComponentApi.IPortFactory];
        pbWofExoticFarEastLogoComponentApi.LogoFactory.__name__ = ["pbWofExoticFarEastLogoComponentApi", "LogoFactory"];
        pbWofExoticFarEastLogoComponentApi.LogoFactory.prototype.provide = function(channel) {
            return new pbWofExoticFarEastLogoComponentApi.LogoPort(channel);
        };
        pbWofExoticFarEastLogoComponentApi.LogoFactory.prototype["use"] = function(channel) {
            return new pbWofExoticFarEastLogoComponentApi.LogoPort(channel);
        };
        pbWofExoticFarEastLogoComponentApi.LogoFactory.prototype.__class__ = pbWofExoticFarEastLogoComponentApi.LogoFactory;
        pbWofExoticFarEastLogoComponentApi.LogoPort = function(bus) {
            this._gotoLogoPosition = new clientkernelEventbusApi.Request("logo:gotoLogoPosition");
            this._gotoCacheLinkPosition = new clientkernelEventbusApi.Request("logo:gotoCacheLinkPosition");
            this._startCountup = new clientkernelEventbusApi.Request("logo:startCountup");
            this._setVisibility = new clientkernelEventbusApi.Topic("logo:setVisibility");
            this._setVisibility.connect(bus);
            this._startCountup.connect(bus);
            this._gotoCacheLinkPosition.connect(bus);
            this._gotoLogoPosition.connect(bus);
        };
        pbWofExoticFarEastLogoComponentApi.LogoPort = ck_implements(pbWofExoticFarEastLogoComponentApi.LogoPort, pbWofExoticFarEastLogoComponentApi.ILogoPort);
        pbWofExoticFarEastLogoComponentApi.LogoPort = ck_implements(pbWofExoticFarEastLogoComponentApi.LogoPort, pbWofExoticFarEastLogoComponentApi.ILogolImplementationPort);
        pbWofExoticFarEastLogoComponentApi.LogoPort.__interfaces__ = [pbWofExoticFarEastLogoComponentApi.ILogoPort, pbWofExoticFarEastLogoComponentApi.ILogolImplementationPort];
        pbWofExoticFarEastLogoComponentApi.LogoPort.__name__ = ["pbWofExoticFarEastLogoComponentApi", "LogoPort"];
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype._setVisibility = null;
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype._startCountup = null;
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype._gotoCacheLinkPosition = null;
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype._gotoLogoPosition = null;
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype.setVisibility = function() {
            return this._setVisibility;
        };
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype.startCountup = function() {
            return this._startCountup;
        };
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype.gotoCacheLinkPosition = function() {
            return this._gotoCacheLinkPosition;
        };
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype.gotoLogoPosition = function() {
            return this._gotoLogoPosition;
        };
        pbWofExoticFarEastLogoComponentApi.LogoPort.prototype.__class__ = pbWofExoticFarEastLogoComponentApi.LogoPort;
        pbWofExoticFarEastLogoComponentApi.CacheLinkCountupPayload = function(value) {
            this.value = value;
        };
        pbWofExoticFarEastLogoComponentApi.CacheLinkCountupPayload.__name__ = ["pbWofExoticFarEastLogoComponentApi", "CacheLinkCountupPayload"];
        pbWofExoticFarEastLogoComponentApi.CacheLinkCountupPayload.prototype.value = null;
        pbWofExoticFarEastLogoComponentApi.CacheLinkCountupPayload.prototype.__class__ = pbWofExoticFarEastLogoComponentApi.CacheLinkCountupPayload;
        if (typeof haxe == 'undefined') {
            var haxe = {};
        };

        haxe.IMap = function() {}
        haxe.IMap.prototype = {

        };
        return {
            exports: pbWofExoticFarEastLogoComponentApi
        };
    });
//# sourceURL=pbWofExoticFarEastLogoComponentApi.js