@jbrowse/core
Version:
JBrowse 2 core libraries used by plugins
107 lines (106 loc) • 4.88 kB
TypeScript
import type { BlobLocation, FileHandleLocation, FileLocation, PreFileLocation } from './types/index.ts';
import type { AnyConfigurationModel } from '../configuration/index.ts';
import type { IAnyStateTreeNode, IAnyType, Instance, types } from '@jbrowse/mobx-state-tree';
export declare function getTrackAssemblyNames(track: IAnyStateTreeNode & {
configuration: AnyConfigurationModel;
}): string[];
export declare function getConfAssemblyNames(conf: AnyConfigurationModel): string[];
export declare function getRpcSessionId(thisNode: IAnyStateTreeNode): string;
export declare function getParentRenderProps(node: IAnyStateTreeNode): any;
export declare const UNKNOWN = "UNKNOWN";
export declare const UNSUPPORTED = "UNSUPPORTED";
export declare function getBlob(id: string): File | undefined;
export declare function getBlobMap(): Record<string, File>;
export declare function setBlobMap(map: Record<string, File>): void;
export declare function storeBlobLocation(location: PreFileLocation): BlobLocation | PreFileLocation;
export declare function getFileFromCache(handleId: string): File | undefined;
export declare function setFileInCache(handleId: string, file: File): void;
export declare function clearFileFromCache(handleId: string): void;
export declare function getFileHandleCache(): Record<string, File>;
export declare function setFileHandleCache(cache: Record<string, File>): void;
export declare function ensureFileHandleReady(handleId: string, requestPermission?: boolean): Promise<File>;
export declare function storeFileHandleLocation(handle: FileSystemFileHandle): Promise<FileHandleLocation>;
export declare function restoreFileHandles(handleIds: string[], requestPermission?: boolean): Promise<({
handleId: string;
success: boolean;
error?: undefined;
} | {
handleId: string;
success: boolean;
error: unknown;
})[]>;
export declare function findFileHandleIds(obj: unknown, handleIds?: Set<string>, seen?: WeakSet<object>): Set<string>;
export declare function restoreFileHandlesFromSnapshot(sessionSnapshot: unknown, requestPermission?: boolean): Promise<({
handleId: string;
success: boolean;
error?: undefined;
} | {
handleId: string;
success: boolean;
error: unknown;
})[]>;
export declare function getPendingFileHandleIds(): string[];
export declare function setPendingFileHandleIds(ids: string[]): void;
export declare function clearPendingFileHandleIds(): void;
export declare function restorePendingFileHandles(): Promise<({
handleId: string;
success: boolean;
error?: undefined;
} | {
handleId: string;
success: boolean;
error: unknown;
})[]>;
export declare function makeIndex(location: FileLocation, suffix: string): BlobLocation | FileHandleLocation | {
uri: string;
locationType: string;
localPath?: undefined;
} | {
localPath: string;
locationType: string;
uri?: undefined;
};
export declare function makeIndexType(name: string | undefined, typeA: string, typeB: string): string;
export interface AdapterConfig {
type: string;
[key: string]: unknown;
}
export type AdapterGuesser = (file: FileLocation, index?: FileLocation, adapterHint?: string) => AdapterConfig | undefined;
export type TrackTypeGuesser = (adapterName: string, file?: FileLocation) => string | undefined;
export declare function getFileName(track: FileLocation): string;
export declare function guessAdapter(file: FileLocation, index: FileLocation | undefined, adapterHint?: string, model?: IAnyStateTreeNode): AdapterConfig;
export declare function guessTrackType(adapterType: string, model?: IAnyStateTreeNode, file?: FileLocation): string;
export declare function generateUnsupportedTrackConf(trackName: string, trackUrl: string, categories: string[] | undefined): {
type: string;
name: string;
description: string;
category: string[] | undefined;
trackId: string;
};
export declare function generateUnknownTrackConf(trackName: string, trackUrl: string, categories?: string[]): {
type: string;
name: string;
description: string;
category: string[] | undefined;
trackId: string;
};
export declare function getTrackName(conf: AnyConfigurationModel | {
name?: string;
type?: string;
}, session: {
assemblies: AnyConfigurationModel[];
}): string;
type MSTArray<T extends IAnyType> = Instance<ReturnType<typeof types.array<T>>>;
interface MinimalTrack extends IAnyType {
configuration: {
trackId: string;
};
}
interface GenericView {
type: string;
tracks: MSTArray<MinimalTrack>;
}
export declare function showTrackGeneric(self: GenericView, trackId: string, initialSnapshot?: {}, displayInitialSnapshot?: {}): any;
export declare function hideTrackGeneric(self: GenericView, trackId: string): 0 | 1;
export declare function toggleTrackGeneric(self: GenericView, trackId: string): void;
export {};