/// import { Subscription } from 'subscription'; import { FormatterFactory } from './formatters'; import { GenerateImageOptions, StructService, CalculateData, type CalculateResult } from "../domain/services"; import { Editor } from './editor'; import { Indigo } from "./indigo"; import { MolfileFormat } from "../domain/serializers"; import { Struct } from "../domain/entities"; import { EventEmitter } from 'events'; import { LogSettings } from "../utilities"; import { ExportImageParams, SupportedImageFormats, SupportedModes, UpdateMonomersLibraryParams } from "./ketcher.types"; declare type SetMoleculeOptions = { position?: { x: number; y: number; }; needZoom?: boolean; }; export declare class Ketcher { #private; _id: string; logging: LogSettings; structService: StructService; _indigo: Indigo; changeEvent: Subscription; libraryUpdateEvent: Subscription; get editor(): Editor; get eventBus(): EventEmitter; constructor(structService: StructService, formatterFactory: FormatterFactory); get id(): string; get formatterFactory(): FormatterFactory; get indigo(): Indigo; get settings(): {}; addEditor(editor: Editor): void; setSettings(settings: Record): any; getSmiles(isExtended?: boolean): Promise; getExtendedSmiles(): Promise; getMolfile(molfileFormat?: MolfileFormat): Promise; getIdt(): Promise; getAxoLabs(): Promise; getRxn(molfileFormat?: MolfileFormat): Promise; getKet(): Promise; getFasta(): Promise; getSequence(format?: '1-letter' | '3-letter'): Promise; getSmarts(): Promise; getCml(): Promise; getSdf(molfileFormat?: MolfileFormat): Promise; getRdf(molfileFormat?: MolfileFormat): Promise; getCDXml(): Promise; getCDX(): Promise; getInchi(withAuxInfo?: boolean): Promise; getInChIKey(): Promise; containsReaction(): boolean; isQueryStructureSelected(): boolean; setMolecule(structStr: string, options?: SetMoleculeOptions): Promise; setHelm(helmStr: string): Promise; addFragment(structStr: string, options?: SetMoleculeOptions): Promise; circularLayoutMonomers(): Promise; layout(): Promise; calculate(options?: CalculateData): Promise; /** * @param {number} value - in a range [ZoomTool.instance.MINZOOMSCALE, ZoomTool.instance.MAXZOOMSCALE] */ setZoom(value: number): void; setMode(mode: SupportedModes): void; exportImage(format: SupportedImageFormats, params?: ExportImageParams): void; recognize(image: Blob, version?: string): Promise; generateImage(data: string, options?: GenerateImageOptions): Promise; reinitializeIndigo(structService: StructService): void; sendCustomAction(name: string): void; ensureMonomersLibraryDataInKetFormat(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise; ensureMonomersLibraryDataInSdfFormat(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise; updateMonomersLibrary(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise; replaceMonomersLibrary(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise; switchToMacromoleculesMode(): void; switchToMoleculesMode(): void; } export {};