import { IMap } from '../extensions';
interface ISettingsFromOptions<T> {
    defaultValue?: T;
    isRequired?: boolean;
    transform?(value: string): T;
}
interface ISettingsFrom {
    env: {
        <T>(key: string): T;
        (key: string): string;
        <T>(key: string, options: ISettingsFromOptions<T>): T;
        mode: 'production' | 'development';
    };
}
export declare const createSettings: <TSettings extends IMap<any>>(delegate: (from: ISettingsFrom) => TSettings) => TSettings;
export {};
