#pragma once #include #include #include namespace mbgl { class AsyncRequest; class CanonicalTileID; namespace style { class GeoJSONSource::Impl : public Source::Impl { public: Impl(std::string id, Immutable); Impl(const GeoJSONSource::Impl&, std::shared_ptr); ~Impl() final; Range getZoomRange() const; std::weak_ptr getData() const; const Immutable& getOptions() const { return options; } optional getAttribution() const final; private: Immutable options; std::shared_ptr data; }; } // namespace style } // namespace mbgl