import { Model } from "../../model"; import type * as p from "../../core/properties"; import type { SelectionMode } from "../../core/enums"; import type { Glyph, GlyphView } from "../glyphs/glyph"; export declare const OpaqueIndices: import("../../core/kinds").Kinds.Arrayable; export type OpaqueIndices = typeof OpaqueIndices["__type__"]; export declare const MultiIndices: import("../../core/kinds").Kinds.Mapping>; export type MultiIndices = typeof MultiIndices["__type__"]; export declare const ImageIndex: import("../../core/kinds").Kinds.Struct<{ index: number; i: number; j: number; flat_index: number; }>; export type ImageIndex = typeof ImageIndex["__type__"]; export declare const ImageIndices: import("../../core/kinds").Kinds.List<{ index: number; i: number; j: number; flat_index: number; }>; export type ImageIndices = typeof ImageIndices["__type__"]; export declare namespace Selection { type Attrs = p.AttrsOf; type Props = Model.Props & { indices: p.Property; line_indices: p.Property; multiline_indices: p.Property; image_indices: p.Property; view: p.Property; selected_glyphs: p.Property; }; } export interface Selection extends Selection.Attrs { } export declare class Selection extends Model { properties: Selection.Props; constructor(attrs?: Partial); get_view(): GlyphView | null; get selected_glyph(): Glyph | null; add_to_selected_glyphs(glyph: Glyph): void; update(selection: Selection, _final?: boolean, mode?: SelectionMode): void; invert(size: number): void; clear(): void; map(mapper: (index: number) => number): Selection; is_empty(): boolean; protected _union_image_indices(...collection: ImageIndices[]): ImageIndices; update_through_replacement(other: Selection): void; update_through_toggle(other: Selection): void; update_through_union(other: Selection): void; update_through_intersection(other: Selection): void; update_through_subtraction(other: Selection): void; update_through_symmetric_difference(other: Selection): void; } //# sourceMappingURL=selection.d.ts.map