import { Router } from '@iyulab/router'; import { Theme } from '@iyulab/components/dist/utilities/Theme.js'; import { ScreenSize } from './internals/ScreenObserver'; import { AppConfig } from './types/AppConfigs'; import { NotificationOptions } from './types/AppOptions'; /** * 애플리케이션 전역 상태 및 설정 관리 클래스 */ declare class App { private static _instance; private _config?; private _layout?; private _router?; private _screen?; private constructor(); /** 싱글톤 인스턴스 반환 */ static get instance(): App; /** 현재 앱 설정 반환 */ get config(): AppConfig | undefined; /** 라우터 인스턴스 반환 */ get router(): Router | undefined; /** 화면 크기 반환 */ get screen(): ScreenSize | undefined; /** 스타일 테마 관리 유틸리티 객체 반환 */ get theme(): typeof Theme; /** 다국어 로컬라이저(i18next) 반환 */ get i18n(): import('i18next').i18n; /** 앱 로드 및 초기화 */ load(config: AppConfig): Promise; /** 앱 언로드 */ unload(): void; /** 페이지 이동 */ navigate(path: string): void; /** 공지 메시지 */ notice(message: string, options?: NotificationOptions): Promise; /** 정보 메시지 */ info(message: string, options?: NotificationOptions): Promise; /** 경고 메시지 */ warning(message: string, options?: NotificationOptions): Promise; /** 성공 메시지 */ success(message: string, options?: NotificationOptions): Promise; /** 에러 메시지 */ error(message: string, options?: NotificationOptions): Promise; /** 레이아웃 생성 */ private createLayout; } /** * 전역 어플리케이션 설정 및 관리 인스턴스 */ export declare const app: App; export {};