UNPKG

molstar

Version:

A comprehensive macromolecular library.

159 lines (158 loc) 11.7 kB
/** * Copyright (c) 2024-2025 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal <david.sehnal@gmail.com> * @author Adam Midlik <midlik@gmail.com> */ import { Mesh } from '../../../mol-geo/geometry/mesh/mesh'; import { Text } from '../../../mol-geo/geometry/text/text'; import { Box3D, Sphere3D } from '../../../mol-math/geometry'; import { Mat4 } from '../../../mol-math/linear-algebra'; import { Shape } from '../../../mol-model/shape'; import { Structure } from '../../../mol-model/structure'; import { PluginStateObject as SO } from '../../../mol-plugin-state/objects'; import { StateObject } from '../../../mol-state'; import { Asset } from '../../../mol-util/assets'; import { ParamDefinition as PD } from '../../../mol-util/param-definition'; import { MolstarNode, MolstarSubtree } from '../tree/molstar/molstar-tree'; type PrimitivesParams = MolstarNode<'primitives'>['params']; export declare function getPrimitiveStructureRefs(primitives: MolstarSubtree<'primitives'>): Set<string>; declare const MVSPrimitivesData_base: { new (data: PrimitiveBuilderContext, props?: { label: string; description?: string; } | undefined): { id: import("../../../mol-util").UUID; type: SO.TypeInfo; label: string; description?: string; data: PrimitiveBuilderContext; }; type: SO.TypeInfo; is(obj?: StateObject): obj is StateObject<PrimitiveBuilderContext, SO.TypeInfo>; }; export declare class MVSPrimitivesData extends MVSPrimitivesData_base { } declare const MVSPrimitiveShapes_base: { new (data: { mesh?: Shape<Mesh>; labels?: Shape<Text>; }, props?: { label: string; description?: string; } | undefined): { id: import("../../../mol-util").UUID; type: SO.TypeInfo; label: string; description?: string; data: { mesh?: Shape<Mesh>; labels?: Shape<Text>; }; }; type: SO.TypeInfo; is(obj?: StateObject): obj is StateObject<{ mesh?: Shape<Mesh>; labels?: Shape<Text>; }, SO.TypeInfo>; }; export declare class MVSPrimitiveShapes extends MVSPrimitiveShapes_base { } export type MVSDownloadPrimitiveData = typeof MVSDownloadPrimitiveData; export declare const MVSDownloadPrimitiveData: import("../../../mol-state").StateTransformer<SO.Root, MVSPrimitivesData, PD.Normalize<{ uri: string | Asset.Url; format: "mvs-node-json"; }>>; export type MVSInlinePrimitiveData = typeof MVSInlinePrimitiveData; export declare const MVSInlinePrimitiveData: import("../../../mol-state").StateTransformer<SO.Root, MVSPrimitivesData, PD.Normalize<{ node: { kind: "primitives"; params: { color: "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "white" | "whitesmoke" | "yellow" | "yellowgreen" | "cornflower" | "laserlemon" | "lightgoldenrod" | "maroon2" | "maroon3" | "purple2" | "purple3" | `#${string}`; label_color: "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "white" | "whitesmoke" | "yellow" | "yellowgreen" | "cornflower" | "laserlemon" | "lightgoldenrod" | "maroon2" | "maroon3" | "purple2" | "purple3" | `#${string}`; tooltip: string | null; opacity: number; label_opacity: number; instances: number[][] | null; } & {}; custom?: import("../tree/generic/tree-schema").CustomProps; ref?: string; } & { children?: import("../tree/generic/tree-schema").Tree<import("../tree/generic/tree-schema").NodeFor<import("../tree/generic/tree-schema").TreeSchema<{ download: /*elided*/ any; parse: /*elided*/ any; trajectory: /*elided*/ any; model: /*elided*/ any; structure: /*elided*/ any; root: /*elided*/ any; transform: /*elided*/ any; component: /*elided*/ any; component_from_uri: /*elided*/ any; component_from_source: /*elided*/ any; representation: /*elided*/ any; volume: /*elided*/ any; volume_representation: /*elided*/ any; color: /*elided*/ any; color_from_uri: /*elided*/ any; color_from_source: /*elided*/ any; opacity: /*elided*/ any; label: /*elided*/ any; label_from_uri: /*elided*/ any; label_from_source: /*elided*/ any; tooltip: /*elided*/ any; tooltip_from_uri: /*elided*/ any; tooltip_from_source: /*elided*/ any; focus: /*elided*/ any; camera: /*elided*/ any; canvas: /*elided*/ any; primitives: /*elided*/ any; primitives_from_uri: /*elided*/ any; primitive: /*elided*/ any; }, "root">, "color" | "opacity" | "transform" | "tooltip" | "canvas" | "label" | "download" | "focus" | "volume" | "representation" | "model" | "structure" | "root" | "trajectory" | "camera" | "component" | "parse" | "component_from_uri" | "component_from_source" | "volume_representation" | "color_from_uri" | "color_from_source" | "label_from_uri" | "label_from_source" | "tooltip_from_uri" | "tooltip_from_source" | "primitives" | "primitives_from_uri" | "primitive">, import("../tree/generic/tree-schema").NodeFor<import("../tree/generic/tree-schema").TreeSchema<{ download: /*elided*/ any; parse: /*elided*/ any; trajectory: /*elided*/ any; model: /*elided*/ any; structure: /*elided*/ any; root: /*elided*/ any; transform: /*elided*/ any; component: /*elided*/ any; component_from_uri: /*elided*/ any; component_from_source: /*elided*/ any; representation: /*elided*/ any; volume: /*elided*/ any; volume_representation: /*elided*/ any; color: /*elided*/ any; color_from_uri: /*elided*/ any; color_from_source: /*elided*/ any; opacity: /*elided*/ any; label: /*elided*/ any; label_from_uri: /*elided*/ any; label_from_source: /*elided*/ any; tooltip: /*elided*/ any; tooltip_from_uri: /*elided*/ any; tooltip_from_source: /*elided*/ any; focus: /*elided*/ any; camera: /*elided*/ any; canvas: /*elided*/ any; primitives: /*elided*/ any; primitives_from_uri: /*elided*/ any; primitive: /*elided*/ any; }, "root">, "color" | "opacity" | "transform" | "tooltip" | "canvas" | "label" | "download" | "focus" | "volume" | "representation" | "model" | "structure" | "root" | "trajectory" | "camera" | "component" | "parse" | "component_from_uri" | "component_from_source" | "volume_representation" | "color_from_uri" | "color_from_source" | "label_from_uri" | "label_from_source" | "tooltip_from_uri" | "tooltip_from_source" | "primitives" | "primitives_from_uri" | "primitive">>[] | undefined; }; }>>; export type MVSBuildPrimitiveShape = typeof MVSBuildPrimitiveShape; export declare const MVSBuildPrimitiveShape: import("../../../mol-state").StateTransformer<MVSPrimitivesData, SO.Shape.Provider, PD.Normalize<{ kind: "lines" | "mesh" | "labels"; }>>; interface PrimitiveBuilderContext { node: MolstarNode<'primitives'>; defaultStructure?: Structure; structureRefs: Record<string, Structure | undefined>; primitives: MolstarNode<'primitive'>[]; options: PrimitivesParams; positionCache: Map<string, [isDefined: boolean, Sphere3D, Box3D]>; instances: Mat4[] | undefined; emptySelectionWarningPrinted?: boolean; } export {};