/**
 * 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 { Field } from '@formily/core';
import { VariableOption, VariablesContextType } from '../../variables/types';
interface Props {
    operator: any;
    value: any;
    field: Field & {
        [key: string]: any;
    };
    condition: any;
    variables: VariablesContextType;
    localVariables: VariableOption[];
    /**
     * used to parse the variable name of the left condition value
     * @default '$nForm'
     */
    variableNameOfLeftCondition?: string;
    action?: any;
    conditionType?: 'advanced' | 'basic';
}
export declare function bindLinkageRulesToFiled({ field, linkageRules, formValues, localVariables, action, rule, variables, variableNameOfLeftCondition, }: {
    field: any;
    linkageRules: any[];
    formValues: any;
    localVariables: VariableOption[];
    action: any;
    rule: any;
    variables: VariablesContextType;
    /**
     * used to parse the variable name of the left condition value
     * @default '$nForm'
     */
    variableNameOfLeftCondition?: string;
}, jsonLogic: any): () => void;
export declare function getVariableValuesInCondition({ linkageRules, localVariables, }: {
    linkageRules: any[];
    localVariables: VariableOption[];
}): any[];
export declare function getVariableValuesInExpression({ action, localVariables }: {
    action: any;
    localVariables: any;
}): any[];
export declare const collectFieldStateOfLinkageRules: ({ operator, value, field, condition, variables, localVariables, variableNameOfLeftCondition, action, conditionType, }: Props, jsonLogic: any) => any; /**
 * 获取字段临时状态对象
 */
export declare function getTempFieldState(condition: boolean | Promise<boolean>, value: any): Promise<{
    condition: boolean;
    value: any;
}>;
export declare function replaceVariables(value: string, { variables, localVariables, }: {
    variables: VariablesContextType;
    localVariables: VariableOption[];
}): Promise<{
    exp?: undefined;
    scope?: undefined;
} | {
    exp: string;
    scope: {};
}>;
export {};
