import { GdsElement } from '../../gds-element';
declare const GdsSpinner_base: (new (...args: any[]) => import("../../utils/mixins/declarative-layout-mixins").MarginProps) & (new (...args: any[]) => import("../../utils/mixins/declarative-layout-mixins").PositioningProps) & (new (...args: any[]) => import("../../utils/mixins/declarative-layout-mixins").LayoutChildProps) & typeof GdsElement;
/**
 * @element gds-spinner
 * @status beta
 *
 * GDS Spinner Component
 *
 * A loading indicator with accessibility support and various display modes.
 *
 * @event gds-spinner-connected - When the spinner is connected and visible
 */
export declare class GdsSpinner extends GdsSpinner_base {
    #private;
    /** All styles are defined in the external styles file */
    static styles: (import("lit").CSSResult | import("lit").CSSResult[])[];
    /**
     * The text to display as a label for the spinner
     */
    label: string;
    labelPosition: 'top' | 'bottom' | 'left' | 'right';
    /**
     * Whether to display the label text visually
     * If false, the label is still available for screen readers
     */
    showLabel: boolean;
    /**
     * When true, covers the parent container with a semi-transparent backdrop
     * Parent must have position: relative
     */
    cover: boolean;
    /**
     * When true, covers the entire viewport with a fixed position backdrop
     */
    fullscreen: boolean;
    /**
     * Size variant of the spinner
     */
    size: 'sm' | 'md' | 'lg';
    /**
     * Whether the spinner is currently animating
     */
    private _isAnimating;
    /**
     * Sets up accessibility attributes and initializes the spinner
     */
    connectedCallback(): void;
    /**
     * Cleans up document styles if fullscreen mode was used
     */
    disconnectedCallback(): void;
    /**
     * Updates the aria-label attribute based on the label property
     */
    private _updateAriaLabel;
    /**
     * Renders the spinner component
     */
    protected render(): any;
    /**
     * Toggles document root styles when in fullscreen mode
     * Prevents scrolling of the document when fullscreen overlay is active
     */
    private _toggleRootStyles;
}
declare global {
    interface HTMLElementTagNameMap {
        'gds-spinner': GdsSpinner;
    }
}
export {};
