molstar
Version:
A comprehensive macromolecular library.
44 lines (43 loc) • 1.58 kB
TypeScript
/**
* Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
*/
import { Structure, StructureElement } from '../mol-model/structure';
import { Script } from '../mol-script/script';
import { Material } from '../mol-util/material';
export { Substance };
declare type Substance = {
readonly layers: ReadonlyArray<Substance.Layer>;
};
declare function Substance(layers: ReadonlyArray<Substance.Layer>): Substance;
declare namespace Substance {
type Layer = {
readonly loci: StructureElement.Loci;
readonly material: Material;
readonly clear: boolean;
};
const Empty: Substance;
function areEqual(sA: Substance, sB: Substance): boolean;
function isEmpty(overpaint: Substance): boolean;
function remap(substance: Substance, structure: Structure): {
layers: Layer[];
};
function merge(substance: Substance): Substance;
function filter(substance: Substance, filter: Structure): Substance;
type ScriptLayer = {
script: Script;
material: Material;
clear: boolean;
};
function ofScript(scriptLayers: ScriptLayer[], structure: Structure): Substance;
type BundleLayer = {
bundle: StructureElement.Bundle;
material: Material;
clear: boolean;
};
function ofBundle(bundleLayers: BundleLayer[], structure: Structure): Substance;
function toBundle(overpaint: Substance): {
layers: BundleLayer[];
};
}