import type { NMRiumCore, NmriumState, SerializedNmriumState, Spectrum, StateMolecule, Workspace } from '@zakodium/nmrium-core'; import type { State } from '../component/reducer/Reducer.js'; export declare const DataExportOptions: { /** * Export the data as it is in the state, including all the raw data arrays. */ readonly RAW_DATA: "RAW_DATA"; /** * Export the data as it is in the state, excluding all the raw data arrays. * They are replaced by empty arrays. * When the nmrium file will be imported, the data will be fetched from the original source. * * @see State.sources */ readonly DATA_SOURCE: "DATA_SOURCE"; /** * Export only metadata, without any data. */ readonly NO_DATA: "NO_DATA"; /** * Export the state with all the data included, and without any external references. * The final file will be a zip, containing all the data, including the original files. * External data source will also be embedded in the archive. * * @experimental */ readonly SELF_CONTAINED: "SELF_CONTAINED"; /** * Export the state with data included and with external references. * Original files will be included in the final archive. * External data source will not be embedded in the archive. * * When the nmrium file will be imported, * the data will be fetched from the original source and merged with data embedded in the archive. * * @experimental */ readonly SELF_CONTAINED_EXTERNAL_DATASOURCE: "SELF_CONTAINED_EXTERNAL_DATASOURCE"; }; export type DataExportOptions = (typeof DataExportOptions)[keyof typeof DataExportOptions]; type ExportTarget = 'nmrium' | 'onChange'; export interface ExportOptions { dataType?: DataExportOptions; view?: boolean; settings?: boolean; /** @default true */ serialize?: boolean; exportTarget?: ExportTarget; } export declare function addJcamp(output: any, jcamp: any, options: any, usedColors: any): void; /** * @param core * @param {object} state * @param preferencesState * @param options * * @returns a state serialized or not depending on the options. * If serialize options is true it returns SerializedNmriumState else NmriumState */ export declare function toJSON(core: NMRiumCore, state: Pick, preferencesState: { current: Workspace; }, options?: ExportOptions): NmriumState | SerializedNmriumState; export type DataExportStage = 'originalFid' | 'originalFtReal' | 'originalFtRealImaginary' | 'processedReal' | 'processedRealImaginary'; export declare function exportAsJcamp(spectrum: Spectrum, dataExportStage: DataExportStage): void; interface ExportForCTOptions { spectrum: Spectrum; molecules: StateMolecule[]; } export declare function exportForCT(options: ExportForCTOptions): Promise; export {}; //# sourceMappingURL=SpectraManager.d.ts.map