/**
 * 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 { GeneralField } from '@formily/core';
import React from 'react';
import { useSourceId } from '../modules/blocks/useSourceId';
/**
 * @deprecated
 */
export declare const BlockResourceContext: React.Context<any>;
export declare const BlockAssociationContext: React.Context<any>;
/**
 * @deprecated
 */
export declare const BlockRequestContext_deprecated: React.Context<{
    block?: string;
    props?: any;
    field?: GeneralField;
    service?: any;
    resource?: any;
    __parent?: any;
    updateAssociationValues?: any[];
}>;
/**
 * @deprecated
 * use `useDataBlockResource` instead
 * @returns
 */
export declare const useBlockResource: () => any;
/**
 * @internal
 * @param props
 * @returns
 */
export declare const MaybeCollectionProvider: (props: any) => any;
/**
 * @deprecated
 * use `DataBlockRequestProvider` instead
 * @param props
 * @returns
 */
export declare const BlockRequestProvider_deprecated: (props: any) => React.JSX.Element;
/**
 * @deprecated
 * use `useDataBlockRequest` instead
 */
export declare const useBlockRequestContext: () => {
    block?: string;
    props?: any;
    field?: GeneralField;
    service?: any;
    resource?: any;
    __parent?: any;
    updateAssociationValues?: any[];
};
/**
 * @deprecated
 * 废弃组件，不建议使用
 */
export declare const RenderChildrenWithAssociationFilter: React.FC<any>;
/**
 * @internal
 */
export declare const BlockContext: React.Context<{
    /** 用以区分区块的标识 */
    name: string;
}>;
/**
 * @internal
 * @returns
 */
export declare const useBlockContext: () => {
    /** 用以区分区块的标识 */
    name: string;
};
/**
 * @deprecated
 * use `DataBlockProvider` instead
 */
export declare const BlockProvider: (props: {
    name: string;
    resource: any;
    collection?: any;
    association?: any;
    dataSource?: string;
    params?: any;
    children?: any;
    parentRecord?: any;
    /** @deprecated */
    useSourceId?: any;
    /** @deprecated */
    useParams?: any;
}) => React.JSX.Element;
/**
 * @deprecated
 * use `useDataBlockProps` instead
 * @returns
 */
export declare const useBlockAssociationContext: () => any;
export declare const getFilterByTkByCollection: (collection: any, recordData: Record<string, any>) => any;
export declare const useFilterByTk: (blockProps?: any) => any;
/**
 * @deprecated
 */
export declare const useSourceIdFromRecord: () => any;
/**
 * @deprecated
 * use `useSourceId` instead
 */
export declare const useSourceIdFromParentRecord: () => any;
/**
 * @internal
 * @returns
 */
export declare const useParamsFromRecord: (props?: any) => {
    filterByTk: any;
};
export declare const RecordLink: (props: any) => React.JSX.Element;
