@jbrowse/core
Version:
JBrowse 2 core libraries used by plugins
15 lines (14 loc) • 799 B
TypeScript
import type PluginManager from '../PluginManager';
import type { AnyConfigurationSchemaType } from '../configuration';
import type { AnyDataAdapter } from './BaseAdapter';
import type { SnapshotIn } from 'mobx-state-tree';
type ConfigSnap = SnapshotIn<AnyConfigurationSchemaType>;
interface AdapterCacheEntry {
dataAdapter: AnyDataAdapter;
sessionIds: Set<string>;
}
export declare function getAdapter(pluginManager: PluginManager, sessionId: string, adapterConfigSnapshot: SnapshotIn<AnyConfigurationSchemaType>): Promise<AdapterCacheEntry>;
export type getSubAdapterType = (adapterConfigSnap: ConfigSnap) => ReturnType<typeof getAdapter>;
export declare function freeAdapterResources(args: Record<string, any>): Promise<void>;
export declare function clearAdapterCache(): void;
export {};