import type { BpOffset } from './Base1DUtils';
import type { Feature } from './simpleFeature';
import type { Region as IRegion } from './types';
import type { Instance } from 'mobx-state-tree';
declare const Base1DView: import("mobx-state-tree").IModelType<{
    id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
    displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<IRegion[], IRegion[], IRegion[]>, [undefined]>;
    bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
    offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
    interRegionPaddingWidth: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
    minimumBlockWidth: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
}, {
    features: undefined | Feature[];
    volatileWidth: number;
} & {
    setDisplayedRegions(regions: IRegion[]): void;
    setBpPerPx(val: number): void;
    setVolatileWidth(width: number): void;
} & {
    readonly width: number;
    readonly assemblyNames: string[];
    readonly displayedRegionsTotalPx: number;
    readonly maxOffset: number;
    readonly minOffset: number;
    readonly totalBp: number;
} & {
    readonly dynamicBlocks: import("./blockTypes").BlockSet;
    readonly staticBlocks: import("./blockTypes").BlockSet;
    readonly currBp: number;
} & {
    pxToBp(px: number): {
        coord: number;
        index: number;
        refName: string;
        oob: boolean;
        assemblyName: string;
        offset: number;
        start: number;
        end: number;
        reversed?: boolean;
    };
    bpToPx({ refName, coord, regionNumber, }: {
        refName: string;
        coord: number;
        regionNumber?: number;
    }): number | undefined;
} & {
    setFeatures(features: Feature[]): void;
    showAllRegions(): void;
    zoomOut(): void;
    zoomIn(): void;
    zoomTo(bpPerPx: number, offset?: number): number;
    scrollTo(offsetPx: number): number;
    centerAt(coord: number, refName: string | undefined, regionNumber: number): void;
    scroll(distance: number): number;
} & {
    moveTo(start?: BpOffset, end?: BpOffset): void;
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
export type Base1DViewStateModel = typeof Base1DView;
export type Base1DViewModel = Instance<Base1DViewStateModel>;
export default Base1DView;
