import { __extends, __decorate, __metadata } from 'tslib';
import { getTheme } from '@uifabric/styling';
import { ProvideReactive, Prop, Component, Vue } from 'vue-property-decorator';

var ThemeProvider = function(_super) {
  __extends(ThemeProvider2, _super);
  function ThemeProvider2() {
    return _super !== null && _super.apply(this, arguments) || this;
  }
  ThemeProvider2.prototype.render = function(h) {
    if (!this.$slots.default)
      return h("div");
    return this.$slots.default.length === 1 ? this.$slots.default[0] : h("div", this.$slots.default);
  };
  __decorate([
    ProvideReactive(),
    Prop({ type: Object, default: function() {
      return getTheme();
    } }),
    __metadata("design:type", Object)
  ], ThemeProvider2.prototype, "theme", void 0);
  ThemeProvider2 = __decorate([
    Component({
      inject: []
    })
  ], ThemeProvider2);
  return ThemeProvider2;
}(Vue);

export { ThemeProvider };
