molstar
Version:
A comprehensive macromolecular library.
25 lines (24 loc) • 1.18 kB
TypeScript
/**
* Copyright (c) 2019-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
* @author David Sehnal <david.sehnal@gmail.com>
*/
import { PluginContext } from '../../mol-plugin/context';
import { StateObjectRef } from '../../mol-state';
import { FileInfo } from '../../mol-util/file-info';
import { PluginStateObject } from '../objects';
export interface DataFormatProvider<P = any, R = any, V = any> {
label: string;
description: string;
category?: string;
stringExtensions?: string[];
binaryExtensions?: string[];
isApplicable?(info: FileInfo, data: string | Uint8Array): boolean;
parse(plugin: PluginContext, data: StateObjectRef<PluginStateObject.Data.Binary | PluginStateObject.Data.String>, params?: P): Promise<R>;
visuals?(plugin: PluginContext, data: R): Promise<V> | undefined;
}
export declare function DataFormatProvider<P extends DataFormatProvider>(provider: P): P;
declare type cifVariants = 'dscif' | 'coreCif' | -1;
export declare function guessCifVariant(info: FileInfo, data: Uint8Array | string): cifVariants;
export {};