'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

const config = require('./config-03608b68.js');
require('./helpers-d6e05acb.js');
const animation = require('./animation-c5bd37fd.js');
const index = require('./index-d32614ae.js');
const constants = require('./constants-122d7f67.js');
const index$1 = require('./index-c3c1f7d2.js');
const overlays = require('./overlays-ff434a08.js');

const setupConfig = (config) => {
    const win = window;
    const Ionic = win.Ionic;
    if (Ionic && Ionic.config && Ionic.config.constructor.name !== 'Object') {
        console.error('ionic config was already initialized');
        return;
    }
    win.Ionic = win.Ionic || {};
    win.Ionic.config = Object.assign(Object.assign({}, win.Ionic.config), config);
    return win.Ionic.config;
};
const getMode = () => {
    const win = window;
    const config = win && win.Ionic && win.Ionic.config;
    if (config) {
        if (config.mode) {
            return config.mode;
        }
        else {
            return config.get('mode');
        }
    }
    return 'md';
};

exports.getPlatforms = config.getPlatforms;
exports.isPlatform = config.isPlatform;
exports.createAnimation = animation.createAnimation;
exports.createGesture = index.createGesture;
exports.LIFECYCLE_DID_ENTER = constants.LIFECYCLE_DID_ENTER;
exports.LIFECYCLE_DID_LEAVE = constants.LIFECYCLE_DID_LEAVE;
exports.LIFECYCLE_WILL_ENTER = constants.LIFECYCLE_WILL_ENTER;
exports.LIFECYCLE_WILL_LEAVE = constants.LIFECYCLE_WILL_LEAVE;
exports.LIFECYCLE_WILL_UNLOAD = constants.LIFECYCLE_WILL_UNLOAD;
exports.menuController = index$1.menuController;
exports.actionSheetController = overlays.actionSheetController;
exports.alertController = overlays.alertController;
exports.loadingController = overlays.loadingController;
exports.modalController = overlays.modalController;
exports.pickerController = overlays.pickerController;
exports.popoverController = overlays.popoverController;
exports.toastController = overlays.toastController;
exports.getMode = getMode;
exports.setupConfig = setupConfig;
