import { Interaction } from './Interaction';
import { LinearScale } from './LinearScale';
export declare abstract class BaseSelector extends Interaction {
    initialize(parameters: any): void;
    render(): void;
    create_listeners(): void;
    relayout(): void;
    populate_mark_views(): Promise<void>;
    marks_changed(): void;
    handle_custom_messages(msg: any): void;
    abstract reset(): any;
    abstract selected_changed(): any;
    abstract create_scales(): any;
    set_selected(name: any, value: any): void;
    width: number;
    height: number;
    mark_views_promise: Promise<void>;
}
export declare abstract class BaseXSelector extends BaseSelector {
    create_scales(): Promise<import("@jupyter-widgets/base").DOMWidgetView>;
    update_scale_domain(ignore_gui_update?: boolean): void;
    set_range(array: any): void;
    scale: LinearScale;
}
export declare abstract class BaseXYSelector extends BaseSelector {
    create_scales(): Promise<any[]>;
    set_x_range(array: any): void;
    set_y_range(array: any): void;
    update_xscale_domain(): void;
    update_yscale_domain(): void;
    x_scale: LinearScale;
    y_scale: LinearScale;
}
