import { PptxElement } from 'pptx-viewer-core'; export declare class EditorSelection { #private; /** All selected ids in selection order (primary last). */ get ids(): readonly string[]; /** The primary selected id (last selected), or null when empty. */ get primary(): string | null; /** Number of selected elements. */ get size(): number; /** True when `id` is part of the selection. */ has(id: string): boolean; /** Replace the selection with a single id (or clear it with `null`). */ set(id: string | null): void; /** Replace the selection with an explicit id list (primary = last). */ setAll(ids: readonly string[]): void; /** Additive (shift/ctrl-click) toggle: add `id`, or remove it when present. */ toggle(id: string): void; /** Clear the selection. */ clear(): void; /** Drop ids that no longer resolve to an element (after remote/undo edits). */ prune(exists: (id: string) => boolean): void; } /** * Resolve selected ids to their elements, preserving selection order. * * The one- and zero-selection fast paths matter: this runs on every render of * the inspector and the selection overlay, and building a lookup map for the * overwhelmingly common single selection would allocate a `Map` over every * element on the slide for one hit. */ export declare function resolveSelectedElements(ids: readonly string[], elements: readonly PptxElement[]): PptxElement[]; //# sourceMappingURL=editor-selection.svelte.d.ts.map