import * as React from 'react';
import { TimeAxisIntervalType } from "./TimeAxisIntervalType";
import { TimeAxisInterval } from "./TimeAxisInterval";
export declare class IgrTimeAxisInterval
extends React.Component
{
protected _implementation: any;
get i(): TimeAxisInterval;
private onImplementationCreated;
constructor(props: P);
componentDidMount(): void;
shouldComponentUpdate(nextProps: any, nextState: any): boolean;
render(): any;
protected createImplementation(): TimeAxisInterval;
private _renderer;
private _provideRenderer;
static _createFromInternal(internal: any): IgrTimeAxisInterval;
/**
* The visible axis range at which to apply this interval.
*
* Use `Range` property for the visible axis range at which to apply this interval.
*/
get range(): number;
set range(v: number);
/**
* The interval, expressed as a multiple of IntervalType.
*
* Use the `Interval` property expressed as a multiple of IntervalType.
*
* ```ts
*
*
*
* ```
*
* ```ts
* this.timeXAxis = new IgrTimeXAxis({name: "timeXAxis"});
* this.timeXAxis.title = "Time X Axis";
* this.timeXAxis.dataSource = this.financialData;
* this.timeXAxis.dateTimeMemberPath = "Time";
* this.timeXAxis.intervals={2};
* ```
*/
get interval(): number;
set interval(v: number);
/**
* The unit of time for this interval.
*
* The `IntervalType` is the unit of time for this interval.
*/
get intervalType(): TimeAxisIntervalType;
set intervalType(v: TimeAxisIntervalType);
findByName(name: string): any;
protected __p: string;
protected _hasUserValues: Set;
protected get hasUserValues(): Set;
protected __m(propertyName: string): void;
protected _stylingContainer: any;
protected _stylingParent: any;
protected _inStyling: boolean;
protected _styling(container: any, component: any, parent?: any): void;
}
export interface IIgrTimeAxisIntervalProps {
/**
* The visible axis range at which to apply this interval.
*
* Use `Range` property for the visible axis range at which to apply this interval.
*/
range?: number | string;
/**
* The interval, expressed as a multiple of IntervalType.
*
* Use the `Interval` property expressed as a multiple of IntervalType.
*
* ```ts
*
*
*
* ```
*
* ```ts
* this.timeXAxis = new IgrTimeXAxis({name: "timeXAxis"});
* this.timeXAxis.title = "Time X Axis";
* this.timeXAxis.dataSource = this.financialData;
* this.timeXAxis.dateTimeMemberPath = "Time";
* this.timeXAxis.intervals={2};
* ```
*/
interval?: number | string;
/**
* The unit of time for this interval.
*
* The `IntervalType` is the unit of time for this interval.
*/
intervalType?: TimeAxisIntervalType | string;
}