/** * 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. */ export type FlowSurfaceTemplateCompatibilityRow = { uid?: string; useModel?: string; dataSourceKey?: string; collectionName?: string; associationName?: string; }; export type FlowSurfaceTemplateResourceInfo = { dataSourceKey?: string; collectionName?: string; associationName?: string; }; export type FlowSurfaceTemplateAssociationMatchMode = 'none' | 'exact' | 'exactIfTemplateHasAssociationName' | 'associationResourceOnly'; export declare function getFlowTemplateRootUseFamily(use: any): string; export declare function areFlowTemplateRootUsesCompatible(hostUse: any, templateUse: any): boolean; export declare function getFlowTemplatePopupUseFamily(use: any): string; export declare function areFlowTemplatePopupUsesCompatible(hostUse: any, templateUse: any): boolean; export declare function buildTemplateMissingResourceReason(): string; export declare function buildTemplateDataSourceMismatchReason(expectedDataSourceKey: string, actualDataSourceKey: string): string; export declare function buildTemplateCollectionMismatchReason(expectedCollectionName: string, actualCollectionName: string): string; export declare function buildTemplateAssociationMismatchReason(expectedAssociationName?: string, actualAssociationName?: string): string; export declare function buildTemplateMissingContextReason(param: string): string; export declare function resolveAssociationTargetResourceInfo(input: FlowSurfaceTemplateResourceInfo, options: { getCollection: (dataSourceKey: string, collectionName: string) => any; }): FlowSurfaceTemplateResourceInfo; export declare function resolveTemplateResourceInfo(input: FlowSurfaceTemplateResourceInfo, options: { getCollection: (dataSourceKey: string, collectionName: string) => any; }): FlowSurfaceTemplateResourceInfo; export declare function resolveBlockTemplateExpectedResourceInfo(node: any, options: { resolveTemplateResourceInfo: (input: FlowSurfaceTemplateResourceInfo) => FlowSurfaceTemplateResourceInfo; }): FlowSurfaceTemplateResourceInfo; export declare function getTemplateResourceCompatibilityDisabledReason(template: FlowSurfaceTemplateCompatibilityRow, expected: FlowSurfaceTemplateResourceInfo, options: { associationMatch?: FlowSurfaceTemplateAssociationMatchMode; checkResource?: boolean; resolveTemplateResourceInfo: (input: FlowSurfaceTemplateResourceInfo) => FlowSurfaceTemplateResourceInfo; }): string;