001package gudusoft.gsqlparser.catalog.runtime; 002 003import java.util.Map; 004 005/** 006 * Read-only view of a catalog object inside a {@link CatalogSnapshot}. 007 * 008 * <p>Plan §7.2.</p> 009 * 010 * <p>Phase 1A skeleton — implementations land in P1B (T1B.5, T1B.7).</p> 011 */ 012public interface CatalogEntry { 013 014 CatalogObjectId id(); 015 016 CatalogQualifiedName name(); 017 018 CatalogObjectKind kind(); 019 020 /** Vendor-specific extras (Iceberg snapshot id, OpenMetadata tags, etc.) until promoted. */ 021 Map<String, Object> properties(); 022}