import { RcsbFvStateInterface, RcsbFvStateType } from "./RcsbFvStateInterface";
import { RcsbFvSelectorManager } from "./RcsbFvSelectorManager";
import { AssemblyModelSate } from "./AssemblyModelSate";
import { Subject, Subscription } from "rxjs";
import { DataContainer } from "../Utils/DataContainer";
import { OperatorInfo } from "../RcsbFvStructure/StructureViewerInterface";
export declare class RcsbFvStateManager implements RcsbFvStateInterface {
    readonly assemblyModelSate: AssemblyModelSate;
    readonly selectionState: RcsbFvSelectorManager;
    readonly pfvContext: DataContainer<{
        entryId: string;
        asymId?: string;
        operator?: OperatorInfo;
    }>;
    readonly subject: Subject<RcsbFvStateType<any, any>>;
    next<T, D>(state: RcsbFvStateType<T, D>): void;
    subscribe<T, D>(o: (state: RcsbFvStateType<T, D>) => void): Subscription;
    unsubscribe(): void;
}
