import type { IComputationFunction, IDataQueryPayload, IDatasetStats, IField, IFieldStats, IKeyWord, IMutField, IRow, IVisFilter } from '../interfaces'; import { range } from 'lodash-es'; export { dataQuery } from './dataQuery'; export declare const datasetStats: (service: IComputationFunction) => Promise; export declare const dataReadRaw: (service: IComputationFunction, pageSize: number, pageOffset?: number, option?: { sorting?: { fid: string; sort: 'ascending' | 'descending'; }; filters?: IVisFilter[]; }) => Promise; export declare const fieldStat: (service: IComputationFunction, field: IField, options: { values?: boolean; range?: boolean; valuesMeta?: boolean; selectedCount?: any[]; valuesLimit?: number; valuesOffset?: number; sortBy?: 'value' | 'value_dsc' | 'count' | 'count_dsc' | 'none'; timezoneDisplayOffset?: number; keyword?: IKeyWord; }, allFields: IMutField[]) => Promise; export declare function getRange(service: IComputationFunction, field: string): Promise<[number, number]>; export declare function withComputedField(field: IField, allFields: IMutField[], service: IComputationFunction, config: { timezoneDisplayOffset?: number; }): (builder: (service: IComputationFunction) => Promise) => Promise; export declare function getSample(service: IComputationFunction, field: string): Promise; export declare function getTemporalRange(service: IComputationFunction, field: string, offset?: number): Promise<[number, number, string]>; export declare function getFieldDistinctMeta(service: IComputationFunction, field: string): Promise<{ total: number; distinctTotal: number; }>; export declare function getFieldDistinctCounts(service: IComputationFunction, field: string, options?: { sortBy?: 'value' | 'count' | 'value_dsc' | 'count_dsc' | 'none'; valuesLimit?: number; valuesOffset?: number; }): Promise<{ value: string; count: number; }[]>; export declare function profileNonmialField(service: IComputationFunction, field: string): Promise<[{ total: number; distinctTotal: number; }, { value: string; count: number; }[]]>; export interface IQuantitativeProfileBin { from: number; to: number; count: number; /** smallest value inside the bin, only present for non-empty bins */ min?: number; /** largest value inside the bin, only present for non-empty bins */ max?: number; } export declare function profileQuantitativeField(service: IComputationFunction, field: string): Promise<{ min: any; max: any; total: number; mean: number; binValues: IQuantitativeProfileBin[]; }>; export declare function wrapComputationWithTag(service: IComputationFunction, tag: string): (payload: IDataQueryPayload) => Promise;