import { CSSProperties, ReactElement, PureComponent } from 'react';
import { DraggableProps } from 'react-beautiful-dnd';
import { CommonProps, Omit } from '../common';
declare const spacingToClassNameMap: {
    none: any;
    s: string;
    m: string;
    l: string;
};
export declare const SPACING: ("none" | "s" | "m" | "l")[];
export declare type SoftDraggableSpacing = keyof typeof spacingToClassNameMap;
export interface SoftDraggableProps extends CommonProps, Omit<DraggableProps, 'children'> {
    children: ReactElement | DraggableProps['children'];
    className?: string;
    /**
     * Whether the `children` will provide and set up its own drag handle
     */
    customDragHandle?: boolean;
    /**
     * Whether the item is currently in a position to be removed
     */
    isRemovable?: boolean;
    /**
     * Adds padding to the draggable item
     */
    spacing?: SoftDraggableSpacing;
    style?: CSSProperties;
}
export declare class SoftDraggable extends PureComponent<{
    customDragHandle?: boolean;
    draggableId?: any;
    isDragDisabled?: boolean;
    isRemovable?: boolean;
    index?: any;
    children?: any;
    className?: any;
    spacing?: string;
    style?: any;
}> {
    static defaultProps: {
        customDragHandle: boolean;
        isDragDisabled: boolean;
        isRemovable: boolean;
        spacing: string;
    };
    render(): JSX.Element;
}
export {};
