/// <reference types="react" />
import * as React from 'react';
import { DndComponentClass } from './interfaces';
export interface DecorateHandlerArgs<P, ComponentClass extends React.ComponentClass<P>, ItemIdType> {
    DecoratedComponent: ComponentClass;
    createHandler: any;
    createMonitor: any;
    createConnector: any;
    registerHandler: any;
    containerDisplayName: string;
    getType: (props: P) => ItemIdType;
    collect: any;
    options: any;
}
export default function decorateHandler<P, S, TargetComponent extends React.Component<P, S> | React.StatelessComponent<P>, TargetClass extends React.ComponentClass<P>, ItemIdType>({DecoratedComponent, createHandler, createMonitor, createConnector, registerHandler, containerDisplayName, getType, collect, options}: DecorateHandlerArgs<P, TargetClass, ItemIdType>): TargetClass & DndComponentClass<P, TargetComponent, TargetClass>;
