import type { NodeShape } from '../../schema';
import type { ExecutionState } from '../../types/execution';
import type { ValidationState } from '../../types/validation';
export type FooterVariant = 'none' | 'button' | 'single' | 'double';
export interface BaseNodeData extends Record<string, unknown> {
    display?: {
        label?: string;
        canvasLabel?: string;
        subLabel?: string;
        shape?: NodeShape;
        color?: string;
        background?: string;
        icon?: string;
        iconBackground?: string;
        iconBackgroundDark?: string;
        iconColor?: string;
    };
    useSmartHandles?: boolean;
    isCollapsed?: boolean;
    loading?: boolean;
}
export interface NodeAdornments {
    topLeft?: React.ReactNode;
    topRight?: React.ReactNode;
    bottomLeft?: React.ReactNode;
    bottomRight?: React.ReactNode;
}
export interface NodeStatusContext {
    nodeId: string;
    executionState?: ExecutionState;
    validationState?: ValidationState;
    isHovered?: boolean;
    isConnecting?: boolean;
    isSelected?: boolean;
    isDragging?: boolean;
}
//# sourceMappingURL=BaseNode.types.d.ts.map