import { PluginBehavior } from 'molstar/lib/mol-plugin/behavior';
import { BehaviorSubject } from 'rxjs';
import { Image, LoadingStatus, StateGalleryManager } from './manager';
import { StateGalleryControls } from './ui';
/** Name used when registering extension, custom controls, etc. */
export declare const StateGalleryExtensionName = "pdbe-state-gallery";
/** Plugin-bound state for StateGallery extension */
export interface StateGalleryCustomState {
    requestedImage: BehaviorSubject<Image | undefined>;
    manager: BehaviorSubject<StateGalleryManager | undefined>;
    status: BehaviorSubject<LoadingStatus>;
}
export declare const StateGalleryCustomState: (plugin: import("molstar/lib/mol-plugin/context").PluginContext) => Partial<StateGalleryCustomState>;
/** Parameters for StateGallery extension */
export interface StateGalleryParams {
    /** Show "3D State Gallery" section in Structure Tools controls */
    showControls: boolean;
    /** Show a box in viewport with state title and arrows to move between states */
    showTitleBox: boolean;
}
/** `StateGallery` extension allows browsing pre-computed 3D states for a PDB entry */
export declare const StateGallery: import("molstar/lib/mol-state").StateTransformer<PluginBehavior.Category, PluginBehavior.Behavior, StateGalleryParams>;
/** Public functions provided by the `StateGallery` extension  */
export declare const StateGalleryExtensionFunctions: {
    StateGalleryManager: typeof StateGalleryManager;
    StateGalleryCustomState: (plugin: import("molstar/lib/mol-plugin/context").PluginContext) => Partial<StateGalleryCustomState>;
    UI: {
        StateGalleryControls: typeof StateGalleryControls;
    };
};
