/**
 * 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 type { SharedAddNodeAnchor } from './AddNodeContext.shared';
type WorkflowCapabilityContext = SharedAddNodeAnchor & {
    engine: {
        isWorkflowSync(workflow: unknown): boolean;
    };
    workflow?: unknown;
    syncOnly?: boolean;
};
type Translate = (key: string, options?: Record<string, unknown>) => string;
type AvailableInstruction = {
    async?: boolean;
    isAvailable?(ctx: Omit<WorkflowCapabilityContext, 'branchContext'>): boolean;
};
export declare function getInstructionUnavailableMessage(instruction: AvailableInstruction, ctx: WorkflowCapabilityContext, t: Translate): string;
export declare function getInstructionAvailable(instruction: AvailableInstruction, ctx: WorkflowCapabilityContext & {
    t: Translate;
}): string;
export {};
