import type { DragItem, NodeItem } from './shared';
import { NewLayerPosition } from './shared';
interface LayerProps {
    /** Layer id */
    id: string;
    /** Whether the layer is the first one */
    isFirst: boolean;
    /** Whether the layer is the only one */
    isOnly: boolean;
    /** Custom tier label */
    label?: string;
    /** Optional node text size in pixels */
    nodeFontSize?: number;
    /** Optional node size in pixels */
    nodeSize?: number;
    /** Nodes within the layer */
    nodes: NodeItem[];
    /** Layer number */
    number: number;
    /** Handler called when a node is added to this layer */
    onAddLayer: (reference: string, position: NewLayerPosition) => void;
    /** Handler called when this layer should be deleted  */
    onDeleteLayer: () => void | Promise<void>;
    /** Handler called upon dropping a node on this layer */
    onDrop: (item: DragItem) => void | Promise<void>;
    /** Handler called when a tier label is updated */
    onUpdateLabel: (id: string, label: string) => void;
    /** Don't allow edits to be made */
    viewOnly?: boolean;
    /** Optional whether to wrap text within nodes */
    wrapNodeText?: boolean;
}
declare const _default: import("react").ForwardRefExoticComponent<LayerProps & import("react").RefAttributes<HTMLDivElement>>;
export default _default;
//# sourceMappingURL=layer.d.ts.map