import { useCollectionDataSource } from '@tachybase/client';
import { CheckboxGroupWithTooltip, CollectionBlockInitializer, RadioWithTooltip } from '../../components';
import { Trigger } from '../../triggers';
declare enum ACTION_TYPES {
    CREATE = "create",
    UPDATE = "update",
    UPSERT = "updateOrCreate",
    DESTROY = "destroy"
}
export declare class WorkflowTriggerInterceptor extends Trigger {
    sync: boolean;
    title: string;
    description: string;
    fieldset: {
        collection: {
            type: string;
            title: string;
            required: boolean;
            'x-decorator': string;
            'x-component': string;
            'x-reactions': {
                target: string;
                effects: string[];
                fulfill: {
                    state: {
                        value: any[];
                    };
                };
            }[];
        };
        global: {
            type: string;
            title: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                direction: string;
                options: {
                    label: string;
                    value: boolean;
                }[];
            };
            default: boolean;
        };
        actions: {
            type: string;
            title: string;
            'x-decorator': string;
            'x-component': string;
            'x-component-props': {
                direction: string;
                options: {
                    label: string;
                    value: ACTION_TYPES;
                }[];
            };
            required: boolean;
            'x-reactions': {
                dependencies: string[];
                fulfill: {
                    state: {
                        visible: string;
                    };
                };
            }[];
        };
    };
    scope: {
        useCollectionDataSource: typeof useCollectionDataSource;
    };
    components: {
        FieldsSelect: import("react").MemoExoticComponent<import("@tachybase/schema").ReactFC<Omit<any, "ref">>>;
        RadioWithTooltip: typeof RadioWithTooltip;
        CheckboxGroupWithTooltip: typeof CheckboxGroupWithTooltip;
    };
    isActionTriggerable: (config: any, context: any) => boolean;
    useVariables(config: any, options: any): (import("../..").VariableOption | {
        label: string;
        value: string;
        children: ({
            label: string;
            value: string;
            children?: undefined;
        } | {
            label: string;
            value: string;
            children: import("../..").VariableOption[];
        })[];
    })[];
    useInitializers(item: any): {
        name: string;
        type: string;
        key: string;
        title: string;
        Component: typeof CollectionBlockInitializer;
        collection: any;
        dataPath: string;
    };
}
export {};
