import * as IStyle from './IStyle';
declare type func = () => void;
declare type itemTplFunc = (value: any, color: any, checked: any, index: any) => string;
declare type formatterFunc = (val: number) => string | number;
declare type eventFunc = (ev: any, chart: any) => void;
export interface ILegend {
    dataKey?: string;
    show?: boolean;
    position?: string;
    title?: null | object;
    custom?: boolean;
    offset?: number | number[];
    offsetX?: number;
    offsetY?: number;
    items?: object[];
    itemGap?: number;
    titleGap?: number;
    itemMarginBottom?: number;
    itemsGroup?: object[];
    layout?: string;
    allowAllCanceled?: boolean;
    backPadding?: number[];
    itemWidth?: number;
    unCheckColor?: string;
    background?: object;
    itemFormatter?: formatterFunc;
    marker?: string | func;
    textStyle?: IStyle.ITextStyle;
    checkable?: boolean;
    clickable?: boolean;
    hoverable?: boolean;
    useHtml?: boolean;
    autoWrap?: boolean;
    autoPosition?: boolean;
    container?: any;
    containerTpl?: string;
    itemTpl?: string | itemTplFunc;
    selectedMode?: string;
    reversed?: boolean;
    slidable?: boolean;
    width?: number;
    height?: number;
    legendMarker?: any;
    legendListItem?: any;
    legendTitle?: any;
    legendList?: any;
    legendStyle?: any;
    attachLast?: boolean;
    flipPage?: boolean;
    name?: boolean;
    reactive?: boolean;
    sizeType?: string;
    isSegment?: boolean;
    onHover?: eventFunc;
    onClick?: eventFunc;
    onTitleMouseDown?: eventFunc;
    onTitleMouseMove?: eventFunc;
    onTitleMouseLeave?: eventFunc;
    onTitleMouseUp?: eventFunc;
    onTitleClick?: eventFunc;
    onTitleDblClick?: eventFunc;
    onTitleTouchStart?: eventFunc;
    onTitleTouchMove?: eventFunc;
    onTitleTouchEnd?: eventFunc;
    onItemMouseDown?: eventFunc;
    onItemMouseMove?: eventFunc;
    onItemMouseLeave?: eventFunc;
    onItemMouseUp?: eventFunc;
    onItemClick?: eventFunc;
    onItemDblClick?: eventFunc;
    onItemTouchStart?: eventFunc;
    onItemTouchMove?: eventFunc;
    onItemTouchEnd?: eventFunc;
    onMarkerMouseDown?: eventFunc;
    onMarkerMouseMove?: eventFunc;
    onMarkerMouseLeave?: eventFunc;
    onMarkerMouseUp?: eventFunc;
    onMarkerClick?: eventFunc;
    onMarkerDblClick?: eventFunc;
    onMarkerTouchStart?: eventFunc;
    onMarkerTouchMove?: eventFunc;
    onMarkerTouchEnd?: eventFunc;
    onTextMouseDown?: eventFunc;
    onTextMouseMove?: eventFunc;
    onTextMouseLeave?: eventFunc;
    onTextMouseUp?: eventFunc;
    onTextClick?: eventFunc;
    onTextDblClick?: eventFunc;
    onTextTouchStart?: eventFunc;
    onTextTouchMove?: eventFunc;
    onTextTouchEnd?: eventFunc;
}
declare type ILegendConfig = boolean | ILegend;
export default ILegendConfig;
