declare const lightingCalculatorModes: readonly ["Distance", "Danae", "DistanceAngle", "DistanceAngleShadow", "DistanceAngleShadowNoTransparency", "GI"];
type LightingCalculatorMode = (typeof lightingCalculatorModes)[number];
type Modes = 'development' | 'production';
type SettingsConstructorProps = {
    /**
     * A folder to load the unpacked DLF, LLF and FTS files of the
     * original game
     *
     * can also be set via `process.env.originalLevelFiles`
     *
     * default value is "../pkware-test-files" relative to the project root
     */
    originalLevelFiles?: string;
    /**
     * can also be set via `process.env.cacheFolder`
     *
     * default value is "./cache" relative to the project root
     */
    cacheFolder?: string;
    /**
     * can also be set via `process.env.outputDir`
     *
     * default value is "./output" relative to the project root
     */
    outputDir?: string;
    /**
     * can also be set via `process.env.levelIdx`
     *
     * default value is 1
     */
    levelIdx?: number;
    /**
     * can also be set via `process.env.assetsDir`
     *
     * default value is "./assets" relative to the project root
     */
    assetsDir?: string;
    /**
     * can also be set via `process.env.calculateLighting`
     *
     * This flag tells whether to run Fredlllll's lighting calculator
     * after building the llf files
     *
     * default value is true
     * if there are no lights, then this gets set to false
     */
    calculateLighting?: boolean;
    /**
     * can also be set via `process.env.lightingCalculatorMode`
     *
     * default value is "DistanceAngleShadowNoTransparency"
     */
    lightingCalculatorMode?: LightingCalculatorMode;
    /**
     * can also be set via `process.env.seed`
     *
     * default value is a string with a random number
     * between 100.000.000 and 999.999.999
     */
    seed?: string;
    /**
     * This field allows branching the code based on what phase the project
     * is in. For example a cutscene in the beginning of a map can be turned
     * off while developing the map in development mode, but re-enabled in
     * production mode
     *
     * can also be set via `process.env.mode`
     *
     * default value is "production"
     */
    mode?: Modes;
    /**
     * When this is set to true FTS files will not get compressed with pkware
     * after compiling. This is an Arx Libertatis 1.3+ feature!
     */
    uncompressedFTS?: boolean;
};
export declare class Settings {
    /**
     * A folder to load the unpacked DLF, LLF and FTS files of the
     * original game
     *
     * can also be set via `process.env.originalLevelFiles`
     *
     * default value is "../pkware-test-files" relative to the project root
     */
    readonly originalLevelFiles: string;
    /**
     * can also be set via `process.env.cacheFolder`
     *
     * default value is "./cache" relative to the project root
     */
    readonly cacheFolder: string;
    /**
     * can also be set via `process.env.outputDir`
     *
     * default value is "./output" relative to the project root
     */
    readonly outputDir: string;
    /**
     * can also be set via `process.env.levelIdx`
     *
     * default value is 1
     */
    readonly levelIdx: number;
    /**
     * can also be set via `process.env.assetsDir`
     *
     * default value is "./assets" relative to the project root
     */
    readonly assetsDir: string;
    /**
     * can also be set via `process.env.calculateLighting`
     *
     * This flag tells whether to run Fredlllll's lighting calculator
     * after building the llf files
     *
     * default value is true
     * if there are no lights, then this gets set to false
     */
    readonly calculateLighting: boolean;
    /**
     * can also be set via `process.env.lightingCalculatorMode`
     *
     * default value is "DistanceAngleShadowNoTransparency"
     */
    readonly lightingCalculatorMode: LightingCalculatorMode;
    /**
     * can also be set via `process.env.seed`
     *
     * default value is a string with a random number
     * between 100.000.000 and 999.999.999
     */
    readonly seed: string;
    /**
     * This field allows branching the code based on what phase the project
     * is in. For example a cutscene in the beginning of a map can be turned
     * off while developing the map in development mode, but re-enabled in
     * production mode
     *
     * can also be set via `process.env.mode`
     *
     * default value is "production"
     */
    readonly mode: Modes;
    /**
     * arx-level-generator comes with its own assets folder
     */
    readonly internalAssetsDir: string;
    /**
     * When this is set to true FTS files will not get compressed with pkware
     * after compiling. This is an Arx Libertatis 1.3+ feature!
     */
    readonly uncompressedFTS: boolean;
    constructor(props?: SettingsConstructorProps);
}
export {};
