import { SchemaInitializerItemType } from '@tachybase/client';
import { RadioWithTooltip, Trigger, UseVariableOptions, useWorkflowAnyExecuted } from '@tachybase/module-workflow/client';
export declare class ApprovalTrigger extends Trigger {
    sync: boolean;
    title: string;
    description: string;
    components: {
        ConfigButton: (props: any) => import("react/jsx-runtime").JSX.Element;
        ViewApplyFormWrapper: () => import("react/jsx-runtime").JSX.Element;
        RadioWithTooltip: typeof RadioWithTooltip;
    };
    scope: {
        useWorkflowAnyExecuted: typeof useWorkflowAnyExecuted;
    };
    fieldset: {
        collection: {
            type: string;
            title: string;
            required: boolean;
            'x-decorator': string;
            'x-component': string;
            'x-disabled': string;
        };
        centralized: {
            type: string;
            title: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                direction: string;
                options: {
                    label: string;
                    value: boolean;
                    tooltip: string;
                }[];
            };
            default: boolean;
        };
        withdrawable: {
            type: string;
            'x-decorator': string;
            'x-component': string;
            'x-content': string;
            description: string;
        };
        applyForm: {
            type: string;
            title: string;
            description: string;
            'x-decorator': string;
            'x-component': string;
            'x-reactions': {
                dependencies: string[];
                fulfill: {
                    state: {
                        visible: string;
                    };
                };
            }[];
            properties: {
                applyForm: {
                    type: string;
                    'x-component': string;
                    default: any;
                };
            };
        };
        appends: {
            type: string;
            title: string;
            description: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                title: string;
                multiple: boolean;
                useCollection(): any;
            };
            'x-reactions': {
                dependencies: string[];
                fulfill: {
                    state: {
                        visible: string;
                    };
                };
            }[];
        };
        summary: {
            type: string;
            title: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                title: string;
                multiple: boolean;
                needLeaf: boolean;
                useCollection(): any;
            };
            'x-reactions': {
                dependencies: string[];
                fulfill: {
                    state: {
                        visible: string;
                    };
                };
            }[];
        };
    };
    isActionTriggerable: (config: any, context: {
        action: string;
        direct: any;
    }) => boolean;
    useVariables(config: {
        collection: any;
        appends: any[];
        summary: any[];
    }, options: UseVariableOptions): import("@tachybase/module-workflow/client").VariableOption[];
    useInitializers(config: {
        collection: any;
    }): SchemaInitializerItemType | null;
}
