xsmiles
Version:
XSMILES is a JavaScript tool to visualize atom and non-atom attributions and SMILES strings through interactive coordinated visualizations.
77 lines • 3.92 kB
TypeScript
import { Molecule, Method, SmilesElement, MoleculeFromJson, ProcessedMoleculeFromJson, RawMolecule, Vertex } from "../../types/molecule.types";
import { Drawer } from "src/types/drawer.interface";
declare class MoleculeStructureService {
getCxSmilesWithScores(molecule: Molecule): string;
getAtomsScores(molecule: Molecule): number[];
createRawMolecule(processedJsonMolecule: ProcessedMoleculeFromJson, selectedMethod: Method): import("../../types/molecule.types").RawMolecule;
getVerticesFromMolecule(molecule: Molecule): Vertex[];
getHoveredVerticesFromMolecule(molecule: Molecule): Vertex[];
getHoverStatusFromAtoms(indexedSmilesElements: SmilesElement[]): boolean[];
cloneMoleculeFromJson: (molecule: MoleculeFromJson) => {
string: string;
sequence?: string[] | undefined;
methods: Method[];
attributes?: {
[id: string]: string | number;
} | undefined;
index?: number | undefined;
};
cloneMolecule: (molecule: Molecule) => {
smilesElements: SmilesElement[];
sequence: string[];
vertices: Vertex[] | undefined;
id: string;
index: number;
string: string;
method: Method;
attributes: {
[id: string]: string | number;
};
};
cloneMethod: (method: Method) => {
name: string;
scores: number[];
attributes: {
[id: string]: string | number;
};
};
getElementsIfInAllBranches(smilesElements: SmilesElement[], branches: number[]): SmilesElement[];
setSmilesElementsBranches: (smilesElements: SmilesElement[]) => void;
getRingContext: (indexedSmilesElements: SmilesElement[], start: number, visited: number[]) => {
visited: number[];
lastIndex: number;
};
preprocessSmilesElementsAndMethod: (rawMolecule: RawMolecule) => Molecule;
extractSmilesElementsAndMethods(smilesString: string | undefined, smilesSequence: string[] | undefined, method: Method | undefined): {
smilesSequence: string[];
smilesMethod: {
name: string;
scores: number[];
attributes: {
[id: string]: string | number;
};
};
};
parseAtoms(smilesString: string): {
vIndex: number;
match: RegExpMatchArray;
}[];
createSmilesElements(smilesSequence: string[], smilesScores: number[]): SmilesElement[];
findNonRingSmilesElements(indexedSmilesElements: SmilesElement[]): SmilesElement[];
getElementsInTheSameGroup(indexedSmilesElements: SmilesElement[], element: SmilesElement): SmilesElement[];
setRingIdOfNumericalSmilesElements: (smilesElements: SmilesElement[]) => void;
setRingsIntoSmilesElements: (smilesElements: SmilesElement[]) => void;
private appendRingToSmilesElements;
spreadVerticesToOtherSmilesElements(smilesElements: SmilesElement[]): void;
findGVertexFromGroupedElements: (vertices: any[], groupedElements: SmilesElement[], findGVertex: (gVertices: any[], smilesElement: SmilesElement) => any) => any | undefined;
private setRingsInSmilesElements;
notAtom: Set<string>;
smilesElementIsAtom: (smilesElement: SmilesElement) => boolean;
smilesElementIsHydrogen: (smilesElement: SmilesElement) => boolean;
setWhichElementIsInWhichRing(smilesElements: SmilesElement[], drawer: Drawer, findGVertex: (gVertices: any[], smilesElement: SmilesElement) => any): void;
setVerticesInSmilesElements(smilesElements: SmilesElement[], drawer: Drawer, findGVertex: (gVertices: any[], smilesElement: SmilesElement) => any, createVertex: (smilesElement: SmilesElement, gVertex: any) => Vertex | null, debug?: boolean): void;
getNAtomsFromSmilesString(smilesString: string): number;
}
declare const _default: MoleculeStructureService;
export default _default;
//# sourceMappingURL=molecule.structure.service.d.ts.map