import { Rectangle, Resource, Cesium3DTileset, MVTDataProvider as CesiumMVTDataProvider } from 'cesium'; import { PickCesiumProps } from '../core'; export type MVTDataProviderShape = CesiumMVTDataProvider & { show: boolean; readonly tileset: Cesium3DTileset | undefined; update: (frameState: unknown) => void; isDestroyed: () => boolean; destroy: () => void; }; export type MVTDataProviderCesiumProps = PickCesiumProps; export type MVTDataProviderCesiumReadonlyProps = { /** Minimum zoom level represented in the generated tileset. Fixed at creation time. */ minZoom?: number; /** Maximum zoom level represented in the generated tileset. Fixed at creation time. */ maxZoom?: number; /** Optional geographic extent (radians) constraining the generated tile tree. Fixed at creation time. */ extent?: Rectangle; /** MVT property name to use as feature ID. Fixed at creation time. */ featureIdProperty?: string; }; export type MVTDataProviderOtherProps = { /** Required URL template containing `{z}`/`{x}`/`{y}` placeholders. */ url: string | Resource; /** Fires once `fromUrl` resolves. Reach `provider.tileset` (or call `getTileset(provider)`) here to apply clipping/styling. */ onReady?: (provider: MVTDataProviderShape) => void; /** Fires if `fromUrl` rejects. */ onError?: (err: unknown) => void; }; export type MVTDataProviderProps = MVTDataProviderCesiumProps & MVTDataProviderCesiumReadonlyProps & MVTDataProviderOtherProps; declare const cesiumProps: readonly ["show"]; export declare const otherProps: readonly ["url", "onReady", "onError"]; declare const MVTDataProvider: import('..').CesiumComponentType; export default MVTDataProvider; /** * Typed accessor for the internal `Cesium3DTileset` that an `MVTDataProvider` * generates. Use inside `onReady` (or via a ref after mount) to apply clipping, * styling, or to call `zoomTo` on the tileset. */ export declare const getTileset: (provider: MVTDataProviderShape) => Cesium3DTileset | undefined;