/**
 * pacem v0.51.10-faraday (https://js.pacem.it)
 * Copyright 2025 Pacem (https://pacem.it)
 * Licensed under Apache-2.0
 */
declare namespace Pacem.Components.Fx {
    interface PacemFx {
        target: HTMLElement;
    }
    abstract class PacemFxElement extends PacemEventTarget implements PacemFx {
        target: HTMLElement;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxFancyElement extends PacemFxElement {
        private _textNodes;
        private _originalContent;
        private _handle;
        private _handle1;
        private _progress;
        private _started;
        get progress(): number;
        get started(): boolean;
        fancify: boolean;
        delay: number;
        gap: number;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        viewActivatedCallback(): void;
        disconnectedCallback(): void;
        private _reset;
        private _parse;
        start(): void;
        private _startShow;
        private _fancify;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxGradientStopElement extends PacemItemElement {
        offset: number;
        color: string;
        opacity: number;
        findContainer(): any;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
    }
    abstract class PacemFxGradientItemElement extends PacemCrossItemsContainerElement<PacemFxGradientStopElement> {
        validate(item: PacemFxGradientStopElement): boolean;
        register(item: PacemFxGradientStopElement): boolean;
        unregister(item: PacemFxGradientStopElement): boolean;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        private _dispatchGradientChangeHandler;
        private _dispatchGradientChange;
        protected abstract doesPropertyTriggerGradientChange(prop: string): boolean;
        protected buildColor(color: string, opacity?: number): string;
        abstract buildGradient(): string;
    }
    class PacemFxRadialGradientElement extends PacemFxGradientItemElement {
        /** Either 'circle' or 'ellipse' (default). */
        shape: 'circle' | 'ellipse';
        /** Gradient's origin in normalized coordinates. */
        center: Point;
        /** Gradient's diametral size in normalized lengths, or absolute pixels (circular gradients only). */
        size: Size | number;
        protected doesPropertyTriggerGradientChange(prop: string): boolean;
        buildGradient(): string;
    }
    class PacemFxLinearGradientElement extends PacemFxGradientItemElement {
        /** Angle in degrees. */
        angle: number;
        protected doesPropertyTriggerGradientChange(prop: string): boolean;
        buildGradient(): string;
    }
    class PacemFxGradientElement extends PacemItemsContainerElement<PacemFxGradientItemElement> implements PacemFx {
        target: HTMLElement;
        mode: 'fill' | 'text';
        validate(item: PacemFxGradientItemElement): boolean;
        register(item: PacemFxGradientItemElement): boolean;
        unregister(item: PacemFxGradientItemElement): boolean;
        viewActivatedCallback(): void;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        private _gradientChangeHandler;
        private _removeGradient;
        private _buildGradient;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxHeroElement extends PacemFxElement {
        hero: boolean;
        to: Rect | Element;
        from: Rect | Element;
        duration: number;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        viewActivatedCallback(): void;
        disconnectedCallback(): void;
        private _originalState;
        private _targetState;
        private _originalStyle;
        private _computeFromState;
        private _resetTarget;
        reset(): Promise<void>;
        start(): Promise<void>;
        private _animate;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxListElement extends PacemFxElement {
        private _observer;
        viewActivatedCallback(): void;
        disconnectedCallback(): void;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        private _observed;
        private _reset;
        private _setup;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxPulseElement extends PacemFxElement {
        #private;
        constructor();
        private _sheet;
        private _resize;
        private _svg;
        private _rect1;
        private _rect2;
        viewActivatedCallback(): void;
        disconnectedCallback(): void;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        private _resizeHandler;
        private _pulse;
    }
}
declare namespace Pacem.Components.Fx {
    class PacemFxRippleElement extends PacemFxElement {
        private _wave;
        propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
        viewActivatedCallback(): void;
        disconnectedCallback(): void;
        private _lock;
        private _remove;
        private _rippleHandler;
        private _unrippleHandler;
        private _tryRemove;
        private _set;
        private _reset;
    }
}
