import { JoinConfig, LabelGroupingConfig, TimeInstantQuery, TimeSeriesInstant, TimeSeriesQueryResultType, ValueFilter } from '../../query-model'; import { BinaryOperator } from '../binary-operator'; import { BinaryOperationQueryContent, BinaryOperationWithConstOperandQueryContent } from '../query-content'; import { TimeSeriesQueryBase } from './time-series-query.base'; /** * This class contains the implementation of all methods defined by the `TimeInstantQuery` interface. * * It does not contain implementations for the two abstract factory methods for new queries defined * in `TimeSeriesQueryBase`, because that would create a circular dependency between this file and the one * containing the `TimeRangeQuery` implementation. The classes implementing these methods are contained * in a single file (time-series-queries.impl.ts`). */ export declare abstract class TimeInstantQueryBase extends TimeSeriesQueryBase> implements TimeInstantQuery { readonly resultType: TimeSeriesQueryResultType.Instant; abs(): TimeInstantQuery; add(addend: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; subtract(subtrahend: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; multiplyBy(factor: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; divideBy(divisor: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; modulo(divisor: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; pow(exponent: T | TimeInstantQuery, joinConfig?: JoinConfig): TimeInstantQuery; union(other: TimeInstantQuery): TimeInstantQuery; intersect(other: TimeInstantQuery): TimeInstantQuery; complementOf(other: TimeInstantQuery): TimeInstantQuery; sumByGroup(groupingConfig?: LabelGroupingConfig): TimeInstantQuery; averageByGroup(groupingConfig?: LabelGroupingConfig): TimeInstantQuery; minByGroup(groupingConfig?: LabelGroupingConfig): TimeInstantQuery; maxByGroup(groupingConfig?: LabelGroupingConfig): TimeInstantQuery; countByGroup(groupingConfig?: LabelGroupingConfig): TimeInstantQuery; filterOnValue(predicate: ValueFilter): TimeInstantQuery; histogramQuantile(quantile: number): TimeInstantQuery; protected createBinaryOperationQueryContent(operator: BinaryOperator, rightOperand: T | TimeInstantQuery, joinConfig?: JoinConfig): BinaryOperationQueryContent | BinaryOperationWithConstOperandQueryContent; }