import { FIELD_TYPE } from '../../../../../../domain/field/field-type';
import { Doc } from '../../../../../../core';
export interface SelectStrategy {
    columnsKey: string;
    fetcher: 'lot2sn' | 'ref' | 'rdo2ref';
    isTree?: boolean;
    /** 关联字段 key */
    linkFieldId?: string;
    /** 数据联动，切换分类进行清空原因数据 */
    clearFieldId?: string;
    buildQuery?: (keyword: string, isLinkQuery?: boolean) => {
        queryData?: Record<string, any>;
        exp?: string;
    };
    transform: (options: any[], value?: string) => any;
}
/**
 * 判断指定字段是否需要开启【报废/不良】分类 ->原因单向数据联动
 * @param {string} clickedFieldType - 点击的字段类型
 * @param {string} clickedKey - 点击字段的key（subFieldKey/modelLink）
 * @returns {boolean} 是否需要为当前点击字段开启联动
 */
export declare function shouldEnableLinkage(doc: Doc, clickedFieldType: FIELD_TYPE, clickedKey: string): boolean;
export declare const selectStrategyMap: Record<string, SelectStrategy>;
export declare function getSelectStrategy(fieldType?: string): SelectStrategy;
