import { z } from 'zod';
export declare const CONFIG_DIR_ENV = "AMARAN_CLI_CONFIG_DIR";
export declare const APP_NAME = "amaran-cli";
export declare const ConfigSchema: z.ZodEffects<z.ZodObject<{
    wsUrl: z.ZodOptional<z.ZodString>;
    clientId: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodBoolean>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    defaultCurve: z.ZodOptional<z.ZodString>;
    cctMin: z.ZodOptional<z.ZodNumber>;
    cctMax: z.ZodOptional<z.ZodNumber>;
    intensityMin: z.ZodOptional<z.ZodNumber>;
    intensityMax: z.ZodOptional<z.ZodNumber>;
    autoStartApp: z.ZodOptional<z.ZodBoolean>;
    maxLux: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>]>>;
    weather: z.ZodOptional<z.ZodBoolean>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
    wsUrl: z.ZodOptional<z.ZodString>;
    clientId: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodBoolean>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    defaultCurve: z.ZodOptional<z.ZodString>;
    cctMin: z.ZodOptional<z.ZodNumber>;
    cctMax: z.ZodOptional<z.ZodNumber>;
    intensityMin: z.ZodOptional<z.ZodNumber>;
    intensityMax: z.ZodOptional<z.ZodNumber>;
    autoStartApp: z.ZodOptional<z.ZodBoolean>;
    maxLux: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>]>>;
    weather: z.ZodOptional<z.ZodBoolean>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    wsUrl: z.ZodOptional<z.ZodString>;
    clientId: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodBoolean>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    defaultCurve: z.ZodOptional<z.ZodString>;
    cctMin: z.ZodOptional<z.ZodNumber>;
    cctMax: z.ZodOptional<z.ZodNumber>;
    intensityMin: z.ZodOptional<z.ZodNumber>;
    intensityMax: z.ZodOptional<z.ZodNumber>;
    autoStartApp: z.ZodOptional<z.ZodBoolean>;
    maxLux: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>]>>;
    weather: z.ZodOptional<z.ZodBoolean>;
}, z.ZodTypeAny, "passthrough">>, z.objectOutputType<{
    wsUrl: z.ZodOptional<z.ZodString>;
    clientId: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodBoolean>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    defaultCurve: z.ZodOptional<z.ZodString>;
    cctMin: z.ZodOptional<z.ZodNumber>;
    cctMax: z.ZodOptional<z.ZodNumber>;
    intensityMin: z.ZodOptional<z.ZodNumber>;
    intensityMax: z.ZodOptional<z.ZodNumber>;
    autoStartApp: z.ZodOptional<z.ZodBoolean>;
    maxLux: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>]>>;
    weather: z.ZodOptional<z.ZodBoolean>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
    wsUrl: z.ZodOptional<z.ZodString>;
    clientId: z.ZodOptional<z.ZodString>;
    debug: z.ZodOptional<z.ZodBoolean>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    defaultCurve: z.ZodOptional<z.ZodString>;
    cctMin: z.ZodOptional<z.ZodNumber>;
    cctMax: z.ZodOptional<z.ZodNumber>;
    intensityMin: z.ZodOptional<z.ZodNumber>;
    intensityMax: z.ZodOptional<z.ZodNumber>;
    autoStartApp: z.ZodOptional<z.ZodBoolean>;
    maxLux: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodNumber>, Record<string, number>, Record<string, number>>]>>;
    weather: z.ZodOptional<z.ZodBoolean>;
}, z.ZodTypeAny, "passthrough">>;
export type Config = z.infer<typeof ConfigSchema>;
export declare function normalizeConfig(config: Config): Config;
export declare function getConfigDir(): string;
export declare function getConfigPath(): string;
export declare function getLegacyConfigPath(): string;
export declare function getConfigReadPath(): string | null;
export declare function loadConfig(): Config | null;
export declare function saveConfig(config: Config): void;
//# sourceMappingURL=config.d.ts.map