/**
 * 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 type { AstIdentifierBinding, CtxRootAlias, InvalidReactRuntimeBinding, ReactAsyncComponentBinding, ReactCreateElementAlias, ReactDefaultAlias, ReactNamespaceAlias } from '../internal-types';
export declare function collectReactCreateElementAliasesFromAst(ast: any, source: string, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases: CtxRootAlias[]): ReactCreateElementAlias[];
export declare function collectReactNamespaceAliasesFromAst(ast: any, source: string, identifierBindings: AstIdentifierBinding[], ctxRootAliases: CtxRootAlias[]): ReactNamespaceAlias[];
export declare function collectReactDefaultAliasesFromAst(ast: any, source: string, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases: CtxRootAlias[]): ReactDefaultAlias[];
export declare function collectAstInvalidReactRuntimeBindingsFromAst(ast: any, source: string, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases: CtxRootAlias[], defaultAliases?: ReactDefaultAlias[]): InvalidReactRuntimeBinding[];
export declare function collectReactNamespaceCarrierAliasesFromAst(containerName: string, sourceNode: any, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases: CtxRootAlias[], addAlias: (member: string, capability: string, node?: any, precedenceStart?: number) => void): void;
export declare function collectReactDefaultCarrierAliasesFromAst(containerName: string, sourceNode: any, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases: CtxRootAlias[], defaultAliases: ReactDefaultAlias[], addAlias: (member: string, capability: string, node?: any, precedenceStart?: number) => void): void;
export declare function getAstNestedCarrierMemberName(containerName: string, targetAliasName: string): string;
export declare function collectReactAsyncComponentBindingsFromAst(ast: any, source: string, identifierBindings: AstIdentifierBinding[]): ReactAsyncComponentBinding[];
export declare function collectAstReactAsyncComponentReferences(node: any, asyncComponentBindings: ReactAsyncComponentBinding[], reactCreateElementAliases: ReactCreateElementAlias[], identifierBindings: AstIdentifierBinding[]): Array<{
    capability: string;
    component: string;
    index: number;
}>;
export declare function resolveAstAsyncComponentBinding(node: any, bindings: ReactAsyncComponentBinding[], identifierBindings: AstIdentifierBinding[]): ReactAsyncComponentBinding;
export declare function getReactCreateElementCallCapabilityFromAst(node: any, aliases: ReactCreateElementAlias[], identifierBindings: AstIdentifierBinding[]): string;
export declare function getReactCreateElementCapabilityFromAst(node: any, identifierBindings: AstIdentifierBinding[], namespaceAliases: ReactNamespaceAlias[], ctxRootAliases?: CtxRootAlias[]): string;
export declare function isAstAsyncFunctionLike(node: any): boolean;
