/**
 * 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 { DataSourceManager } from '@nocobase/flow-engine';
import type { CollectionFieldOptions } from '../../../flow-compat';
type CollectionLike = {
    name?: unknown;
    dataSource?: unknown;
    dataSourceKey?: unknown;
    setOption?: (key: string, value: any) => any;
};
type ApiClientLike = {
    request?: (options: {
        url: string;
        method?: string;
        params?: Record<string, any>;
        data?: Record<string, any>;
    }) => Promise<any>;
};
export declare function isTitleUsableField(dm: DataSourceManager | undefined, field: CollectionFieldOptions | undefined): boolean;
export declare function syncCollectionTitleField(options: {
    api: ApiClientLike;
    dataSourceManager?: DataSourceManager;
    targetCollection: CollectionLike | null | undefined;
    titleField: string;
}): Promise<{
    dataSourceKey: string;
    collectionName: string;
    titleField: string;
}>;
export {};
