/// <reference types="@geoscene/core/interfaces.d.ts" />
import { Nil } from '@arcgis/components-utils';
import { Sections, VisibilityAppearance, IconName } from './action-utils';
export type LayerListLayerUnion = __geoscene.Layer | __geoscene.Sublayer | __geoscene.SubtypeGroupLayer | __geoscene.SubtypeSublayer;
export type TableSupportedLayers = "knowledge-graph" | "map-image" | "tile";
type VisibilityMode = "exclusive" | "independent" | "inherited";
type SortableCollection = __geoscene.Collection<__geoscene.KMLSublayer> | __geoscene.Collection<{
    uid?: string | null;
}> | Nil;
export declare const minFilterItems = 10;
export declare const minDragEnabledItems = 2;
type StatusIcon = "beacon" | "bullet-point" | "offline" | "square";
export declare function getVisibilityIcon({ exclusive, visible, visibilityAppearance, }: {
    exclusive: boolean;
    visible: boolean;
    visibilityAppearance: VisibilityAppearance;
}): IconName;
export declare function getStatusIcon({ connectionStatus, publishing, }: {
    connectionStatus?: __geoscene.StreamLayerView["connectionStatus"] | Nil;
    publishing: boolean;
}): StatusIcon;
export declare function areChildrenHidden(layer: LayerListLayerUnion | Nil): boolean;
export declare function findLayerListMode(layer: LayerListLayerUnion | Nil): string | undefined;
export declare function findLayerMinScale(layer: LayerListLayerUnion | Nil): number | undefined;
export declare function findLayerMaxScale(layer: LayerListLayerUnion | Nil): number | undefined;
export declare function findLayerVisibilityMode(layer: LayerListLayerUnion | Nil): VisibilityMode;
export declare function removeDestroyedListItems(items: __geoscene.Collection<__geoscene.ListItem | __geoscene.TableListListItem>): void;
export declare function getNormalizedChildLayerProperty(layer: LayerListLayerUnion | Nil): "layers" | "sublayers" | undefined;
export declare function setFilterPredicate(listEl: HTMLCalciteListElement | Nil, filterPredicate: Nil | ((item: __geoscene.ListItem | __geoscene.TableListListItem) => boolean)): void;
export declare function canSortSublayers(item: __geoscene.ListItem | Nil): boolean;
export declare function canDisplayLayer(layer: LayerListLayerUnion | Nil): boolean;
export declare function isLayerOutsideScaleRange(layer: LayerListLayerUnion | Nil, currentScale: Nil | number): boolean;
export declare function sortLayersToIds(layers: Nil | SortableCollection, itemIds: string[]): void;
export declare function sortChildLayersToIds(item: __geoscene.ListItem, itemIds: string[]): void;
export declare function getItemLayers(item: __geoscene.ListItem): __geoscene.Collection<LayerListLayerUnion> | null;
export declare function isSublayer(layer: LayerListLayerUnion | Nil): layer is __geoscene.Sublayer;
export declare function getItem(element: HTMLElement | Nil): __geoscene.ListItem | Nil;
export declare function getLayerType(element: HTMLElement | Nil): Nil | string;
export declare function listItemHasChildren(item: __geoscene.ListItem | __geoscene.TableListListItem): boolean;
export declare function getSingleAction(sections: Sections): __geoscene.ActionButton | __geoscene.ActionToggle | undefined;
export declare function isCatalogSublayer(sublayer: __geoscene.Sublayer, type: "footprints" | "layers-in-view"): boolean;
export {};