import { InjectionToken } from '@angular/core';
import { ValidatorFn } from '@angular/forms';
import { KbqTimeRangeService } from './time-range.service';
import { KbqCustomTimeRangeType, KbqTimeRangeType } from './types';
/** Preset of selectable time ranges, provided by DI. */
export declare const KBQ_DEFAULT_TIME_RANGE_TYPES: InjectionToken<KbqTimeRangeType[]>;
/** Preset of custom time ranges, provided by DI. */
export declare const KBQ_CUSTOM_TIME_RANGE_TYPES: InjectionToken<KbqCustomTimeRangeType[]>;
/** Time range types in range editor if nothing provided */
export declare const defaultTimeRangeTypes: KbqTimeRangeType[];
/** @docs-private */
export declare function createMissingDateImplError(componentName: string, provider: string): Error;
/**
 * Validates that the 'from' date-time is not greater than the 'to' date-time in a range form.
 * Returns an error if the start date-time occurs after the end date-time.
 *
 * @param timeRangeService - Service used to manipulate date-time values.
 */
export declare const rangeValidator: <T>(timeRangeService: KbqTimeRangeService<T>) => ValidatorFn;
