import { OnInit, OnDestroy, InjectionToken, AfterViewInit } from '@angular/core';
import { PlatformType, AppearanceType } from '../../../services';
import * as i0 from "@angular/core";
/**
 * Root component for the TGUI library
 * Provides theming, platform detection, and portal container functionality
 * Should be used at the root of your application
 */
export declare class RootComponent implements OnInit, OnDestroy, AfterViewInit {
    /** Application platform, determined automatically if nothing passed */
    platform: import("@angular/core").InputSignal<PlatformType | undefined>;
    /** Application appearance, determined automatically if nothing passed */
    appearance: import("@angular/core").InputSignal<AppearanceType | undefined>;
    /** Whether to follow system theme changes when appearance is set manually */
    followSystemTheme: import("@angular/core").InputSignal<boolean>;
    private platformService;
    private portalService;
    private elementRef;
    private themeService;
    private renderer;
    private document;
    private config;
    private portalContainerEl;
    hostClasses: import("@angular/core").Signal<{
        themeLight: boolean;
        themeDark: boolean;
        platformIos: boolean;
        platformBase: boolean;
    }>;
    constructor();
    ngOnInit(): void;
    ngAfterViewInit(): void;
    private setupPortalContainer;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RootComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RootComponent, "tgui-root", never, { "platform": { "alias": "platform"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "followSystemTheme": { "alias": "followSystemTheme"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
}
export declare const TGUI_CONFIG: InjectionToken<{
    platform?: PlatformType;
    appearance?: AppearanceType;
    followSystemTheme?: boolean;
}>;
