import AnalyticsAbstractFilter from './AnalyticsAbstractFilter';
import AnalyticsAttribute from './AnalyticsAttribute';
import AnalyticsInterval from './AnalyticsInterval';
import AnalyticsOrderByEntry from './AnalyticsOrderByEntry';
import AnalyticsQueryTimeframe from './AnalyticsQueryTimeframe';
/**
 * @export
 * @class AnalyticsQueryRequest
 */
export declare class AnalyticsQueryRequest extends AnalyticsQueryTimeframe {
    /**
     * Analytics license key (required)
     * @type {string}
     * @memberof AnalyticsQueryRequest
     */
    licenseKey?: string;
    /**
     * Analytics Query Filters  Each filter requires 3 properties: name, operator and value.   Valid operators are [IN, EQ, NE, LT, LTE, GT, GTE, CONTAINS, NOTCONTAINS]
     * @type {AnalyticsAbstractFilter[]}
     * @memberof AnalyticsQueryRequest
     */
    filters?: AnalyticsAbstractFilter[];
    /**
     * @type {AnalyticsOrderByEntry[]}
     * @memberof AnalyticsQueryRequest
     */
    orderBy?: AnalyticsOrderByEntry[];
    /**
     * @type {AnalyticsAttribute}
     * @memberof AnalyticsQueryRequest
     */
    dimension?: AnalyticsAttribute;
    /**
     * @type {AnalyticsInterval}
     * @memberof AnalyticsQueryRequest
     */
    interval?: AnalyticsInterval;
    /**
     * @type {AnalyticsAttribute[]}
     * @memberof AnalyticsQueryRequest
     */
    groupBy?: AnalyticsAttribute[];
    /**
     * Whether context data should be included in the response
     * @type {boolean}
     * @memberof AnalyticsQueryRequest
     */
    includeContext?: boolean;
    /**
     * Maximum number of rows returned (max. 200)
     * @type {number}
     * @memberof AnalyticsQueryRequest
     */
    limit?: number;
    /**
     * Offset of data
     * @type {number}
     * @memberof AnalyticsQueryRequest
     */
    offset?: number;
    constructor(obj?: Partial<AnalyticsQueryRequest>);
}
export default AnalyticsQueryRequest;
