import{isSceneLayerExtension as e}from"../../utilities/extensions.js";import{isSceneLayer as r}from"../../utilities/layers.js";import{SceneLayerQueryProvider as t}from"../query/SceneLayerQueryProvider.js";import{IdentifyProviderBase as i}from"./IdentifyProviderBase.js";export class SceneLayerQueryIdentifyProvider extends i{queryProvider=new t;isSupported(t,i,s){return e(t)&&r(t.layer)&&!t.enableClientSideData&&this._supportsQuery(t)}_identify(e,r,t){const i=this,s={...t};return async function*(){s.spatialFilter=r,yield*i.queryProvider.query(e,"1=1",s)}()}_count(e,r,t){const i={...t};return i.spatialFilter=r,this.queryProvider.count(e,"1=1",i)}_supportsQuery(e){return!!e.layer?.associatedLayer}}