import { z } from 'zod';
export declare const handlePositionSchema: z.ZodEnum<{
    top: "top";
    right: "right";
    bottom: "bottom";
    left: "left";
}>;
export declare const handleBoundarySchema: z.ZodEnum<{
    outer: "outer";
    inner: "inner";
}>;
export declare const handleTypeSchema: z.ZodEnum<{
    target: "target";
    source: "source";
}>;
export declare const handleTypeDisplaySchema: z.ZodEnum<{
    input: "input";
    output: "output";
    artifact: "artifact";
}>;
export declare const handleLabelVisibilitySchema: z.ZodEnum<{
    always: "always";
    hover: "hover";
}>;
export declare const handleConfigurationSpecificPositionSchema: z.ZodObject<{
    height: z.ZodOptional<z.ZodNumber>;
    width: z.ZodOptional<z.ZodNumber>;
    top: z.ZodOptional<z.ZodNumber>;
    bottom: z.ZodOptional<z.ZodNumber>;
    left: z.ZodOptional<z.ZodNumber>;
    right: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export declare const handleManifestSchema: z.ZodObject<{
    id: z.ZodString;
    type: z.ZodEnum<{
        target: "target";
        source: "source";
    }>;
    handleType: z.ZodEnum<{
        input: "input";
        output: "output";
        artifact: "artifact";
    }>;
    label: z.ZodOptional<z.ZodString>;
    visible: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
    repeat: z.ZodOptional<z.ZodString>;
    itemVar: z.ZodOptional<z.ZodString>;
    indexVar: z.ZodOptional<z.ZodString>;
    showButton: z.ZodOptional<z.ZodBoolean>;
    labelVisibility: z.ZodOptional<z.ZodEnum<{
        always: "always";
        hover: "hover";
    }>>;
    constraints: z.ZodOptional<z.ZodObject<{
        maxConnections: z.ZodOptional<z.ZodNumber>;
        minConnections: z.ZodOptional<z.ZodNumber>;
        allowedTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
            nodeType: z.ZodString;
            handleId: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        forbiddenTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
            nodeType: z.ZodString;
            handleId: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        allowedSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
            nodeType: z.ZodString;
            handleId: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        forbiddenSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
            nodeType: z.ZodString;
            handleId: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        allowedTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
        forbiddenTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
        allowedSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
        forbiddenSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
        customValidation: z.ZodOptional<z.ZodString>;
        validationMessage: z.ZodOptional<z.ZodString>;
        severity: z.ZodOptional<z.ZodEnum<{
            info: "info";
            warning: "warning";
            error: "error";
            critical: "critical";
        }>>;
    }, z.core.$strip>>;
    isDefaultForType: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export declare const handleGroupManifestSchema: z.ZodObject<{
    position: z.ZodEnum<{
        top: "top";
        right: "right";
        bottom: "bottom";
        left: "left";
    }>;
    boundary: z.ZodOptional<z.ZodEnum<{
        outer: "outer";
        inner: "inner";
    }>>;
    customPositionAndOffsets: z.ZodOptional<z.ZodObject<{
        height: z.ZodOptional<z.ZodNumber>;
        width: z.ZodOptional<z.ZodNumber>;
        top: z.ZodOptional<z.ZodNumber>;
        bottom: z.ZodOptional<z.ZodNumber>;
        left: z.ZodOptional<z.ZodNumber>;
        right: z.ZodOptional<z.ZodNumber>;
    }, z.core.$strip>>;
    handles: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodEnum<{
            target: "target";
            source: "source";
        }>;
        handleType: z.ZodEnum<{
            input: "input";
            output: "output";
            artifact: "artifact";
        }>;
        label: z.ZodOptional<z.ZodString>;
        visible: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
        repeat: z.ZodOptional<z.ZodString>;
        itemVar: z.ZodOptional<z.ZodString>;
        indexVar: z.ZodOptional<z.ZodString>;
        showButton: z.ZodOptional<z.ZodBoolean>;
        labelVisibility: z.ZodOptional<z.ZodEnum<{
            always: "always";
            hover: "hover";
        }>>;
        constraints: z.ZodOptional<z.ZodObject<{
            maxConnections: z.ZodOptional<z.ZodNumber>;
            minConnections: z.ZodOptional<z.ZodNumber>;
            allowedTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            forbiddenTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            allowedSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            forbiddenSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            allowedTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            forbiddenTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            allowedSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            forbiddenSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            customValidation: z.ZodOptional<z.ZodString>;
            validationMessage: z.ZodOptional<z.ZodString>;
            severity: z.ZodOptional<z.ZodEnum<{
                info: "info";
                warning: "warning";
                error: "error";
                critical: "critical";
            }>>;
        }, z.core.$strip>>;
        isDefaultForType: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    visible: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export declare const handleGroupOverrideSchema: z.ZodObject<{
    position: z.ZodEnum<{
        top: "top";
        right: "right";
        bottom: "bottom";
        left: "left";
    }>;
    handles: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodEnum<{
            target: "target";
            source: "source";
        }>;
        handleType: z.ZodEnum<{
            input: "input";
            output: "output";
            artifact: "artifact";
        }>;
        label: z.ZodOptional<z.ZodString>;
        visible: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>;
        repeat: z.ZodOptional<z.ZodString>;
        itemVar: z.ZodOptional<z.ZodString>;
        indexVar: z.ZodOptional<z.ZodString>;
        showButton: z.ZodOptional<z.ZodBoolean>;
        labelVisibility: z.ZodOptional<z.ZodEnum<{
            always: "always";
            hover: "hover";
        }>>;
        constraints: z.ZodOptional<z.ZodObject<{
            maxConnections: z.ZodOptional<z.ZodNumber>;
            minConnections: z.ZodOptional<z.ZodNumber>;
            allowedTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            forbiddenTargets: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            allowedSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            forbiddenSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
                nodeType: z.ZodString;
                handleId: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            allowedTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            forbiddenTargetCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            allowedSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            forbiddenSourceCategories: z.ZodOptional<z.ZodArray<z.ZodString>>;
            customValidation: z.ZodOptional<z.ZodString>;
            validationMessage: z.ZodOptional<z.ZodString>;
            severity: z.ZodOptional<z.ZodEnum<{
                info: "info";
                warning: "warning";
                error: "error";
                critical: "critical";
            }>>;
        }, z.core.$strip>>;
        isDefaultForType: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    visible: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type HandlePosition = z.infer<typeof handlePositionSchema>;
export type HandleBoundary = z.infer<typeof handleBoundarySchema>;
export type HandleType = z.infer<typeof handleTypeSchema>;
export type HandleCategory = z.infer<typeof handleTypeDisplaySchema>;
export type HandleLabelVisibility = z.infer<typeof handleLabelVisibilitySchema>;
export type HandleManifest = z.infer<typeof handleManifestSchema>;
export type HandleGroupManifest = z.infer<typeof handleGroupManifestSchema>;
export type HandleGroupOverride = z.infer<typeof handleGroupOverrideSchema>;
export type HandleConfigurationSpecificPosition = z.infer<typeof handleConfigurationSpecificPositionSchema>;
//# sourceMappingURL=handle.d.ts.map