import Plugin from '@swup/plugin'; import type { Options as MorphlexOptions } from 'morphlex'; import { type Handler } from 'swup'; import { type UpdateCallback } from './morph.js'; type Options = { containers: string[]; updateCallbacks: UpdateCallback[]; morphlexOptions: MorphlexOptions; }; export default class SwupMorphPlugin extends Plugin { name: string; requires: { swup: string; }; defaults: Options; options: Options; constructor(options?: Partial); mount(): void; protected validateContainers: Handler<'content:replace'>; protected morphContainers: Handler<'content:replace'>; protected getContainers(oldDoc: Document, newDoc: Document): { selector: string; outgoing: Element | null; incoming: Element | null; }[]; protected getContainerSelectors(): string[]; protected uniq(array: T[]): T[]; } export {};