/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import _ from 'lodash';
import type { FlowSurfaceCatalogExpandFlags, FlowSurfaceCatalogItemOptionalFieldsOptions, FlowSurfaceCatalogItemOptionalFieldsProviders, FlowSurfaceCatalogNodeProjectInput, FlowSurfaceCatalogNodeProjectResult, FlowSurfaceCatalogProjectItemOptions, FlowSurfaceCatalogProjectableItem, FlowSurfaceCatalogProjectedItem, FlowSurfaceFieldCatalogProjectableItem, FlowSurfaceFieldCatalogLightCandidate } from './catalog-smart.types';
export declare function buildCatalogItemOptionalFields(use: string | undefined, options: FlowSurfaceCatalogItemOptionalFieldsOptions, providers: FlowSurfaceCatalogItemOptionalFieldsProviders): _.Dictionary<any>;
export declare function buildFieldCatalogLightCandidate(item: FlowSurfaceFieldCatalogProjectableItem): FlowSurfaceFieldCatalogLightCandidate;
export declare function projectCatalogItem(item: FlowSurfaceCatalogProjectableItem, expand: FlowSurfaceCatalogExpandFlags, options: FlowSurfaceCatalogProjectItemOptions): FlowSurfaceCatalogProjectedItem;
export declare function expandFieldCatalogCandidate(item: FlowSurfaceFieldCatalogProjectableItem, expand: FlowSurfaceCatalogExpandFlags, options: FlowSurfaceCatalogProjectItemOptions): FlowSurfaceCatalogProjectedItem;
export declare function projectCatalogNode(node: any, resolved: FlowSurfaceCatalogNodeProjectInput['resolved'], expand: FlowSurfaceCatalogExpandFlags, options: FlowSurfaceCatalogNodeProjectInput['options']): FlowSurfaceCatalogNodeProjectResult;
