import { MountedPiece } from "./MountedPiece.js"; import type { AcceptableTarget, CorePiece, MountPiece } from "./types.js"; /** * Constructor type for MountedPiece classes. * * This exists merely to allow unit testing. */ export interface MountedPieceConstructor { new (piece: CorePiece, mountPiece: MountPiece, parent?: MountedPiece): MountedPiece; } export declare function mountPieceCore = Record, TMeta extends Record = {}>(this: MountedPiece | undefined, piece: CorePiece | Promise>, target: AcceptableTarget, props?: TProps, MountedPieceClass?: MountedPieceConstructor): Promise>; /** * Mounts the CollageJS piece as a child of the target element. * @param piece The CollageJS piece to mount. * @param target The target HTML element or shadow root where to mount the piece. * @param props The properties to pass to the piece. */ export declare function mountPiece = Record, TMeta extends Record = {}>(piece: CorePiece | Promise>, target: AcceptableTarget, props?: TProps): Promise>;