import type { Ref } from 'vue'; import type Cwa from '#cwa/cwa'; export type MoveFrom = { componentPosition: string; } | { pageData: string; property: string; }; export interface CloneMove { positionIri: string; fromLayout: boolean; from: MoveFrom; } export interface CloneOrigin { positionIri?: string; excerpt?: string; } export interface CloneSource extends CloneOrigin { iri: string; name?: string; move?: CloneMove; } export interface CloneMode { source: Readonly>; placed: Readonly>; target: Readonly>; setTarget: (elements?: readonly HTMLElement[]) => void; start: (iri: string, name?: string, move?: CloneMove, origin?: CloneOrigin) => void; end: () => void; showPlaced: (positionIri: string) => void; } export declare const PLACED_FLASH_MS = 1500; export declare function excerptOf(elements: readonly Node[]): string | undefined; export declare function useCloneMode($cwa: Cwa): CloneMode;