import { type IAttachable } from '../../../Behaviors/Attachable'; import { type IVariantableProps } from '../../../Behaviors/Variantable'; import { CustomElement } from '../../Abstracts/CustomElement'; import type { IConnectedCallback } from '../../Abstracts/Interfaces/IConnectedCallback'; /** * Represents the `IFocusRingElementProps` interface. * * @public */ export interface IFocusRingElementProps extends IVariantableProps { visible: boolean; inward: boolean; controlled: 'manual' | 'auto'; } declare const FocusRingElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => IAttachable) & (abstract new (...args: Array) => IVariantableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * Focus Ring - A visible indicator that highlights the currently focused element, aiding accessibility. * * @description * The Focus Ring element is a visible indicator that highlights the currently focused element, aiding accessibility. * It provides visual feedback to users navigating with keyboard or other assistive technologies, helping them understand * which element currently has focus. * * @name Focus Ring * @element mosaik-focus-ring * @category Primitives * * @cssprop {String} --focus-ring-inward-offset - The inward offset. * @cssprop {String} --focus-ring-outward-offset - The outward offset. * @cssprop {String} --focus-ring-width - The width. * @cssprop {String} --focus-ring-active-width - The active width. * @cssprop {String} --focus-ring-shape - The shape. * @cssprop {String} --focus-ring-x - The x position. * @cssprop {String} --focus-ring-y - The y position. * @cssprop {String} --focus-ring-blur - The blur amount. * @cssprop {Color} --focus-ring-color - The color. * @cssprop {Color} --focus-ring-border-color - The border color. * @cssprop {String} --focus-ring-border-width - The border width. * @cssprop {String} --focus-ring-border-style - The border style. * @cssprop {String} --focus-ring-border-radius - The border radius. * @cssprop {String} --focus-ring-shadow - The shadow. * @cssprop {String} --focus-ring-transition-duration - The transition duration. * @cssprop {String} --focus-ring-transition-mode - The transition mode. * @cssprop {String} --focus-ring-transition-property - The transition property. * * @example * ```html * * ``` * * @public */ export declare class FocusRingElement extends FocusRingElement_base implements IConnectedCallback, IFocusRingElementProps, IAttachable { private _focusInSubscription; private _focusOutSubscription; private _pointerDownSubscription; private _visible; private _inward; private _controlled; /** * @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 `visible` property. * * @public * @attr */ get visible(): boolean; set visible(value: boolean); /** * Gets or sets the `inward` property. * * @public * @attr */ get inward(): boolean; set inward(value: boolean); /** * Gets or sets the `controlled` property. * * @public * @attr */ get controlled(): 'manual' | 'auto'; set controlled(value: 'manual' | 'auto'); /** * @public * @overload */ connectedCallback(): void; /** * @protected */ protected onForPropertyChanged(prev: HTMLElement | null, next: HTMLElement | null): void; /** * @private */ private handleEvent; } /** * @public */ export declare namespace FocusRingElement { type Props = IFocusRingElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-focus-ring': FocusRingElement; } } export {}; //# sourceMappingURL=FocusRingElement.d.ts.map