import { TimeAxisBase } from "./TimeAxisBase";
import { ITimeRangeSelectorAxis } from "./ITimeRangeSelectorAxis";
import { TimeAxisBreakCollection } from "./TimeAxisBreakCollection";
import { TimeAxisLabellingMode } from "./TimeAxisLabellingMode";
import { Axis } from "./Axis";
import { TimeAxisLabelFormatCollection } from "./TimeAxisLabelFormatCollection";
import { TimeAxisIntervalCollection } from "./TimeAxisIntervalCollection";
import { Type, IList$1, EventArgs } from "igniteui-angular-core";
import { TimeAxisLabelFormat } from "./TimeAxisLabelFormat";
import { ScalerParams } from "./ScalerParams";
import { Rect } from "igniteui-angular-core";
import { CultureInfo } from "igniteui-angular-core";
import { TimeRepetitionLevel } from "./TimeRepetitionLevel";
/**
 * @hidden
 */
export declare class TimeXAxis extends TimeAxisBase implements ITimeRangeSelectorAxis {
    static $t: Type;
    constructor();
    al(): Axis;
    kw(a: Axis): void;
    kz(a: Axis, b: string): void;
    protected get_dw(): boolean;
    gc(a: number, b: ScalerParams): number;
    private ts;
    lb(a: IList$1<number>, b: number, c: number, d: ScalerParams): void;
    protected startCursor(): void;
    protected resetCursor(): void;
    private tu;
    gf(a: number, b: ScalerParams): number;
    private tt;
    private s3;
    get breaks(): TimeAxisBreakCollection;
    private td;
    get te(): TimeAxisLabellingMode;
    set te(a: TimeAxisLabellingMode);
    private tb;
    get labelFormats(): TimeAxisLabelFormatCollection;
    protected lk(a: any, b: string, c: any, d: any): void;
    protected mo(a: Rect, b: Rect): void;
    protected mn(a: Rect, b: Rect): void;
    ek(): boolean;
    private _omission;
    private get omission();
    private set omission(value);
    private ue;
    private s1;
    private th;
    private tn;
    private ud;
    jh(a: number): string;
    h2(a: any): any;
    static ty(a: Date, b: boolean, c: Date, d: TimeAxisLabellingMode, e: number, f: IList$1<TimeAxisLabelFormat>, g: CultureInfo): any;
    private static tx;
    static ta(a: number, b: IList$1<TimeAxisLabelFormat>, c: CultureInfo): TimeAxisLabelFormat;
    static t3(a: Date, b: boolean, c: Date, d: TimeAxisLabellingMode, e: number, f: IList$1<TimeAxisLabelFormat>, g: CultureInfo): string;
    private static tf;
    protected get_ry(): boolean;
    protected set_ry(a: boolean): void;
    private s8;
    get intervals(): TimeAxisIntervalCollection;
    private t1;
    static t2(a: number, b: TimeRepetitionLevel, c: TimeAxisLabellingMode): string;
    private static s0;
    private static s2;
    private s6;
    private s7;
    private tz;
    protected l9(a: boolean): void;
    private tg;
    private ti;
    private uc;
    private tm;
    get visibleMinimum(): Date;
    set visibleMinimum(a: Date);
    private tk;
    get tp(): Date;
    set tp(a: Date);
    private tj;
    get to(): Date;
    set to(a: Date);
    private tl;
    private s5;
    get visibleMaximum(): Date;
    set visibleMaximum(a: Date);
    protected sv(): void;
    qf(a: Rect, b: Rect, c: Rect, d: number, e: number): number;
    i$f(a: number): number;
    private tv;
    private tw;
    private uf;
    private uh;
    private ug;
    protected get_dj(): boolean;
    getWindowRectForSelection(a: Date, b: Date): Rect;
    getCategorySize(a: Rect, b: Rect, c: Rect): number;
    private ua;
    static t9(a: (arg1: number) => Date, b: number): number;
    private t8;
    protected sr(): void;
    static t5(a: number): string;
    itemLabelFormat(): string;
    visibleRangeChanged: (sender: any, e: EventArgs) => void;
    protected sd(a: Rect, b: Rect, c: Rect, d: Rect): number;
    protected sg(a: Rect, b: Rect, c: Rect, d: Rect): number;
    get isVertical(): boolean;
    j$d(a: number, b: ScalerParams): number;
    j$c(a: number, b: ScalerParams): number;
    j$e(a: IList$1<number[]>, b: IList$1<number>, c: number, d: number, e: ScalerParams): void;
    j$f(a: IList$1<number>, b: number, c: number, d: ScalerParams): void;
    j$g(a: IList$1<number>, b: number, c: number, d: ScalerParams): void;
    get j$b(): boolean;
    j$a(): number[];
    get i$a(): boolean;
}
