/** * Copyright (c) 2023-2026 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Adam Midlik */ import { Structure } from '../../../mol-model/structure.js'; import { PluginStateObject as SO } from '../../../mol-plugin-state/objects.js'; import { StateObject, StateTransformer } from '../../../mol-state/index.js'; import { ParamDefinition as PD } from '../../../mol-util/param-definition.js'; /** Parameter definition for `MVSAnnotationStructureComponent` transformer */ export declare const MVSAnnotationStructureComponentParams: { annotationId: PD.Text; fieldName: PD.Text; fieldValues: PD.Mapped, "all"> | PD.NamedParams[], "selected">>; nullIfEmpty: PD.Base; label: PD.Text; }; /** Parameter values for `MVSAnnotationStructureComponent` transformer */ export type MVSAnnotationStructureComponentProps = PD.ValuesFor; /** Transformer builder for MVS extension */ export declare const MVSTransform: StateTransformer.Builder.Root; /** Transformer for creating a structure component based on custom model property "Annotations" */ export type MVSAnnotationStructureComponent = typeof MVSAnnotationStructureComponent; export declare const MVSAnnotationStructureComponent: StateTransformer, "all"> | PD.NamedParams[], "selected">; nullIfEmpty: boolean | undefined; label: string; }>>; /** Create a substructure based on `MVSAnnotationStructureComponentProps` */ export declare function createMVSAnnotationSubstructure(structure: Structure, params: MVSAnnotationStructureComponentProps): Structure; interface MVSComponentCache { source?: Structure; } /** Create a substructure PSO based on `MVSAnnotationStructureComponentProps` */ export declare function createMVSAnnotationStructureComponent(structure: Structure, params: MVSAnnotationStructureComponentProps, cache: MVSComponentCache): StateObject | SO.Molecule.Structure; /** Update a substructure PSO based on `MVSAnnotationStructureComponentProps` */ export declare function updateMVSAnnotationStructureComponent(a: Structure, b: SO.Molecule.Structure, oldParams: MVSAnnotationStructureComponentProps, newParams: MVSAnnotationStructureComponentProps, cache: MVSComponentCache): StateTransformer.UpdateResult.Unchanged | StateTransformer.UpdateResult.Updated | StateTransformer.UpdateResult.Recreate; export {};