/**
 * 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 { Instruction, WorkflowVariableInput } from '@nocobase/plugin-workflow/client';
import React from 'react';
declare function SQLTextArea(props: any): React.JSX.Element;
declare function UnsafeInjectionWarning(): React.JSX.Element;
export default class extends Instruction {
    title: string;
    type: string;
    group: string;
    description: string;
    icon: React.JSX.Element;
    fieldset: {
        dataSource: {
            type: string;
            required: boolean;
            title: string;
            description: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                className: string;
                filter(item: any): any;
            };
            default: string;
        };
        unsafeInjection: {
            type: string;
            'x-component': string;
        };
        sql: {
            type: string;
            required: boolean;
            title: string;
            description: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                rows: number;
                className: string;
            };
        };
        variables: {
            type: string;
            title: string;
            description: string;
            'x-decorator': string;
            'x-component': string;
            'x-reactions': {
                dependencies: string[];
                fulfill: {
                    state: {
                        visible: string;
                    };
                };
            }[];
            items: {
                type: string;
                properties: {
                    space1: {
                        type: string;
                        'x-component': string;
                        properties: {
                            name: {
                                type: string;
                                'x-decorator': string;
                                'x-component': string;
                                'x-component-props': {
                                    placeholder: string;
                                };
                                required: boolean;
                            };
                            value: {
                                type: string;
                                'x-decorator': string;
                                'x-component': string;
                                'x-component-props': {
                                    rows: number;
                                    placeholder: string;
                                };
                                required: boolean;
                            };
                            remove: {
                                type: string;
                                'x-decorator': string;
                                'x-component': string;
                            };
                        };
                    };
                };
            };
            properties: {
                add: {
                    type: string;
                    'x-component': string;
                    title: string;
                };
            };
        };
        withMeta: {
            type: string;
            'x-decorator': string;
            'x-component': string;
            'x-content': string;
        };
    };
    scope: {
        sqlDescription(): React.JSX.Element;
    };
    components: {
        SQLTextArea: typeof SQLTextArea;
        UnsafeInjectionWarning: typeof UnsafeInjectionWarning;
        WorkflowVariableInput: typeof WorkflowVariableInput;
        ArrayItems: import("@formily/react").ReactFC<React.HTMLAttributes<HTMLDivElement>> & import("@formily/antd-v5").ArrayBaseMixins & {
            Item: import("@formily/react").ReactFC<React.HTMLAttributes<HTMLDivElement> & {
                type?: "card" | "divide";
            }>;
        };
        Space: React.ForwardRefExoticComponent<import("antd").SpaceProps & React.RefAttributes<HTMLDivElement>> & {
            Compact: React.FC<import("antd/es/space/Compact").SpaceCompactProps>;
        };
    };
    useVariables({ key, title }: {
        key: any;
        title: any;
    }, { types, fieldNames }: {
        types: any;
        fieldNames?: {
            readonly label: "label";
            readonly value: "value";
            readonly children: "children";
        };
    }): {
        value: any;
        label: any;
    };
    testable: boolean;
}
export {};
