UNPKG

@jbrowse/core

Version:

JBrowse 2 core libraries used by plugins

30 lines (29 loc) 948 B
import type React from 'react'; import PluggableElementBase from './PluggableElementBase'; import type DisplayType from './DisplayType'; import type { IAnyModelType, IAnyStateTreeNode } from 'mobx-state-tree'; type BasicView = React.ComponentType<{ model: any; session?: IAnyStateTreeNode; }>; type ViewComponentType = React.LazyExoticComponent<BasicView> | BasicView; interface ViewMetadata { hiddenFromGUI?: boolean; } export default class ViewType extends PluggableElementBase { ReactComponent: ViewComponentType; stateModel: IAnyModelType; displayTypes: DisplayType[]; viewMetadata: ViewMetadata; extendedName?: string; constructor(stuff: { name: string; displayName?: string; stateModel: IAnyModelType; extendedName?: string; viewMetadata?: ViewMetadata; ReactComponent: ViewComponentType; }); addDisplayType(display: DisplayType): void; } export {};