import type { DoubleArray, DoubleMatrix } from 'cheminfo-types'; import type { PointWithIndex, XGetFromToIndexOptions, XYFilterXOptions } from 'ml-spectra-processing'; import type { SpectraProcessor } from '../SpectraProcessor.js'; import type { GetNormalizedDataOptions } from './getNormalizedData.js'; export interface FilterOptions { name?: string; options?: any; } export interface ScaleOptions { targetID?: string; method?: string; range?: XGetFromToIndexOptions; relative?: boolean; } export interface RangeWithLabel extends XGetFromToIndexOptions { label?: string; integration?: number; maxPoint?: PointWithIndex; } export interface Calculation { label: string; formula: string; } export interface GetPostProcessedDataOptions extends GetNormalizedDataOptions { /** * Array of filter objects with name and options */ filters?: FilterOptions[]; /** * Scale options for rescaling spectra */ scale?: ScaleOptions; /** * Array of range objects with from, to, and label */ ranges?: RangeWithLabel[]; /** * Array of calculation objects with label and formula */ calculations?: Calculation[]; /** * Filter options for x values */ xFilter?: XYFilterXOptions; } export interface PostProcessedDataResult { ids?: string[]; matrix?: DoubleMatrix; meta?: Array>; x?: DoubleArray; ranges?: Array>; calculations?: Array>; optionsHash?: string; weakMap?: WeakMap; } /** * Calculate post-processed data with various transformations and calculations * @param spectraProcessor - SpectraProcessor instance * @param options - Processing options * @returns Post-processed data */ export declare function getPostProcessedData(spectraProcessor: SpectraProcessor, options?: GetPostProcessedDataOptions): PostProcessedDataResult; //# sourceMappingURL=getPostProcessedData.d.ts.map