import { PropertyValueMap } from 'lit'; import { DdsElement } from '../../internal/dds-hu-element'; declare const SpinnerBaseWithSized: typeof DdsElement & { new (...args: any[]): import('../../internal/mixin/sizedMixin').SizedElementInterface; prototype: import('../../internal/mixin/sizedMixin').SizedElementInterface; }; export type SpinnerVariant = 'neutral' | 'brand' | 'negative' | 'positive' | 'inverted'; export type SpinnerOrientation = 'vertical' | 'horizontal'; /** * `dap-ds-spinner` * @summary Loading spinner component. * @element dap-ds-spinner * @title - Spinner * * @csspart base - The main spinner container. * @csspart icon - The loading icon element. * @csspart icon-base - The base of the loading icon. * @csspart icon-content - The content of the loading icon. * @csspart text - The loading text element. * * @slot - The loading text content. * @slot icon - The loading icon content. * * @cssprop --dds-spinner-icon-color-neutral - Color for neutral spinner icons (default: var(--dds-icon-neutral-base)) * @cssprop --dds-spinner-icon-color-brand - Color for brand spinner icons (default: var(--dds-icon-brand-subtle)) * @cssprop --dds-spinner-icon-color-negative - Color for negative spinner icons (default: var(--dds-icon-negative-subtle)) * @cssprop --dds-spinner-icon-color-positive - Color for positive spinner icons (default: var(--dds-icon-positive-subtle)) * @cssprop --dds-spinner-icon-color-inverted - Color for inverted spinner icons (default: var(--dds-icon-neutral-inverted)) * @cssprop --dds-spinner-text-spacing - Spacing between spinner and text (default: var(--dds-spacing-400)) * @cssprop --dds-spinner-animation-duration - Duration of the spinner animation (default: 1s) * * @property { 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' } size - The size of the spinner. Default is `lg`. See SizedMixin. * @property {string} sizeMap - Responsive size map (e.g. "md:lg"); see SizedMixin. */ export default class DapDSSpinner extends SpinnerBaseWithSized { constructor(); /** * The variant of the spinner. * @type {"neutral" | "brand" | "negative" | "positive" | "inverted"} */ variant: SpinnerVariant; /** The size of the spinner in pixels. This overrides the size attribute */ staticSize?: number; /** The loading text. */ text: string; /** Removes the text color */ noColor: boolean; /** * The orientation of the spinner (icon and text layout). * @type {"vertical" | "horizontal"} */ orientation: SpinnerOrientation; /** * The aria-live politeness level for screen readers. * @type {"polite" | "assertive" | "off"} */ ariaLive: 'polite' | 'assertive' | 'off'; /** * Delay in milliseconds before showing the spinner. * Prevents flash for quick operations. */ delay: number; /** @internal */ private _visible; private _delayTimeout?; static readonly styles: import('lit').CSSResult; /** Maps effectiveSize from SizedMixin to spinner visual size (xxs→xs, else effectiveSize). */ private get spinnerSize(); connectedCallback(): void; disconnectedCallback(): void; protected firstUpdated(_changedProperties: PropertyValueMap | Map): void; protected updated(_changedProperties: PropertyValueMap | Map): void; private _setupIconSlot; private _updateSlottedIcons; render(): import('lit-html').TemplateResult<1> | null; } export {};