import EsriApiFloorInfo from "@arcgis/core/support/MapFloorInfo";
export declare namespace MapFloorInfo {
    /**
     * Converts an ArcGIS Portal JSON representation of a MapFloorInfo object to
     * its Esri JavaScript API equivalent.
     *
     * @deprecated Use "json/*" modules instead.
     * @param floorInfo The MapFloorInfo JSON to convert.
     */
    function toEsriApiFloorInfo(floorInfo: MapFloorInfo): EsriApiFloorInfo;
    /**
     * Converts an Esri JavaScript API MapFloorInfo object to its ArcGIS Portal
     * JSON representation.
     *
     * @deprecated Use "json/*" modules instead.
     * @param floorInfo The MapFloorInfo object to convert.
     */
    function fromEsriApiFloorInfo(floorInfo: EsriApiFloorInfo): MapFloorInfo;
}
/**
 * Contains floor-awareness information for the map. Defines the layers and
 * required fields for each layer that are used for floor filtering. See
 * {@link https://developers.arcgis.com/web-map-specification/objects/mapFloorInfo/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface MapFloorInfo {
    /**
     * Defines the layer and field properties for the Facility layer used for
     * floor filtering.
     */
    facilityLayer?: FacilityLayerInfo;
    /**
     * Defines the layer and field properties for the Level layer used for floor
     * filtering.
     */
    levelLayer?: LevelLayerInfo;
    /**
     * Defines the layer and field properties for the Site layer used for floor
     * filtering. This property is optional.
     */
    siteLayer?: SiteLayerInfo;
}
/**
 * Defines the layer and field properties for the Facility layer used for floor
 * filtering. See
 * {@link https://developers.arcgis.com/web-map-specification/objects/facilityLayerInfo/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface FacilityLayerInfo {
    /**
     * The name of the attribute field that contains a facility feature's unique
     * identifier.
     */
    facilityIdField?: string;
    /**
     * A layer ID that refers to an operational layer in the map. The layer
     * provides access to Facility features to use for floor filtering.
     */
    layerId?: string;
    /**
     * The name of the attribute field that contains a facility feature's name.
     */
    nameField?: string;
    /**
     * The name of the attribute field that contains a facility feature's site
     * identifier (a foreign key to the Site layer).
     */
    siteIdField?: string;
}
/**
 * Defines the layer and field properties for the Level layer used for floor
 * filtering. See
 * {@link https://developers.arcgis.com/web-map-specification/objects/levelLayerInfo/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface LevelLayerInfo {
    /**
     * The name of the attribute field that contains a level feature's facility
     * identifier (a foreign key to the Facility layer).
     */
    facilityIdField?: string;
    /**
     * A layer ID that refers to an operational layer in the map. The layer
     * provides access to Level features to use for floor filtering.
     */
    layerId?: string;
    /**
     * The name of the attribute field that contains a level feature's unique
     * identifier.
     */
    levelIdField?: string;
    /**
     * The name of the attribute field that contains a level feature's level
     * number specific to its facility.
     */
    levelNumberField?: string;
    /**
     * The name of the attribute field that contains a level feature's long
     * name.
     */
    longNameField?: string;
    /**
     * The name of the attribute field that contains a level feature's short
     * name.
     */
    shortNameField?: string;
    /**
     * The name of the attribute field that contains a level feature's vertical
     * order. The vertical order defines the order of display in the floor
     * filter widget, and it also references the floor levels of an Indoor
     * Positioning System.
     */
    verticalOrderField?: string;
}
/**
 * Defines the layer and field properties for the Site layer used for floor
 * filtering. This property is optional. See
 * {@link https://developers.arcgis.com/web-map-specification/objects/siteLayerInfo/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface SiteLayerInfo {
    /**
     * A layer ID that refers to an operational layer in the map. The layer
     * provides access to Site features to use for floor filtering.
     */
    layerId?: string;
    /**
     * The name of the attribute field that contains a site feature's name.
     */
    nameField?: string;
    /**
     * The name of the attribute field that contains a site feature's unique
     * identifier.
     */
    siteIdField?: string;
}
