import * as d3 from 'd3';
import { MarkModel } from './MarkModel';
export interface BinData {
    index: number;
    bin: d3.Bin<number, number>;
}
export declare class HistModel extends MarkModel {
    defaults(): {
        _model_name: string;
        _view_name: string;
        sample: any[];
        count: any[];
        scales_metadata: {
            sample: {
                orientation: string;
                dimension: string;
            };
            count: {
                orientation: string;
                dimension: string;
            };
        };
        bins: number;
        midpoints: any[];
        colors: string[];
        stroke: any;
        opacities: any[];
        normalized: boolean;
        _model_module: string;
        _view_module: string;
        _model_module_version: string;
        _view_module_version: string;
        scales: {};
        preserve_domain: {};
        display_legend: boolean;
        labels: any[];
        apply_clip: boolean;
        visible: boolean;
        selected_style: {};
        unselected_style: {};
        selected: any;
        enable_hover: boolean;
        tooltip: any;
        tooltip_style: {
            opacity: number;
        };
        interactions: {
            hover: string;
        };
        tooltip_location: string;
    };
    initialize(attributes: any, options: any): void;
    update_data(): void;
    private normalizeData;
    get_data_dict(data: BinData, index: number): any;
    update_domains(): void;
    private get sample();
    get bins(): number;
    static serializers: {
        sample: {
            deserialize: (data: any, manager: any) => any;
            serialize: (data: any, manager: any) => any;
        };
        count: {
            deserialize: (data: any, manager: any) => any;
            serialize: (data: any, manager: any) => any;
        };
        scales: {
            deserialize: typeof import("@jupyter-widgets/base").unpack_models;
        };
        tooltip: {
            deserialize: typeof import("@jupyter-widgets/base").unpack_models;
        };
        selected: {
            deserialize: (data: any, manager: any) => any;
            serialize: (data: any, manager: any) => any;
        };
    };
    xBins: number[];
    xMid: number[];
    count: number[];
    minX: number;
    maxX: number;
    mark_data: BinData[];
}
