import { defineComponent, getCurrentInstance, createCommentVNode } from 'vue';
import '../../../composables/index.mjs';
import { tilingScheme, ellipsoid, glowColor, tileWidth, tileHeight } from '../../../utils/cesium-props.mjs';
import { makeColor } from '../../../utils/cesium-helpers.mjs';
import { kebabCase } from '../../../utils/util.mjs';
import useProviders from '../../../composables/use-providers/index.mjs';

var ProviderImageryGrid = defineComponent({
  name: "VcProviderImageryGrid",
  props: {
    ...tilingScheme,
    ...ellipsoid,
    cells: {
      type: Number,
      default: 8
    },
    color: {
      type: [String, Object, Array],
      default: () => [1, 1, 1, 0.4],
      watcherOptions: {
        cesiumObjectBuilder: makeColor
      }
    },
    ...glowColor,
    glowWidth: {
      type: Number,
      default: 6
    },
    backgroundColor: {
      type: [String, Array, Object],
      default: () => [0, 0.5, 0, 0.2],
      watcherOptions: {
        cesiumObjectBuilder: makeColor
      }
    },
    ...tileWidth,
    ...tileHeight,
    canvasSize: {
      type: Number,
      default: 256
    }
  },
  emits: ["beforeLoad", "ready", "destroyed", "readyPromise"],
  setup(props, ctx) {
    const instance = getCurrentInstance();
    instance.cesiumClass = "GridImageryProvider";
    useProviders(props, ctx, instance);
    return () => {
      var _a;
      return createCommentVNode(kebabCase(((_a = instance.proxy) == null ? void 0 : _a.$options.name) || ""));
    };
  }
});

export { ProviderImageryGrid as default };
//# sourceMappingURL=index.mjs.map
