import type { LoadingIndicatorProps } from '../LoadingIndicator/LoadingIndicator.types'; export type GlobalLoadingIndicatorProps = LoadingIndicatorProps; export declare class LoadingManager { private static instance; loaderIds: string[]; private constructor(); static getInstance(): LoadingManager; register(id: string): void; unregister(id: string): void; getIsLastIndex(id: string): boolean; } /** * 전역 로딩 인디케이터 컴포넌트입니다. * 화면 중앙에 로딩 스피너를 표시하며, 여러 개의 로딩 인디케이터가 동시에 존재할 경우 * 가장 마지막에 생성된 인디케이터만 표시됩니다. * * @component * @param {GlobalLoadingIndicatorProps} props * @param {('primary'|'white'|'gray')} [props.variant='primary'] - 로딩 인디케이터의 색상 변형 * @param {('sm'|'md'|'lg')} [props.size='md'] - 로딩 인디케이터의 크기 * @param {string} [props.ariaLabel='로딩 중'] - 스크린 리더를 위한 로딩 상태 설명 * @param {string} [props.className] - 추가적인 CSS 클래스명 * @param {boolean} [props.isFixed] - ⚠️ GlobalLoadingIndicator는 항상 fixed position이므로 이 prop은 무시됩니다 * * @example * // 기본 사용법 * * * // 크기 지정 * * * // 색상 변형 * * * // 커스텀 라벨 * * * @accessibility * LoadingIndicator 컴포넌트의 접근성 기능을 상속받습니다: * - role="status": 로딩 상태를 나타내는 상태 영역 * - aria-live="polite": 로딩 상태 변경을 스크린 리더에 알림 * - aria-label: 스크린 리더 사용자에게 로딩 상태 설명 * - aria-busy="true": 콘텐츠가 로딩 중임을 명시 * - SVG는 aria-hidden으로 장식용 요소로 표시 */ declare const GlobalLoadingIndicator: (props: GlobalLoadingIndicatorProps) => import("react/jsx-runtime").JSX.Element | null; export { GlobalLoadingIndicator };