UNPKG

ketcher-core

Version:
81 lines (80 loc) 3.83 kB
/// <reference types="node" /> import { Subscription } from 'subscription'; import { type FormatterFactory } from './formatters'; import type { GenerateImageOptions, StructService, CalculateData, CalculateResult } from "../domain/services"; import { type Editor } from './editor'; import { Indigo } from "./indigo"; import type { MolfileFormat } from "../domain/serializers/mol/mol.types"; import { Struct } from "../domain/entities/struct"; import { EventEmitter } from 'events'; import { type LogSettings } from "../utilities"; import { type ExportImageParams, type SupportedImageFormats, type SupportedModes, type 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<string, string | boolean>): any; getSmiles(isExtended?: boolean): Promise<string>; getExtendedSmiles(): Promise<string>; getMolfile(molfileFormat?: MolfileFormat): Promise<string>; getIdt(): Promise<string>; getAxoLabs(): Promise<string>; getRxn(molfileFormat?: MolfileFormat): Promise<string>; getKet(): Promise<string>; getFasta(): Promise<string>; getSequence(format?: '1-letter' | '3-letter'): Promise<string>; getSmarts(): Promise<string>; getCml(): Promise<string>; getSdf(molfileFormat?: MolfileFormat): Promise<string>; getRdf(molfileFormat?: MolfileFormat): Promise<string>; getCDXml(): Promise<string>; getCDX(): Promise<string>; getInchi(withAuxInfo?: boolean): Promise<string>; getInChIKey(): Promise<string>; containsReaction(): boolean; isQueryStructureSelected(): boolean; setMolecule(structStr: string, options?: SetMoleculeOptions): Promise<void | undefined>; setHelm(helmStr: string): Promise<void | undefined>; addFragment(structStr: string, options?: SetMoleculeOptions): Promise<void | undefined>; circularLayoutMonomers(): Promise<void>; layout(): Promise<void>; aromatize(): Promise<void>; dearomatize(): Promise<void>; calculate(options?: CalculateData): Promise<CalculateResult>; /** * @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<Struct>; generateImage(data: string, options?: GenerateImageOptions): Promise<Blob>; reinitializeIndigo(structService: StructService): void; sendCustomAction(name: string): void; ensureMonomersLibraryDataInKetFormat(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise<string>; ensureMonomersLibraryDataInSdfFormat(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise<string>; updateMonomersLibrary(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise<void>; replaceMonomersLibrary(rawMonomersData: string | JSON, params?: UpdateMonomersLibraryParams): Promise<void>; switchToMacromoleculesMode(): void; switchToMoleculesMode(): void; } export {};