/** * Copyright (c) 2018 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose */ import { Task } from 'mol-task' import { RenderObject } from 'mol-gl/render-object' import { PickingId } from '../util/picking'; import { Loci } from 'mol-model/loci'; import { FlagAction } from '../util/flag-data'; export interface RepresentationProps {} export interface Representation { renderObjects: ReadonlyArray create: (data: D, props?: P) => Task update: (props: P) => Task getLoci: (pickingId: PickingId) => Loci | null applyFlags: (loci: Loci, action: FlagAction) => void }