import { __awaiter, __decorate } from "tslib";
import { customElement, FASTElement, observable } from '@microsoft/fast-element';
import * as Components from '../components';
import { logger } from '../utils';
import { MainStyles as styles } from './main.styles';
import { MainTemplate as template } from './main.template';
const name = 'design-system-configurator';
let MainApplication = class MainApplication extends FASTElement {
    constructor() {
        super(...arguments);
        this.ready = false;
    }
    connectedCallback() {
        super.connectedCallback();
        logger.debug(`${name} is now connected to the DOM`);
        this.loadRemotes();
    }
    loadRemotes() {
        return __awaiter(this, void 0, void 0, function* () {
            const remotes = yield Components.loadRemotes();
            this.ready = true;
        });
    }
};
__decorate([
    observable
], MainApplication.prototype, "ready", void 0);
MainApplication = __decorate([
    customElement({
        name,
        template,
        styles,
    })
], MainApplication);
export { MainApplication };
