import type GeoRSSLayer from "@arcgis/core/layers/GeoRSSLayer";
import type Layer from "@arcgis/core/layers/Layer";
import type { QuerySourceCapabilities } from "../data/QuerySourceCapabilities.js";
import type { Schema } from "../data/Schema.js";
import type { GeoRSSLayerJson } from "../json/GeoRSSLayerJson.js";
import type { PropertyDefs } from "../support/Serializable.js";
import type { LayerExtensionProperties, LayerProperties } from "./_LayerExtension.js";
import { LayerExtension } from "./_LayerExtension.js";
/**
 * The URL for the default Esri GeoRSS utility endpoint.
 */
export declare const DEFAULT_GEO_RSS_UTILITY = "https://utility.arcgis.com/sharing/rss";
/**
 * Properties that can be passed into the constructor for
 * {@link GeoRSSLayerExtension}.
 */
export interface GeoRSSLayerExtensionProperties extends LayerExtensionProperties {
    /**
     * The Esri GeoRSSLayer object being extended.
     */
    layer?: GeoRSSLayer | (GeoRSSLayerJson & LayerProperties);
}
/**
 * Extends the capabilities of an Esri GeoRSSLayer object.
 */
export declare class GeoRSSLayerExtension extends LayerExtension<GeoRSSLayerExtensionProperties> {
    get layer(): GeoRSSLayer;
    private _featureLayerXCache;
    get hasFeatures(): boolean;
    /**
     * @inheritDoc
     */
    protected _capabilities(): QuerySourceCapabilities;
    protected _getSerializableProperties(): PropertyDefs<GeoRSSLayerExtensionProperties>;
    /**
     * @inheritDoc
     */
    protected _isSupportedLayer(layer: Layer): boolean;
    protected _createSchema(): Schema;
    protected _initializeLayer(): Promise<void>;
    protected _onInitialize(): Promise<void>;
}
