import { DomWrapper, DomRenderer, Base, Type, INotifyPropertyChanged, PropertyChangedEventArgs, NormalizedEvent } from "igniteui-react-core/ES5/type";
import { Dictionary$2 } from "igniteui-react-core/ES5/Dictionary$2";
import { RenderingContext } from "igniteui-react-core/ES5/RenderingContext";
import { ContentControl } from "igniteui-react-core/ES5/ContentControl";
import { ILegendContext } from "igniteui-react-core/ES5/ILegendContext";
import { Size } from "igniteui-react-core/ES5/Size";
import { Polygon } from "igniteui-react-core/ES5/Polygon";
import { GradientData } from "./GradientData";
import { Rect } from "igniteui-react-core/ES5/Rect";
import { List$1 } from "igniteui-react-core/ES5/List$1";
import { IChartLegend } from "igniteui-react-core/ES5/IChartLegend";
import { ObservableCollection$1 } from "igniteui-react-core/ES5/ObservableCollection$1";
import { UIElement } from "igniteui-react-core/ES5/UIElement";
import { ILegendOwner } from "igniteui-react-core/ES5/ILegendOwner";
import { ILegendSeries } from "igniteui-react-core/ES5/ILegendSeries";
import { PropertyUpdatedEventArgs } from "igniteui-react-core/ES5/PropertyUpdatedEventArgs";
import { LegendMouseButtonEventArgs } from "./LegendMouseButtonEventArgs";
import { LegendMouseEventArgs } from "./LegendMouseEventArgs";
import { LegendVisualData } from "./LegendVisualData";
export declare class LegendBaseViewManager extends Base {
    private a;
    constructor(a: LegendBaseView);
    private g;
    private p();
    s(a: any): void;
    protected j(): DomWrapper;
    protected l: DomWrapper;
    h: DomRenderer;
    protected d: boolean;
    protected i(): DomWrapper;
    protected k(a: any, b: DomWrapper): DomWrapper;
    protected f: Dictionary$2<any, DomWrapper>;
    o(a: any, b: number): void;
    u(a: number): void;
    v(a: any): void;
    n(visual_: any): any;
    e(a: ILegendContext): boolean;
    protected m: DomWrapper;
    protected c: RenderingContext;
    b(a: any): RenderingContext;
    z(): Size;
    w(a: RenderingContext, b: Polygon, c: GradientData, d: Rect): void;
    q(): void;
    r(): void;
    t(a: boolean): void;
    x(a: string): void;
    y(a: string): void;
    static $t: Type;
}
export declare abstract class LegendBase extends ContentControl implements INotifyPropertyChanged, IChartLegend {
    aj(): LegendBaseView;
    a5(a: LegendBaseView): void;
    ak: LegendBaseView;
    constructor();
    addChildInOrder(a: UIElement, b: ILegendSeries): void;
    az(a: List$1<UIElement>, b: ILegendSeries): void;
    at: ObservableCollection$1<UIElement>;
    private _seriesOwner;
    seriesOwner: ILegendOwner;
    private _chartOwner;
    chartOwner: ILegendOwner;
    protected get_isItemwise(): boolean;
    readonly isItemwise: boolean;
    protected get_isScale(): boolean;
    readonly isScale: boolean;
    clearLegendItemsForSeries(a: ILegendSeries): void;
    containsChild(a: UIElement): boolean;
    removeChild(a: UIElement): void;
    readonly ai: ILegendOwner;
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
    propertyUpdated: (sender: any, e: PropertyUpdatedEventArgs) => void;
    protected a7(a: string, b: any, c: any): void;
    legendItemMouseLeftButtonDown: (sender: any, e: LegendMouseButtonEventArgs) => void;
    a2(a: LegendMouseButtonEventArgs): void;
    legendItemMouseLeftButtonUp: (sender: any, e: LegendMouseButtonEventArgs) => void;
    a3(a: LegendMouseButtonEventArgs): void;
    legendItemMouseEnter: (sender: any, e: LegendMouseEventArgs) => void;
    a0(a: LegendMouseEventArgs): void;
    legendItemMouseLeave: (sender: any, e: LegendMouseEventArgs) => void;
    a1(a: LegendMouseEventArgs): void;
    legendItemMouseMove: (sender: any, e: LegendMouseEventArgs) => void;
    a4(a: LegendMouseEventArgs): void;
    provideContainer(a: any): void;
    av: string;
    aw: string;
    au: string;
    ax: string;
    ar(): LegendVisualData;
    static $t: Type;
}
export declare class LegendBaseView extends Base {
    constructor(a: LegendBase);
    b: LegendBaseViewManager;
    a: LegendBase;
    ad(): void;
    protected get_f(): boolean;
    readonly f: boolean;
    protected c(a: any): LegendMouseButtonEventArgs;
    protected d(a: any): LegendMouseEventArgs;
    v(a: any, b: ILegendOwner, c: ILegendSeries, d: any): {
        p1: ILegendOwner;
        p2: ILegendSeries;
        p3: any;
    };
    u(): void;
    i(): boolean;
    t(a: UIElement): void;
    af(a: UIElement): void;
    ac(a: any): void;
    ag(a: any): void;
    s(a: any): void;
    aa(): void;
    ab(): void;
    n: string;
    o: string;
    m: string;
    p: string;
    private h;
    private e;
    g: boolean;
    private k;
    q: string;
    private l;
    r: string;
    ae(): void;
    private j(e_);
    y(a: NormalizedEvent): void;
    x(a: NormalizedEvent): void;
    w(a: NormalizedEvent): void;
    z(a: NormalizedEvent): void;
    static $t: Type;
}
