/** * Copyright (c) 2020-2024 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal * @author Alexander Rose */ import { Structure } from '../mol-model/structure.js'; import { PluginContext } from './context.js'; import { EmdbDownloadProvider } from '../mol-plugin-state/actions/volume.js'; import { StructureRepresentationPresetProvider } from '../mol-plugin-state/builder/structure/representation-preset.js'; import { SaccharideCompIdMapType } from '../mol-model/structure/structure/carbohydrates/constants.js'; export declare class PluginConfigItem { key: string; defaultValue?: T | undefined; toString(): string; valueOf(): string; constructor(key: string, defaultValue?: T | undefined); } declare function item(key: string, defaultValue?: T): PluginConfigItem; export declare const PluginConfig: { item: typeof item; General: { IsBusyTimeoutMs: PluginConfigItem; DisableAntialiasing: PluginConfigItem; DisablePreserveDrawingBuffer: PluginConfigItem; PixelScale: PluginConfigItem; PickScale: PluginConfigItem; Transparency: PluginConfigItem<"blended" | "wboit" | "dpoit">; PreferWebGl1: PluginConfigItem; AllowMajorPerformanceCaveat: PluginConfigItem; PowerPreference: PluginConfigItem; ResolutionMode: PluginConfigItem<"auto" | "scaled" | "native">; }; State: { DefaultServer: PluginConfigItem; CurrentServer: PluginConfigItem; HistoryCapacity: PluginConfigItem; }; VolumeStreaming: { Enabled: PluginConfigItem; DefaultServer: PluginConfigItem; CanStream: PluginConfigItem<(s: Structure, plugin: PluginContext) => boolean>; EmdbHeaderServer: PluginConfigItem; }; Viewport: { ShowReset: PluginConfigItem; ShowExpand: PluginConfigItem; ShowToggleFullscreen: PluginConfigItem; ShowControls: PluginConfigItem; ShowSettings: PluginConfigItem; ShowSelectionMode: PluginConfigItem; ShowAnimation: PluginConfigItem; ShowTrajectoryControls: PluginConfigItem; ShowScreenshotControls: PluginConfigItem; ShowIllumination: PluginConfigItem; ShowXR: PluginConfigItem<"auto" | "always" | "never">; }; Download: { DefaultPdbProvider: PluginConfigItem<"rcsb" | "pdbe" | "pdbj">; DefaultEmdbProvider: PluginConfigItem; }; Structure: { SizeThresholds: PluginConfigItem<{ smallResidueCount: number; mediumResidueCount: number; largeResidueCount: number; highSymmetryUnitCount: number; fiberResidueCount: number; }>; DefaultRepresentationPreset: PluginConfigItem; DefaultRepresentationPresetParams: PluginConfigItem; SaccharideCompIdMapType: PluginConfigItem; }; Background: { Styles: PluginConfigItem<[import("../mol-util/param-definition.js").ParamDefinition.Values<{ variant: import("../mol-util/param-definition.js").ParamDefinition.Mapped, "off"> | import("../mol-util/param-definition.js").ParamDefinition.NamedParams | import("../mol-util/param-definition.js").ParamDefinition.NamedParams; blur: number; }>, "image"> | import("../mol-util/param-definition.js").ParamDefinition.NamedParams, "radialGradient"> | import("../mol-util/param-definition.js").ParamDefinition.NamedParams, "urls"> | import("../mol-util/param-definition.js").ParamDefinition.NamedParams, "files">; blur: number; rotation: import("../mol-util/param-definition.js").ParamDefinition.Normalize<{ x: /*elided*/ any; y: /*elided*/ any; z: /*elided*/ any; }>; }>, "skybox"> | import("../mol-util/param-definition.js").ParamDefinition.NamedParams, "horizontalGradient">>; }>, string][]>; }; }; export declare class PluginConfigManager { private _config; get(key: PluginConfigItem): T | undefined; set(key: PluginConfigItem, value: T): void; delete(key: PluginConfigItem): void; constructor(initial?: [PluginConfigItem, unknown][]); } export {};