ketcher-core
Version:
Web-based molecule sketcher
68 lines (67 loc) • 3.63 kB
TypeScript
import { BaseMonomerRenderer } from "./BaseMonomerRenderer";
import { FlexModePolymerBondRenderer } from "./PolymerBondRenderer/FlexModePolymerBondRenderer";
import { SnakeModePolymerBondRenderer } from "./PolymerBondRenderer/SnakeModePolymerBondRenderer";
import { HydrogenBond } from "../../../domain/entities";
import { BaseMonomer } from "../../../domain/entities/BaseMonomer";
import { Command } from "../../../domain/entities/Command";
import { DrawingEntity } from "../../../domain/entities/DrawingEntity";
import { PolymerBond } from "../../../domain/entities/PolymerBond";
import { AttachmentPointName } from "../../../domain/types";
import { AmbiguousMonomer } from "../../../domain/entities/AmbiguousMonomer";
import { AmbiguousMonomerRenderer } from "./AmbiguousMonomerRenderer";
import { Atom } from "../../../domain/entities/CoreAtom";
import { AtomRenderer } from "./AtomRenderer";
import { BondRenderer } from "./BondRenderer";
import { Bond } from "../../../domain/entities/CoreBond";
import { MonomerToAtomBond } from "../../../domain/entities/MonomerToAtomBond";
declare type FlexModeOrSnakeModePolymerBondRenderer = FlexModePolymerBondRenderer | SnakeModePolymerBondRenderer;
export declare class RenderersManager {
private theme;
monomers: Map<number, BaseMonomerRenderer | AmbiguousMonomerRenderer>;
polymerBonds: Map<number, FlexModeOrSnakeModePolymerBondRenderer>;
atoms: Map<number, AtomRenderer>;
bonds: Map<number, BondRenderer>;
private needRecalculateMonomersEnumeration;
constructor({ theme }: {
theme: any;
});
hoverDrawingEntity(drawingEntity: DrawingEntity): void;
selectDrawingEntity(drawingEntity: DrawingEntity): void;
moveDrawingEntity(drawingEntity: DrawingEntity): void;
private markForReEnumeration;
addMonomer(monomer: BaseMonomer | AmbiguousMonomer, callback?: () => void): void;
moveMonomer(monomer: BaseMonomer): void;
redrawDrawingEntity(drawingEntity: DrawingEntity, force?: boolean, recalculateEnumeration?: boolean): void;
deleteAllDrawingEntities(): void;
deleteMonomer(monomer: BaseMonomer): void;
addPolymerBond(polymerBond: PolymerBond | HydrogenBond, redrawAttachmentPoints?: boolean): void;
movePolymerBond(polymerBond: PolymerBond): void;
showPolymerBondInformation(polymerBond: PolymerBond): void;
deletePolymerBond(polymerBond: PolymerBond | HydrogenBond, recalculateEnumeration?: boolean, redrawAttachmentPoints?: boolean): void;
private recalculatePeptideChainEnumeration;
private recalculateRnaChainEnumeration;
private recalculateMonomersEnumeration;
finishPolymerBondCreation(polymerBond: PolymerBond): void;
cancelPolymerBondCreation(polymerBond: PolymerBond, secondMonomer?: BaseMonomer): void;
hoverMonomer(monomer: BaseMonomer, needRedrawAttachmentPoints: any): void;
hoverAttachmentPoint(monomer: BaseMonomer, attachmentPointName: AttachmentPointName): void;
reinitializeViewModel(): void;
update(modelChanges?: Command): void;
addAtom(atom: Atom): void;
deleteAtom(atom: Atom): void;
addBond(bond: Bond): void;
deleteBond(bond: Bond): void;
addMonomerToAtomBond(bond: MonomerToAtomBond): void;
deleteMonomerToAtomBond(bond: MonomerToAtomBond): void;
runPostRenderMethods(): void;
static getRenderedStructuresBbox(monomers?: BaseMonomer[]): {
left: any;
right: any;
top: any;
bottom: any;
width: number;
height: number;
};
rerenderSideConnectionPolymerBonds(): void;
}
export {};