import { BaseLayout } from '../layouts/base-layout'; import type { LayoutMapping } from '@antv/layout'; import type { AntVLayout } from '../layouts/types'; import type { RuntimeContext } from '../runtime/types'; import type { GraphData } from '../spec/data'; import type { LayoutOptions, STDLayoutOptions } from '../spec/layout'; /** * 判断是否是 combo 布局 * * Determine if it is a combo layout * @param options - 布局配置项 | Layout options * @returns 是否是 combo 布局 | Whether it is a combo layout */ export declare function isComboLayout(options: STDLayoutOptions): boolean; /** * 判断是否是树图布局 * * Determine if it is a tree layout * @param options - 布局配置项 | Layout options * @returns 是否是树图布局 | Whether it is a tree layout */ export declare function isTreeLayout(options: STDLayoutOptions): boolean; /** * 数据中是否指定了位置 * * Is the position specified in the data * @param data - 数据 | Data * @returns 是否指定了位置 | Is the position specified */ export declare function isPositionSpecified(data: Record): boolean; /** * 是否是前布局 * * Is pre-layout * @remarks * 前布局是指在初始化元素前计算布局,适用于一些布局需要提前计算位置的场景。 * * Pre-layout refers to calculating the layout before initializing the elements, which is suitable for some layouts that need to calculate the position in advance. * @param options - 布局配置项 | Layout options * @returns 是否是前布局 | Is it a pre-layout */ export declare function isPreLayout(options?: LayoutOptions): boolean | undefined; /** * 将图布局结果转换为 G6 数据 * * Convert the layout result to G6 data * @param layoutMapping - 布局映射 | Layout mapping * @returns G6 数据 | G6 data */ export declare function layoutMapping2GraphData(layoutMapping: LayoutMapping): GraphData; /** * 将 @antv/layout 布局适配为 G6 布局 * * Adapt @antv/layout layout to G6 layout * @param Ctor - 布局类 | Layout class * @param context - 运行时上下文 | Runtime context * @returns G6 布局类 | G6 layout class */ export declare function layoutAdapter(Ctor: new (options: Record) => AntVLayout, context: RuntimeContext): new (context: RuntimeContext, options?: Record) => BaseLayout; /** * 调用布局成员方法 * * Call layout member methods * @remarks * 提供一种通用的调用方式来调用 G6 布局和 \@antv/layout 布局上的方法 * * Provide a common way to call methods on G6 layout and \@antv/layout layout * @param layout - 布局实例 | Layout instance * @param method - 方法名 | Method name * @param args - 参数 | Arguments * @returns 返回值 | Return value */ export declare function invokeLayoutMethod(layout: BaseLayout, method: string, ...args: unknown[]): any; /** * 获取布局成员属性 * * Get layout member properties * @param layout - 布局实例 | Layout instance * @param name - 属性名 | Property name * @returns 返回值 | Return value */ export declare function getLayoutProperty(layout: BaseLayout, name: string): any;