import Plugin from '@jbrowse/core/Plugin';
import type PluginManager from '@jbrowse/core/PluginManager';
export default class LinearGenomeViewPlugin extends Plugin {
    name: string;
    exports: {
        BaseLinearDisplayComponent: (props: {
            model: import("./index.ts").BaseLinearDisplayModel;
            children?: React.ReactNode;
        }) => import("react/jsx-runtime").JSX.Element;
        BaseLinearDisplay: import("@jbrowse/mobx-state-tree").IModelType<{
            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
        } & {
            heightPreConfig: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
        } & {
            userBpPerPxLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
            userByteSizeLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
        } & {
            blockState: import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IModelType<{
                key: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                region: import("@jbrowse/mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
                reloadFlag: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
                isLeftEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                isRightEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
            }, {
                stopToken: import("@jbrowse/core/util").StopToken | undefined;
                filled: boolean;
                reactElement: React.ReactElement | undefined;
                features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
                layout: any;
                blockStatusMessage: string;
                error: unknown;
                message: string | undefined;
                maxHeightReached: boolean;
                ReactComponent: ({ model, }: {
                    model: {
                        error?: unknown;
                        reload: () => void;
                        message?: React.ReactNode;
                        statusMessage?: string;
                        reactElement?: React.ReactElement;
                        isRenderingPending?: boolean;
                        displayHeight?: number;
                    };
                }) => import("react/jsx-runtime").JSX.Element;
                renderProps: any;
                renderArgs: Record<string, unknown> | undefined;
                isRenderingPending: boolean;
                cachedDisplay: import("@jbrowse/core/util").AbstractDisplayModel | undefined;
            } & {
                doReload(): void;
                setStatusMessage(message: string): void;
                setLoading(newStopToken: import("@jbrowse/core/util").StopToken): void;
                setMessage(messageText: string): void;
                setRendered(props: import("./BaseLinearDisplay/models/serverSideRenderedBlock.ts").RenderedProps | undefined): void;
                setError(error: unknown): void;
                reload(): void;
                setCachedDisplay(display: import("@jbrowse/core/util").AbstractDisplayModel): void;
                beforeDestroy(): void;
            } & {
                readonly statusMessage: any;
                readonly displayHeight: number | undefined;
            } & {
                afterAttach(): void;
            }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
            configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
                maxFeatureScreenDensity: {
                    type: string;
                    description: string;
                    defaultValue: number;
                };
                fetchSizeLimit: {
                    type: string;
                    defaultValue: number;
                    description: string;
                };
                height: {
                    type: string;
                    defaultValue: number;
                    description: string;
                };
                mouseover: {
                    type: string;
                    description: string;
                    defaultValue: string;
                    contextVariable: string[];
                };
                jexlFilters: {
                    type: string;
                    description: string;
                    defaultValue: never[];
                };
            }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
            showLegend: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
            showTooltips: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
        }, {
            rendererTypeName: string;
            error: unknown;
            statusMessage: string | undefined;
        } & {
            readonly RenderingComponent: React.FC<{
                model: {
                    id: string;
                    type: string;
                    rpcDriverName: string | undefined;
                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                }, {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                onHorizontalScroll?: () => void;
                blockState?: Record<string, any>;
            }>;
            readonly DisplayBlurb: React.FC<{
                model: {
                    id: string;
                    type: string;
                    rpcDriverName: string | undefined;
                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                }, {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
            }> | null;
            readonly adapterConfig: any;
            readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
            readonly isMinimized: boolean;
            readonly parentDisplay: any;
            readonly effectiveRpcDriverName: any;
        } & {
            renderProps(): any;
            renderingProps(): {
                displayModel: {
                    id: string;
                    type: string;
                    rpcDriverName: string | undefined;
                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & {
                    readonly RenderingComponent: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                        onHorizontalScroll?: () => void;
                        blockState?: Record<string, any>;
                    }>;
                    readonly DisplayBlurb: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    }> | null;
                    readonly adapterConfig: any;
                    readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                    readonly isMinimized: boolean;
                    readonly parentDisplay: any;
                    readonly effectiveRpcDriverName: any;
                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                }, {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & {
                    readonly RenderingComponent: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                        onHorizontalScroll?: () => void;
                        blockState?: Record<string, any>;
                    }>;
                    readonly DisplayBlurb: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    }> | null;
                    readonly adapterConfig: any;
                    readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                    readonly isMinimized: boolean;
                    readonly parentDisplay: any;
                    readonly effectiveRpcDriverName: any;
                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
            };
            readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
            readonly DisplayMessageComponent: undefined | React.FC<any>;
            trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
            readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
            regionCannotBeRendered(): null;
        } & {
            setStatusMessage(arg?: string): void;
            setError(error?: unknown): void;
            setRpcDriverName(rpcDriverName: string): void;
            reload(): void;
        } & {
            scrollTop: number;
        } & {
            readonly height: number;
        } & {
            setScrollTop(scrollTop: number): void;
            setHeight(displayHeight: number): number;
            resizeHeight(distance: number): number;
        } & {
            featureDensityStatsP: undefined | Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
            featureDensityStats: undefined | import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats;
            currStatsBpPerPx: number;
        } & {
            readonly currentBytesRequested: number;
            readonly currentFeatureScreenDensity: number;
            readonly maxFeatureScreenDensity: any;
            readonly featureDensityStatsReady: boolean;
            readonly maxAllowableBytes: number;
        } & {
            afterAttach(): void;
        } & {
            setCurrStatsBpPerPx(n: number): void;
            setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
            getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
            setFeatureDensityStatsP(arg: any): void;
            setFeatureDensityStats(featureDensityStats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
            clearFeatureDensityStats(): void;
        } & {
            readonly regionTooLarge: boolean;
            readonly regionTooLargeReason: string;
        } & {
            readonly featureDensityStatsReadyAndRegionNotTooLarge: boolean;
            regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
            regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react/jsx-runtime").JSX.Element | null;
        } & {
            mouseoverExtraInformation: string | undefined;
            featureIdUnderMouse: undefined | string;
            subfeatureIdUnderMouse: undefined | string;
            contextMenuFeature: undefined | import("@jbrowse/core/util").Feature;
        } & {
            readonly DisplayMessageComponent: undefined | React.FC<any>;
            readonly blockType: "staticBlocks" | "dynamicBlocks";
            readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
        } & {
            readonly renderDelay: number;
            readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
            legendItems(_theme?: import("@mui/material").Theme): import("./index.ts").LegendItem[];
            svgLegendWidth(theme?: import("@mui/material").Theme): number;
            readonly selectedFeatureId: string | undefined;
            readonly featureWidgetType: {
                type: string;
                id: string;
            };
        } & {
            readonly showTooltipsEnabled: boolean;
            readonly features: import("@jbrowse/core/util/compositeMap").default<string, import("@jbrowse/core/util").Feature>;
            readonly featureUnderMouse: import("@jbrowse/core/util").Feature | undefined;
            getFeatureById(featureId: string, parentFeatureId?: string): import("@jbrowse/core/util").Feature | undefined;
            readonly layoutFeatures: import("@jbrowse/core/util/compositeMap").default<string, import("./BaseLinearDisplay/types.ts").LayoutRecord>;
            getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
            getFeatureByID(blockKey: string, id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
            searchFeatureByID(id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
            readonly floatingLabelData: Map<string, import("./BaseLinearDisplay/components/util.ts").FeatureLabelData>;
        } & {
            addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
            deleteBlock(key: string): void;
            selectFeature(feature: import("@jbrowse/core/util").Feature): void;
            navToFeature(feature: import("@jbrowse/core/util").Feature): void;
            clearFeatureSelection(): void;
            setFeatureIdUnderMouse(feature?: string): void;
            setSubfeatureIdUnderMouse(subfeatureId?: string): void;
            setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature): void;
            setMouseoverExtraInformation(extra?: string): void;
            setShowLegend(s: boolean): void;
            setShowTooltips(arg: boolean): void;
        } & {
            reload(): Promise<void>;
        } & {
            selectFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
            setContextMenuFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
        } & {
            trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
            contextMenuItems(): import("@jbrowse/core/ui").MenuItem[];
            renderingProps(): {
                displayModel: {
                    id: string;
                    type: string;
                    rpcDriverName: string | undefined;
                    heightPreConfig: number | undefined;
                    userBpPerPxLimit: number | undefined;
                    userByteSizeLimit: number | undefined;
                    blockState: import("@jbrowse/mobx-state-tree").IMSTMap<import("@jbrowse/mobx-state-tree").IModelType<{
                        key: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                        region: import("@jbrowse/mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
                        reloadFlag: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
                        isLeftEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                        isRightEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                    }, {
                        stopToken: import("@jbrowse/core/util").StopToken | undefined;
                        filled: boolean;
                        reactElement: React.ReactElement | undefined;
                        features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
                        layout: any;
                        blockStatusMessage: string;
                        error: unknown;
                        message: string | undefined;
                        maxHeightReached: boolean;
                        ReactComponent: ({ model, }: {
                            model: {
                                error?: unknown;
                                reload: () => void;
                                message?: React.ReactNode;
                                statusMessage?: string;
                                reactElement?: React.ReactElement;
                                isRenderingPending?: boolean;
                                displayHeight?: number;
                            };
                        }) => import("react/jsx-runtime").JSX.Element;
                        renderProps: any;
                        renderArgs: Record<string, unknown> | undefined;
                        isRenderingPending: boolean;
                        cachedDisplay: import("@jbrowse/core/util").AbstractDisplayModel | undefined;
                    } & {
                        doReload(): void;
                        setStatusMessage(message: string): void;
                        setLoading(newStopToken: import("@jbrowse/core/util").StopToken): void;
                        setMessage(messageText: string): void;
                        setRendered(props: import("./BaseLinearDisplay/models/serverSideRenderedBlock.ts").RenderedProps | undefined): void;
                        setError(error: unknown): void;
                        reload(): void;
                        setCachedDisplay(display: import("@jbrowse/core/util").AbstractDisplayModel): void;
                        beforeDestroy(): void;
                    } & {
                        readonly statusMessage: any;
                        readonly displayHeight: number | undefined;
                    } & {
                        afterAttach(): void;
                    }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>> & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IModelType<{
                        key: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                        region: import("@jbrowse/mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
                        reloadFlag: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
                        isLeftEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                        isRightEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                    }, {
                        stopToken: import("@jbrowse/core/util").StopToken | undefined;
                        filled: boolean;
                        reactElement: React.ReactElement | undefined;
                        features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
                        layout: any;
                        blockStatusMessage: string;
                        error: unknown;
                        message: string | undefined;
                        maxHeightReached: boolean;
                        ReactComponent: ({ model, }: {
                            model: {
                                error?: unknown;
                                reload: () => void;
                                message?: React.ReactNode;
                                statusMessage?: string;
                                reactElement?: React.ReactElement;
                                isRenderingPending?: boolean;
                                displayHeight?: number;
                            };
                        }) => import("react/jsx-runtime").JSX.Element;
                        renderProps: any;
                        renderArgs: Record<string, unknown> | undefined;
                        isRenderingPending: boolean;
                        cachedDisplay: import("@jbrowse/core/util").AbstractDisplayModel | undefined;
                    } & {
                        doReload(): void;
                        setStatusMessage(message: string): void;
                        setLoading(newStopToken: import("@jbrowse/core/util").StopToken): void;
                        setMessage(messageText: string): void;
                        setRendered(props: import("./BaseLinearDisplay/models/serverSideRenderedBlock.ts").RenderedProps | undefined): void;
                        setError(error: unknown): void;
                        reload(): void;
                        setCachedDisplay(display: import("@jbrowse/core/util").AbstractDisplayModel): void;
                        beforeDestroy(): void;
                    } & {
                        readonly statusMessage: any;
                        readonly displayHeight: number | undefined;
                    } & {
                        afterAttach(): void;
                    }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>>;
                    configuration: {
                        [x: string]: any;
                    } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                        setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
                            [x: string]: any;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
                                [x: string]: any;
                            } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & any & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
                    } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
                        maxFeatureScreenDensity: {
                            type: string;
                            description: string;
                            defaultValue: number;
                        };
                        fetchSizeLimit: {
                            type: string;
                            defaultValue: number;
                            description: string;
                        };
                        height: {
                            type: string;
                            defaultValue: number;
                            description: string;
                        };
                        mouseover: {
                            type: string;
                            description: string;
                            defaultValue: string;
                            contextVariable: string[];
                        };
                        jexlFilters: {
                            type: string;
                            description: string;
                            defaultValue: never[];
                        };
                    }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>>;
                    showLegend: boolean | undefined;
                    showTooltips: boolean | undefined;
                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & {
                    readonly RenderingComponent: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                        onHorizontalScroll?: () => void;
                        blockState?: Record<string, any>;
                    }>;
                    readonly DisplayBlurb: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    }> | null;
                    readonly adapterConfig: any;
                    readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                    readonly isMinimized: boolean;
                    readonly parentDisplay: any;
                    readonly effectiveRpcDriverName: any;
                } & {
                    renderProps(): any;
                    renderingProps(): {
                        displayModel: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & {
                            readonly RenderingComponent: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                                onHorizontalScroll?: () => void;
                                blockState?: Record<string, any>;
                            }>;
                            readonly DisplayBlurb: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                            }> | null;
                            readonly adapterConfig: any;
                            readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                            readonly isMinimized: boolean;
                            readonly parentDisplay: any;
                            readonly effectiveRpcDriverName: any;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & {
                            readonly RenderingComponent: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                                onHorizontalScroll?: () => void;
                                blockState?: Record<string, any>;
                            }>;
                            readonly DisplayBlurb: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                            }> | null;
                            readonly adapterConfig: any;
                            readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                            readonly isMinimized: boolean;
                            readonly parentDisplay: any;
                            readonly effectiveRpcDriverName: any;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    };
                    readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
                    readonly DisplayMessageComponent: undefined | React.FC<any>;
                    trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
                    readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
                    regionCannotBeRendered(): null;
                } & {
                    setStatusMessage(arg?: string): void;
                    setError(error?: unknown): void;
                    setRpcDriverName(rpcDriverName: string): void;
                    reload(): void;
                } & {
                    scrollTop: number;
                } & {
                    readonly height: number;
                } & {
                    setScrollTop(scrollTop: number): void;
                    setHeight(displayHeight: number): number;
                    resizeHeight(distance: number): number;
                } & {
                    featureDensityStatsP: undefined | Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
                    featureDensityStats: undefined | import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats;
                    currStatsBpPerPx: number;
                } & {
                    readonly currentBytesRequested: number;
                    readonly currentFeatureScreenDensity: number;
                    readonly maxFeatureScreenDensity: any;
                    readonly featureDensityStatsReady: boolean;
                    readonly maxAllowableBytes: number;
                } & {
                    afterAttach(): void;
                } & {
                    setCurrStatsBpPerPx(n: number): void;
                    setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
                    getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
                    setFeatureDensityStatsP(arg: any): void;
                    setFeatureDensityStats(featureDensityStats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
                    clearFeatureDensityStats(): void;
                } & {
                    readonly regionTooLarge: boolean;
                    readonly regionTooLargeReason: string;
                } & {
                    readonly featureDensityStatsReadyAndRegionNotTooLarge: boolean;
                    regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
                    regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react/jsx-runtime").JSX.Element | null;
                } & {
                    mouseoverExtraInformation: string | undefined;
                    featureIdUnderMouse: undefined | string;
                    subfeatureIdUnderMouse: undefined | string;
                    contextMenuFeature: undefined | import("@jbrowse/core/util").Feature;
                } & {
                    readonly DisplayMessageComponent: undefined | React.FC<any>;
                    readonly blockType: "staticBlocks" | "dynamicBlocks";
                    readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
                } & {
                    readonly renderDelay: number;
                    readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
                    legendItems(_theme?: import("@mui/material").Theme): import("./index.ts").LegendItem[];
                    svgLegendWidth(theme?: import("@mui/material").Theme): number;
                    readonly selectedFeatureId: string | undefined;
                    readonly featureWidgetType: {
                        type: string;
                        id: string;
                    };
                } & {
                    readonly showTooltipsEnabled: boolean;
                    readonly features: import("@jbrowse/core/util/compositeMap").default<string, import("@jbrowse/core/util").Feature>;
                    readonly featureUnderMouse: import("@jbrowse/core/util").Feature | undefined;
                    getFeatureById(featureId: string, parentFeatureId?: string): import("@jbrowse/core/util").Feature | undefined;
                    readonly layoutFeatures: import("@jbrowse/core/util/compositeMap").default<string, import("./BaseLinearDisplay/types.ts").LayoutRecord>;
                    getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
                    getFeatureByID(blockKey: string, id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
                    searchFeatureByID(id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
                    readonly floatingLabelData: Map<string, import("./BaseLinearDisplay/components/util.ts").FeatureLabelData>;
                } & {
                    addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
                    deleteBlock(key: string): void;
                    selectFeature(feature: import("@jbrowse/core/util").Feature): void;
                    navToFeature(feature: import("@jbrowse/core/util").Feature): void;
                    clearFeatureSelection(): void;
                    setFeatureIdUnderMouse(feature?: string): void;
                    setSubfeatureIdUnderMouse(subfeatureId?: string): void;
                    setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature): void;
                    setMouseoverExtraInformation(extra?: string): void;
                    setShowLegend(s: boolean): void;
                    setShowTooltips(arg: boolean): void;
                } & {
                    reload(): Promise<void>;
                } & {
                    selectFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
                    setContextMenuFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                } & {
                    heightPreConfig: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
                } & {
                    userBpPerPxLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
                    userByteSizeLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
                } & {
                    blockState: import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IModelType<{
                        key: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                        region: import("@jbrowse/mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
                        reloadFlag: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
                        isLeftEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                        isRightEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                    }, {
                        stopToken: import("@jbrowse/core/util").StopToken | undefined;
                        filled: boolean;
                        reactElement: React.ReactElement | undefined;
                        features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
                        layout: any;
                        blockStatusMessage: string;
                        error: unknown;
                        message: string | undefined;
                        maxHeightReached: boolean;
                        ReactComponent: ({ model, }: {
                            model: {
                                error?: unknown;
                                reload: () => void;
                                message?: React.ReactNode;
                                statusMessage?: string;
                                reactElement?: React.ReactElement;
                                isRenderingPending?: boolean;
                                displayHeight?: number;
                            };
                        }) => import("react/jsx-runtime").JSX.Element;
                        renderProps: any;
                        renderArgs: Record<string, unknown> | undefined;
                        isRenderingPending: boolean;
                        cachedDisplay: import("@jbrowse/core/util").AbstractDisplayModel | undefined;
                    } & {
                        doReload(): void;
                        setStatusMessage(message: string): void;
                        setLoading(newStopToken: import("@jbrowse/core/util").StopToken): void;
                        setMessage(messageText: string): void;
                        setRendered(props: import("./BaseLinearDisplay/models/serverSideRenderedBlock.ts").RenderedProps | undefined): void;
                        setError(error: unknown): void;
                        reload(): void;
                        setCachedDisplay(display: import("@jbrowse/core/util").AbstractDisplayModel): void;
                        beforeDestroy(): void;
                    } & {
                        readonly statusMessage: any;
                        readonly displayHeight: number | undefined;
                    } & {
                        afterAttach(): void;
                    }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
                        maxFeatureScreenDensity: {
                            type: string;
                            description: string;
                            defaultValue: number;
                        };
                        fetchSizeLimit: {
                            type: string;
                            defaultValue: number;
                            description: string;
                        };
                        height: {
                            type: string;
                            defaultValue: number;
                            description: string;
                        };
                        mouseover: {
                            type: string;
                            description: string;
                            defaultValue: string;
                            contextVariable: string[];
                        };
                        jexlFilters: {
                            type: string;
                            description: string;
                            defaultValue: never[];
                        };
                    }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
                    showLegend: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
                    showTooltips: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
                }, {
                    rendererTypeName: string;
                    error: unknown;
                    statusMessage: string | undefined;
                } & {
                    readonly RenderingComponent: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                        onHorizontalScroll?: () => void;
                        blockState?: Record<string, any>;
                    }>;
                    readonly DisplayBlurb: React.FC<{
                        model: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    }> | null;
                    readonly adapterConfig: any;
                    readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                    readonly isMinimized: boolean;
                    readonly parentDisplay: any;
                    readonly effectiveRpcDriverName: any;
                } & {
                    renderProps(): any;
                    renderingProps(): {
                        displayModel: {
                            id: string;
                            type: string;
                            rpcDriverName: string | undefined;
                        } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & {
                            readonly RenderingComponent: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                                onHorizontalScroll?: () => void;
                                blockState?: Record<string, any>;
                            }>;
                            readonly DisplayBlurb: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                            }> | null;
                            readonly adapterConfig: any;
                            readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                            readonly isMinimized: boolean;
                            readonly parentDisplay: any;
                            readonly effectiveRpcDriverName: any;
                        } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                        }, {
                            rendererTypeName: string;
                            error: unknown;
                            statusMessage: string | undefined;
                        } & {
                            readonly RenderingComponent: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                                onHorizontalScroll?: () => void;
                                blockState?: Record<string, any>;
                            }>;
                            readonly DisplayBlurb: React.FC<{
                                model: {
                                    id: string;
                                    type: string;
                                    rpcDriverName: string | undefined;
                                } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
                                    id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
                                    type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                                    rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
                                }, {
                                    rendererTypeName: string;
                                    error: unknown;
                                    statusMessage: string | undefined;
                                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                            }> | null;
                            readonly adapterConfig: any;
                            readonly parentTrack: import("@jbrowse/core/util").AbstractTrackModel;
                            readonly isMinimized: boolean;
                            readonly parentDisplay: any;
                            readonly effectiveRpcDriverName: any;
                        }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                    };
                    readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
                    readonly DisplayMessageComponent: undefined | React.FC<any>;
                    trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
                    readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
                    regionCannotBeRendered(): null;
                } & {
                    setStatusMessage(arg?: string): void;
                    setError(error?: unknown): void;
                    setRpcDriverName(rpcDriverName: string): void;
                    reload(): void;
                } & {
                    scrollTop: number;
                } & {
                    readonly height: number;
                } & {
                    setScrollTop(scrollTop: number): void;
                    setHeight(displayHeight: number): number;
                    resizeHeight(distance: number): number;
                } & {
                    featureDensityStatsP: undefined | Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
                    featureDensityStats: undefined | import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats;
                    currStatsBpPerPx: number;
                } & {
                    readonly currentBytesRequested: number;
                    readonly currentFeatureScreenDensity: number;
                    readonly maxFeatureScreenDensity: any;
                    readonly featureDensityStatsReady: boolean;
                    readonly maxAllowableBytes: number;
                } & {
                    afterAttach(): void;
                } & {
                    setCurrStatsBpPerPx(n: number): void;
                    setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
                    getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
                    setFeatureDensityStatsP(arg: any): void;
                    setFeatureDensityStats(featureDensityStats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats): void;
                    clearFeatureDensityStats(): void;
                } & {
                    readonly regionTooLarge: boolean;
                    readonly regionTooLargeReason: string;
                } & {
                    readonly featureDensityStatsReadyAndRegionNotTooLarge: boolean;
                    regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
                    regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react/jsx-runtime").JSX.Element | null;
                } & {
                    mouseoverExtraInformation: string | undefined;
                    featureIdUnderMouse: undefined | string;
                    subfeatureIdUnderMouse: undefined | string;
                    contextMenuFeature: undefined | import("@jbrowse/core/util").Feature;
                } & {
                    readonly DisplayMessageComponent: undefined | React.FC<any>;
                    readonly blockType: "staticBlocks" | "dynamicBlocks";
                    readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
                } & {
                    readonly renderDelay: number;
                    readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
                    legendItems(_theme?: import("@mui/material").Theme): import("./index.ts").LegendItem[];
                    svgLegendWidth(theme?: import("@mui/material").Theme): number;
                    readonly selectedFeatureId: string | undefined;
                    readonly featureWidgetType: {
                        type: string;
                        id: string;
                    };
                } & {
                    readonly showTooltipsEnabled: boolean;
                    readonly features: import("@jbrowse/core/util/compositeMap").default<string, import("@jbrowse/core/util").Feature>;
                    readonly featureUnderMouse: import("@jbrowse/core/util").Feature | undefined;
                    getFeatureById(featureId: string, parentFeatureId?: string): import("@jbrowse/core/util").Feature | undefined;
                    readonly layoutFeatures: import("@jbrowse/core/util/compositeMap").default<string, import("./BaseLinearDisplay/types.ts").LayoutRecord>;
                    getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
                    getFeatureByID(blockKey: string, id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
                    searchFeatureByID(id: string): import("./BaseLinearDisplay/types.ts").LayoutRecord | undefined;
                    readonly floatingLabelData: Map<string, import("./BaseLinearDisplay/components/util.ts").FeatureLabelData>;
                } & {
                    addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
                    deleteBlock(key: string): void;
                    selectFeature(feature: import("@jbrowse/core/util").Feature): void;
                    navToFeature(feature: import("@jbrowse/core/util").Feature): void;
                    clearFeatureSelection(): void;
                    setFeatureIdUnderMouse(feature?: string): void;
                    setSubfeatureIdUnderMouse(subfeatureId?: string): void;
                    setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature): void;
                    setMouseoverExtraInformation(extra?: string): void;
                    setShowLegend(s: boolean): void;
                    setShowTooltips(arg: boolean): void;
                } & {
                    reload(): Promise<void>;
                } & {
                    selectFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
                    setContextMenuFeatureById: (featureId: string, parentFeatureId?: string | undefined, topLevelFeatureId?: string | undefined) => Promise<void>;
                }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
                onMouseMove(_: unknown, featureId?: string): void;
                onMouseLeave(_: unknown): void;
                onContextMenu(_: unknown): void;
                onFeatureClick(_: unknown, featureId?: string): void;
            };
            renderProps(): any;
        } & {
            renderSvg(opts: import("./index.ts").ExportSvgDisplayOptions): Promise<import("react/jsx-runtime").JSX.Element>;
            afterAttach(): void;
        }, import("@jbrowse/mobx-state-tree").ModelCreationType<import("@jbrowse/mobx-state-tree/dist/internal").ExtractCFromProps<{
            id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
            type: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
            rpcDriverName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
        } & {
            heightPreConfig: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
        } & {
            userBpPerPxLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
            userByteSizeLimit: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
        } & {
            blockState: import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").IModelType<{
                key: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
                region: import("@jbrowse/mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
                reloadFlag: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
                isLeftEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
                isRightEndOfDisplayedRegion: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
            }, {
                stopToken: import("@jbrowse/core/util").StopToken | undefined;
                filled: boolean;
                reactElement: React.ReactElement | undefined;
                features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
                layout: any;
                blockStatusMessage: string;
                error: unknown;
                message: string | undefined;
                maxHeightReached: boolean;
                ReactComponent: ({ model, }: {
                    model: {
                        error?: unknown;
                        reload: () => void;
                        message?: React.ReactNode;
                        statusMessage?: string;
                        reactElement?: React.ReactElement;
                        isRenderingPending?: boolean;
                        displayHeight?: number;
                    };
                }) => import("react/jsx-runtime").JSX.Element;
                renderProps: any;
                renderArgs: Record<string, unknown> | undefined;
                isRenderingPending: boolean;
                cachedDisplay: import("@jbrowse/core/util").AbstractDisplayModel | undefined;
            } & {
                doReload(): void;
                setStatusMessage(message: string): void;
                setLoading(newStopToken: import("@jbrowse/core/util").StopToken): void;
                setMessage(messageText: string): void;
                setRendered(props: import("./BaseLinearDisplay/models/serverSideRenderedBlock.ts").RenderedProps | undefined): void;
                setError(error: unknown): void;
                reload(): void;
                setCachedDisplay(display: import("@jbrowse/core/util").AbstractDisplayModel): void;
                beforeDestroy(): void;
            } & {
                readonly statusMessage: any;
                readonly displayHeight: number | undefined;
            } & {
                afterAttach(): void;
            }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
            configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
                maxFeatureScreenDensity: {
                    type: string;
                    description: string;
                    defaultValue: number;
                };
                fetchSizeLimit: {
                    type: string;
                    defaultValue: number;
                    description: string;
                };
                height: {
                    type: string;
                    defaultValue: number;
                    description: string;
                };
                mouseover: {
                    type: string;
                    description: string;
                    defaultValue: string;
                    contextVariable: string[];
                };
                jexlFilters: {
                    type: string;
                    description: string;
                    defaultValue: never[];
                };
            }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
            showLegend: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
            showTooltips: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>;
        }>>, {
            type: string;
            id: string;
            configuration: import("@jbrowse/mobx-state-tree").ModelSnapshotType<Record<string, any>>;
            rpcDriverName: string | undefined;
            heightPreConfig: number | undefined;
            userBpPerPxLimit: number | undefined;
            userByteSizeLimit: number | undefined;
            showLegend: boolean | undefined;
            showTooltips: boolean | undefined;
        }>;
        baseLinearDisplayConfigSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
            maxFeatureScreenDensity: {
                type: string;
                description: string;
                defaultValue: number;
            };
            fetchSizeLimit: {
                type: string;
                defaultValue: number;
                description: string;
            };
            height: {
                type: string;
                defaultValue: number;
                description: string;
            };
            mouseover: {
                type: string;
                description: string;
                defaultValue: string;
                contextVariable: string[];
            };
            jexlFilters: {
                type: string;
                description: string;
                defaultValue: never[];
            };
        }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
        SearchBox: ({ model, showHelp, }: {
            showHelp?: boolean;
            model: import("./index.ts").LinearGenomeViewModel;
        }) => import("react/jsx-runtime").JSX.Element;
        ZoomControls: ({ model, }: {
            model: import("./index.ts").LinearGenomeViewModel;
        }) => import("react/jsx-runtime").JSX.Element;
        LinearGenomeView: ({ model, }: {
            model: import("./index.ts").LinearGenomeViewModel;
        }) => import("react/jsx-runtime").JSX.Element;
    };
    configurationSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
        trackLabels: {
            type: string;
            defaultValue: string;
            model: import("@jbrowse/mobx-state-tree").ISimpleType<"offset" | "hidden" | "overlapping">;
        };
    }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
    install(pluginManager: PluginManager): void;
    configure(pluginManager: PluginManager): void;
}
export type { BaseLinearDisplayModel, BlockModel, ExportSvgDisplayOptions, FloatingLabelData, LayoutFeatureMetadata, LegendItem, } from './BaseLinearDisplay/index.ts';
export { configSchemaFactory as linearBareDisplayConfigSchemaFactory, stateModelFactory as linearBareDisplayStateModelFactory, } from './LinearBareDisplay/index.ts';
export { BaseLinearDisplay, BaseLinearDisplayComponent, BlockMsg, FeatureDensityMixin, FloatingLegend, NonBlockCanvasDisplayComponent, NonBlockCanvasDisplayMixin, SVGLegend, TooLargeMessage, TrackHeightMixin, baseLinearDisplayConfigSchema, calculateSvgLegendWidth, createSubfeatureLabelMetadata, drawCanvasImageData, } from './BaseLinearDisplay/index.ts';
export type { NonBlockCanvasDisplayMixinType, NonBlockCanvasDisplayModel, } from './BaseLinearDisplay/index.ts';
export { HighlightBand, type LinearGenomeViewModel, type LinearGenomeViewStateModel, RefNameAutocomplete, SearchBox, } from './LinearGenomeView/index.ts';
export { fetchResults } from './searchUtils.ts';
export type { BpOffset, ExportSvgOptions, HighlightType, InitState, NavLocation, VolatileGuide, } from './LinearGenomeView/types.ts';
export { SVGGridlines, SVGRuler, SVGTracks, renderToSvg, } from './LinearGenomeView/svgcomponents/SVGLinearGenomeView.tsx';
export { totalHeight } from './LinearGenomeView/svgcomponents/util.ts';
export { configSchema as linearBasicDisplayConfigSchemaFactory, modelFactory as linearBasicDisplayModelFactory, } from './LinearBasicDisplay/index.ts';
export { configSchema as linearFeatureDisplayConfigSchemaFactory, modelFactory as linearFeatureDisplayModelFactory, } from './LinearFeatureDisplay/index.ts';
export type { LinearFeatureDisplayModel, LinearFeatureDisplayStateModel, } from './LinearFeatureDisplay/index.ts';
export { default as LinearBasicDisplayComponent } from './LinearBasicDisplay/components/LinearBasicDisplayComponent.tsx';
