import { Annotation, AnnotationView } from "./annotation"; import { LegendItem } from "./legend_item"; import type { GlyphRenderer } from "../renderers/glyph_renderer"; import { AlternationPolicy, Orientation, LegendLocation, LegendClickPolicy, Location } from "../../core/enums"; import type { VAlign, HAlign } from "../../core/enums"; import type * as visuals from "../../core/visuals"; import * as mixins from "../../core/property_mixins"; import type * as p from "../../core/properties"; import type { Size } from "../../core/layout"; import { BBox } from "../../core/util/bbox"; import type { Context2d, CanvasLayer } from "../../core/util/canvas"; import type { StyleSheetLike } from "../../core/dom"; import { Padding, BorderRadius } from "../common/kinds"; import type { XY, LRTB, Corners } from "../../core/util/bbox"; type Entry = { el: HTMLElement; glyph: CanvasLayer; label_el: HTMLElement; item: LegendItem; label: string; i: number; row: number; col: number; }; export declare class LegendView extends AnnotationView { model: Legend; visuals: Legend.Visuals; get is_dual_renderer(): boolean; protected _get_size(): Size; update_layout(): void; protected _resize_observer: ResizeObserver; initialize(): void; remove(): void; connect_signals(): void; protected _bbox: BBox; get bbox(): BBox; protected readonly grid_el: HTMLElement; protected title_el: HTMLElement; protected entries: Entry[]; get padding(): LRTB; get border_radius(): Corners; stylesheets(): StyleSheetLike[]; protected _paint_glyphs(): void; get labels(): { item: LegendItem; label: string; }[]; protected get _should_rerender_items(): boolean; protected _toggle_inactive({ el, item }: Entry): void; protected _render_items(): void; render(): void; after_render(): void; get location(): { x: HAlign | number; y: VAlign | number; }; get anchor(): XY; get css_position(): XY; get is_visible(): boolean; update_position(): void; get is_interactive(): boolean; get click_policy(): (r: GlyphRenderer) => void; get is_active(): (item: LegendItem) => boolean; has_item_background(_i: number, row: number, col: number): boolean; protected _paint(ctx: Context2d): void; protected _draw_legend_box(ctx: Context2d, canvas_bbox: BBox): void; protected _draw_title(ctx: Context2d, canvas_bbox: BBox): void; protected _draw_legend_items(ctx: Context2d, canvas_bbox: BBox): void; } export declare namespace Legend { type Attrs = p.AttrsOf; type Props = Annotation.Props & { orientation: p.Property; ncols: p.Property; nrows: p.Property; location: p.Property; title: p.Property; title_location: p.Property; title_standoff: p.Property; label_standoff: p.Property; glyph_width: p.Property; glyph_height: p.Property; label_width: p.Property; label_height: p.Property; margin: p.Property; padding: p.Property; border_radius: p.Property; spacing: p.Property; items: p.Property; click_policy: p.Property; item_background_policy: p.Property; } & Mixins; type Mixins = mixins.LabelText & mixins.TitleText & mixins.InactiveFill & mixins.InactiveHatch & mixins.BorderLine & mixins.BackgroundFill & mixins.BackgroundHatch & mixins.ItemBackgroundFill & mixins.ItemBackgroundHatch; type Visuals = Annotation.Visuals & { label_text: visuals.Text; title_text: visuals.Text; inactive_fill: visuals.Fill; inactive_hatch: visuals.Hatch; border_line: visuals.Line; background_fill: visuals.Fill; background_hatch: visuals.Hatch; item_background_fill: visuals.Fill; item_background_hatch: visuals.Hatch; }; } export interface Legend extends Legend.Attrs { } export declare class Legend extends Annotation { properties: Legend.Props; __view_type__: LegendView; constructor(attrs?: Partial); } export {}; //# sourceMappingURL=legend.d.ts.map