import { CssTime } from '@breadstone/mosaik-themes'; import { CustomElement } from '../../Abstracts/CustomElement'; import { IPerspectiveElementProps } from './IPerspectiveElementProps'; declare const PerspectiveElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Disableable").IDisableableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Attachable").IAttachable) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * Perspective - A component that manages the perspective effect for 3D transformations. * * @description * The Perspective component allows you to apply a perspective effect to elements, giving them a 3D appearance by controlling the distance between the user and the object. This is useful for creating depth and enhancing visual presentations in web applications. * * @name Perspective * @element mosaik-perspective * @category Effects * * @example * Perspective effect attached to a card element: * ```html *
3D Content
* * ``` * * @example * Perspective with custom factor and duration: * ```html *
Hero Image
* * ``` * * @public */ export declare class PerspectiveElement extends PerspectiveElement_base implements IPerspectiveElementProps { private _duration; private _mouseMoveSubscription; private _mouseLeaveSubscription; private _factor; /** * @public */ constructor(); /** * Returns the `is` property. * The `is` property represents natural name of this element. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `duration` property. * * @public * @attr */ get duration(): CssTime; set duration(value: CssTime); /** * Gets or sets the `factor` property. * * @public * @attr */ get factor(): number; set factor(value: number); /** * @public * @override */ disconnectedCallback(): void; /** * @public * @override */ protected onApplyTemplate(): void; /** * @private */ protected onMouseMove(event: MouseEvent): void; /** * @private */ protected onMouseLeave(event: MouseEvent): void; /** * Applies the animation as style to the element. * * @private */ private applyAnimation; } /** * @public */ export declare namespace PerspectiveElement { type Props = IPerspectiveElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-perspective': PerspectiveElement; } } export {}; //# sourceMappingURL=PerspectiveElement.d.ts.map