/**
 * 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.
 */
/**
 * 通用的字段子模型重建工具：
 * - 保留原有 uid
 * - 直接重建为目标字段类，保持与 defineChildren 初始创建逻辑一致
 * - 支持同步父项模式（pattern）
 * - 同一字段模型类型下保留已有字段设置；切换到其他字段模型类型时丢弃不兼容设置
 * - 重建后触发 beforeRender（useCache: false）
 */
import { FieldModel } from '../../models/base/FieldModel';
import { FlowModel } from '@nocobase/flow-engine';
type FieldParentModel = FlowModel & {
    subModels: FlowModel['subModels'] & {
        field?: FieldModel;
    };
    getFieldSettingsInitParams?: () => unknown;
};
type RebuildOptions = {
    parentModel: FieldParentModel;
    targetUse: string;
    defaultProps?: Record<string, unknown>;
    pattern?: string;
    fieldSettingsInit?: unknown;
};
export declare function getFieldBindingUse(fieldModel?: FieldModel): string | undefined;
export declare function rebuildFieldSubModel({ parentModel, targetUse, defaultProps, pattern, fieldSettingsInit, }: RebuildOptions): Promise<void>;
export {};
