import { ConfigService } from '../config/config.service.js';
import { AuthDto } from './auth.dto.js';
import { AuthService } from './auth.service.js';
export declare class AuthController {
    private readonly authService;
    private readonly configService;
    constructor(authService: AuthService, configService: ConfigService);
    signIn(body: AuthDto): Promise<any>;
    getSettings(req: any): {
        env: {
            canShutdownRestartHost: boolean;
            customWallpaperHash: string;
            dockerOfflineUpdate: boolean;
            featureFlags: Record<string, boolean>;
            homebridgeVersion: string;
            homebridgeInstanceName: string;
            instanceId: string;
            lang: string;
            packageName: any;
            packageVersion: any;
            platform: NodeJS.Platform;
            port: number;
            setupWizardComplete: boolean;
            scheduledBackupDisable: boolean;
            scheduledBackupPath: string;
        };
        formAuth: boolean;
        sessionTimeout: number;
        sessionTimeoutInactivityBased: boolean;
        lightingMode: "auto" | "light" | "dark";
        serverTimestamp: string;
        theme: string;
        menuMode: "default" | "freeze";
    } | {
        env: {
            enableAccessories: boolean;
            enableTerminalAccess: boolean;
            enableMdnsAdvertise: boolean;
            nodeVersion: string;
            recommendChildBridges: boolean;
            runningInDocker: boolean;
            runningInSynologyPackage: boolean;
            runningInPackageMode: boolean;
            runningInLinux: boolean;
            runningInFreeBSD: boolean;
            runningOnRaspberryPi: boolean;
            runningOnRaspbianImage: boolean;
            temperatureUnits: string;
            temp: string;
            log: {
                maxSize: number;
                truncateSize: number;
            };
            ssl: {
                key: string;
                cert: string;
                pfx: string;
                passphrase: string;
                selfSigned: boolean;
                selfSignedHostnames: string[];
            };
            accessoryControl: {
                debug: boolean;
                instanceBlacklist: string[];
            };
            plugins: {
                hideUpdatesFor: string[];
                showBetasFor: string[];
            };
            nodeUpdatePolicy: "all" | "none" | "major";
            homebridgeUpdatePolicy: "all" | "none" | "beta" | "major";
            homebridgeUiUpdatePolicy: "all" | "none" | "beta" | "major";
            scheduledRestartCron: string;
            bridges: import("../config/config.interfaces.js").HomebridgeUiBridgeConfig[];
            linux: {
                shutdown: string;
                restart: string;
            };
            terminal: {
                persistence: boolean;
                hideWarning: boolean;
                bufferSize: any;
                fontSize: string | number;
                fontWeight: string | number;
                lightingMode: "light" | "dark";
            };
            canShutdownRestartHost: boolean;
            customWallpaperHash: string;
            dockerOfflineUpdate: boolean;
            featureFlags: Record<string, boolean>;
            homebridgeVersion: string;
            homebridgeInstanceName: string;
            instanceId: string;
            lang: string;
            packageName: any;
            packageVersion: any;
            platform: NodeJS.Platform;
            port: number;
            setupWizardComplete: boolean;
            scheduledBackupDisable: boolean;
            scheduledBackupPath: string;
        };
        menuMode: "default" | "freeze";
        wallpaper: string;
        host: string;
        proxyHost: string;
        homebridgePackagePath: string;
        disableServerMetricsMonitoring: boolean;
        keepOrphans: any;
        formAuth: boolean;
        sessionTimeout: number;
        sessionTimeoutInactivityBased: boolean;
        lightingMode: "auto" | "light" | "dark";
        serverTimestamp: string;
        theme: string;
    };
    getCustomWallpaper(): import("node:fs").ReadStream;
    getToken(): Promise<{
        access_token: string;
        token_type: string;
        expires_in: number;
    }>;
    checkAuth(): {
        status: string;
    };
    refreshToken(req: any): Promise<any>;
}
