ketcher-core
Version:
Web-based molecule sketcher
33 lines (32 loc) • 1.27 kB
TypeScript
import { ChainsCollection, ITwoStrandedChainItem } from "../../../../../domain/entities/monomer-chains/ChainsCollection";
import { SequenceViewModelChain } from "./SequenceViewModelChain";
interface IForEachNodeParams {
twoStrandedNode: ITwoStrandedChainItem;
nodeIndex: number;
nodeIndexOverall: number;
chain: SequenceViewModelChain;
chainIndex: number;
}
export declare class SequenceViewModel {
chainsCollection: ChainsCollection;
private nodes;
chains: SequenceViewModelChain[];
private monomerToTwoStrandedSnakeLayoutNode;
private chainToHasAntisense;
constructor(chainsCollection: ChainsCollection);
private addNode;
private fillSenseNodes;
private fillAntisenseNodes;
private postProcessNodes;
private fillAdditionalSpacesInAntisense;
private fillNodes;
private fillChains;
get firstTwoStrandedNode(): ITwoStrandedChainItem;
get lastTwoStrandedNode(): ITwoStrandedChainItem;
get length(): number;
get hasOnlyOneNewChain(): boolean;
addEmptyChain(emptyChainIndex: number): SequenceViewModelChain;
forEachNode(callback: (params: IForEachNodeParams) => void): void;
getNodeIndex(node: ITwoStrandedChainItem): number;
}
export {};